1. 程式人生 > >linux環境下建立資料庫

linux環境下建立資料庫

前言:

業務系統oralce 資料庫版本為10gR2,同時字符集為ZHS16GBK,而中間庫對應的版本是11gR2 同時字符集為UTF8,由於 資料庫字符集在建立資料庫時指定,在建立後通常不能更改。所以中間庫需要新增定義以字符集為ZHS16GBK的例項。

註釋:新增SID:hsdb1

步驟:

1登入終端,並切換至Oracle 使用者

Connecting to 10.7.101.24:22...

Connection established.

To escape to local shell, press 'Ctrl+Alt+]'.

Last login: Wed May 25 09:20:05 2016 from 172.16.112.92

[
[email protected]
~]# su - oracle

2檢視當前oracle變數和sqlplus執行情況

[[email protected] ~]$ env |grep ORA
ORACLE_SID=dwdb
ORACLE_BASE=/oracle
ORACLE_HOME=/oracle/product/11.2.0/db_1
[[email protected] ~]$

[[email protected] ~]$ sqlplus /nolog

SQL*Plus: Release 11.2.0.4.0 Production on Wed May 25 09:27
:52 2016 Copyright (c) 1982, 2013, Oracle. All rights reserved. SQL> exit [oracle@dwtest ~]$

3設定新的例項

[[email protected] ~]$  export ORACLE_SID=hsdb1

4新例項建立密碼檔案

[[email protected] ~]$ orapwd file=$ORACLE_HOME/dbs/orapwhsdb1  password=oracle entries=10

5建立pfile檔案

[[email protected] ~]$ cd
$ORACLE_HOME/dbs [[email protected] admin]$ vi inithsdb1.ora inithsdb1.ora 中需要新增的內容如下 [[email protected] dbs]$ cat inithsdb1.ora db_name='hsdb1' memory_target=4294967296 processes = 1000 audit_file_dest='/oracle/admin/hsdb1/adump' audit_trail ='db' db_block_size=8192 db_domain='' db_recovery_file_dest='/oracle/hsdb1/flash_recovery_area' db_recovery_file_dest_size=4385144832 diagnostic_dest='/oracle' dispatchers='(PROTOCOL=TCP) (SERVICE=hsdb1XDB)' open_cursors=300 remote_login_passwordfile='EXCLUSIVE' undo_tablespace='UNDOTBS2' # You may want to ensure that control files are created on separate physical # devices control_files=(/oracle/hsdb1/ora_control1,/oracle/hsdb1/ora_control2) compatible ='11.2.0.4.0' undo_management=AUTO

6建立例項相關的目錄

[[email protected] /]$ mkdir -p $ORACLE_BASE/admin/hsdb1/adump
[[email protected] /]$ mkdir -p $ORACLE_BASE/admin/hsdb1/bdump
[[email protected] /]$ mkdir -p $ORACLE_BASE/admin/hsdb1/cdump
[[email protected] /]$ mkdir -p $ORACLE_BASE/admin/hsdb1/udump
[[email protected] /]$ mkdir -p $ORACLE_BASE/admin/hsdb1/pfile 

7建立一個數據庫執行指令碼

[[email protected] /]$ mkdir /oracle/hsdb1
[[email protected] oracle]$ mkdir /oracle/hsdb1/flash_recovery_area

[[email protected] /]$ cd $ORACLE_HOME/dbs
[[email protected] dbs]$ touch hsdb1.sql

hsdb1.sql中需要新增的內容如下

[[email protected] oracle]$ vi spdbface.sql

spool dbcreate.log;
spool dbcreate.log;
create DATABASE "hsdb1"
MAXDATAFILES 500
MAXINSTANCES  8
MAXLOGFILES   32
CHARACTER SET "ZHS16GBK"
NATIONAL CHARACTER SET AL16UTF16
ARCHIVELOG
DATAFILE
'/oracle/hsdb1/system01.dbf' SIZE 300M
SYSAUX DATAFILE
'/oracle/hsdb1/sysaux01.dbf' SIZE 120M
EXTENT MANAGEMENT LOCAL
DEFAULT TEMPORARY TABLESPACE temp TEMPFILE '/oracle/hsdb1/tempts01.dbf' SIZE 100M EXTENT
MANAGEMENT LOCAL
UNDO TABLESPACE "UNDOTBS2"
DATAFILE '/oracle/hsdb1/undotbs01.dbf' SIZE 200M
LOGFILE
GROUP 1(
'/oracle/hsdb1/redo01a.rdo',
'/oracle/hsdb1/redo01b.rdo'
) SIZE 100M,
GROUP 2(
'/oracle/hsdb1/redo02a.rdo',
'/oracle/hsdb1/redo02b.rdo'
)SIZE 100M,
GROUP 3(
'/oracle/hsdb1/redo03a.rdo',
'/oracle/hsdb1/redo03b.rdo'
)SIZE 100M
;
spool off

8建立spfile並將並將資料庫啟動到nomount 狀態

[[email protected] oracle]$  sqlplus /nolog

SQL*Plus: Release 11.2.0.4.0 Production on Wed May 25 10:05:15 2016

Copyright (c) 1982, 2013, Oracle.  All rights reserved.

SQL> connect /as sysdba
Connected to an idle instance.
SQL> create spfile from pfile;

File created.

SQL> startup nomount
ORACLE instance started.

Total System Global Area 4275781632 bytes
Fixed Size            2260088 bytes
Variable Size         2650801032 bytes
Database Buffers     1610612736 bytes
Redo Buffers           12107776 bytes
SQL>

9執行資料庫指令碼

@$ORACLE_HOME/dbs/hsdb1.sql

Clipboard Image.png

10建立表空間

create tablespace hsdb1_db datafile'/oracle/hsdb1/hsdb1_db.dbf' size 500M autoextend on next 1000M maxsize unlimited extent management local segment space management auto;

11建立資料字典

SQL>@?/rdbms/admin/catalog.sql 
SQL>@?/rdbms/admin/catproc.sql
SQL> SELECT dbms_registry_sys.time_stamp('CATPROC') AS timestamp FROM DUAL;

TIMESTAMP
--------------------------------------------------------------------------------
COMP_TIMESTAMP CATPROC    2016-05-25 10:21:09

1 row selected.

SQL>
SQL> SET SERVEROUTPUT OFF

SQL>@?/sqlplus/admin/pupbld.sql

12建立使用者

SQL> create user hs identified by  FoticHs;

User created.

grant create session,create table,create view ,create sequence,unlimited tablespace to hs;

SQL> grant create session,create table,create view ,create sequence,unlimited tablespace to hs;

Grant succeeded.

13建立監聽器

 SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = hsdb1)
      (ORACLE_HOME = /oracle/product/11.2.0/db_1)
      (PROGRAM = extproc)
    )
    (SID_DESC =
      (GLOBAL DBNAME = orcl) 
      (SID_NAME = spdbface)
    )
  )
LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
      (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    )
  )

14啟動監聽器

[[email protected] dbs]$ lsnrctl start

LSNRCTL for Linux: Version 11.2.0.4.0 - Production on 25-MAY-2016 10:30:28

Copyright (c) 1991, 2013, Oracle.  All rights reserved.

TNS-01106: Listener using listener name LISTENER has already been started

15驗證登入PL/sql Developer檢視字符集:

Clipboard Image.png

注:之前修正報錯如下:

Clipboard Image.png

補充:

在 11g 中,引入 Automatic Memory Management(自動記憶體管理,AMM)。通過使用兩個引數,MEMORY_MAX_TARGET 和 ,可以啟用

 PGA 和 SGA 的自動調整。

AMM引數

自動記憶體管理是用兩個初始化引數進行配置的:

MEMORY_TARGET:動態控制SGA和PGA時,Oracle總共可以使用的共享記憶體大小,這個引數是動態的,因此提供給Oracle的記憶體總量是可以動態增大,也可以動態減小的。它不能超過MEMORY_MAX_TARGET引數設定的大小。預設值是0。

MEMORY_MAX_TARGET:這個引數定義了MEMORY_TARGET最大可以達到而不用重啟例項的值,如果沒有設定MEMORY_MAX_TARGET值,預設等於MEMORY_TARGET的值。

使用動態記憶體管理時,SGA_TARGET和PGA_AGGREGATE_TARGET代表它們各自記憶體區域的最小設定,要讓Oracle完全控制記憶體管理,這兩個引數應該設定為0。

Clipboard Image.png

相關推薦

linux環境建立資料庫

前言: 業務系統oralce 資料庫版本為10gR2,同時字符集為ZHS16GBK,而中間庫對應的版本是11gR2 同時字符集為UTF8,由於 資料庫字符集在建立資料庫時指定,在建立後通常不能更改。所以中間庫需要新增定義以字符集為ZHS16GBK的例項。 註釋:新增SID:

個人總結禪道 linux環境安裝資料庫詳細步驟

7.server:127.0.0.1:3306(重新輸入的埠號:  server:127.0.0.1:3308)   username:root   password:123456   最後一個:mysql或者zentao   login登入

Linux環境mysql資料庫定時備份

作為web後端開發,一直都是在windows系統上對mysql進行增刪改查的工作,對於如何備份以及在linux環境下如何定時備份一直都沒有深入的去了解過;這次正好藉著專案需求,研究一下。 1、mysql資料庫的備份命令:/usr/bin/mysqldump -uroot -

Linux環境實現MariaDB資料庫的三種備份和還原

一、tar工具的使用  1、備份 (1)停止服務,3306埠關閉 (2)看下配置檔案有沒有關鍵日誌存放於其它目錄的,檢查/etc/my.cnf,再檢查下/etc/my.cnf.d/下有沒有配置檔案放置其他地方,有的話也需要一起拷貝歸檔 (3)建立備份目錄,歸檔 (4)開啟服

linux centosmysql資料庫的主從複製環境搭建

有兩臺MySQL資料庫伺服器Master和slave,Master為主伺服器,slave為從伺服器,初始狀態時,Master和slave中的資料資訊相同,當Master中的資料發生變化時,slave也跟著發生相應的變化,使得master和slave的資料資訊同步,達到備份的目的。 原理圖如下:

linux環境,連線另一臺伺服器的oracle資料庫,常見問題詳解

一臺伺服器177 一臺伺服器,有oracle的12 177能ping通12 177不能telnet 12 1521埠 通過xShell隧道在windows能連上12的oracle資料庫 12的1521埠是開啟的。 我總結為是 1.防火牆 有沒有設定1521

Linux 環境,Mysql 資料庫密碼重置

1、修改MySQL的登入設定,可以免密碼直接登入。        # vi /etc/my.cnf        在[mysqld]的段中加上一句:skip-grant-tables  [[email protected] etc]# vi /etc/my.cnf

linux環境安裝mysql資料庫

1.檢視linux版本:file /sbin/init 或者 file /bin/ls 2.檢視系統是否已經安裝了mysql的其他版本: ps:yum與rpm等改天系統學一下 [root@leo usr]#rpm -qa|grep mysql mysql-libs-5.1.52-1.

Linux環境在docker中配置Oracle資料庫並實現資料持久化

一  CentOs安裝docker 前置條件: 64-bit 系統 kernel 3.10+ 作者以下操作皆在root使用者下進行 1.檢查核心版本,返回的值大於等於3.10即可。   # uname -r 2.確保yum是最新的   # yum up

Linux環境makefile的建立與編譯--簡單方法

Linux在命令列下敲寫Makefile檔案有時會顯得繁瑣且操作不便,因此我們可以採用在Windows下建立文字檔案(.txt)之後拖進VMware虛擬機器下的Linux系統。此時在命令列執行 make

linux 環境 c語言實現mysql資料庫圖片的儲存以及多資料庫直接的轉存

作為一個程式設計師,CSDN對我的程式設計帶來了很多幫助和提高,在這裡可以讓你找到很多開發過程中遇到的問題的解決辦法,今天也寫點自己積累的東西跟大家分享一下,希望對需要的人有幫助. 資料背景:         之前專案一直使用Oracle資料,最近換工作,公司使用的為

說說在 linux 環境,如何新建 MySQL 資料庫例項

使用 secureCRT,遠端登入 linux 伺服器。 然後使用以下命令,登入 MySQL 伺服器: mysql -u<賬號> -p<密碼> 一般使用有新建資料庫許可權的賬號。 登入成功後,會出現歡迎提示: Welco

Linux環境的,多個數據庫例項的切換,資料庫服務和監聽開啟、關閉

-----簡單記錄Linux環境下的oracle操作------- 1、當一個Linux中安裝了多個數據庫時,檢視當前的資料庫例項 su - oracle echo $ORACLE_SID 2、Linux下,切換到不同的資料庫例項 export ORACLE_SID

00 Linux環境ARM裸機開發工程的建立示例(Cortex-A8)

Linux環境下ARM裸機開發工程的建立示例(Cortex-A8)      本文將介紹如何在Linux環境下建立一個ARM的裸機開發專案工程,其內容將涉及Linux c語言,ARM組合語言,Linux shell命令與及Linux工程管理器make的配置檔案--Mak

linux環境對mysql資料庫的操作

本文記錄的是在linux環境下對mysql資料庫的一些基本操作,如:資料庫連線、 建立資料庫、設定資料庫使用者的許可權、 資料庫的匯入匯出等...... 一、進入資料庫 mysql -h10.0.0.1 -uroot -proot (進入遠端資料庫)或者進入本機資料庫:

linux環境根目錄磁碟空間滿導致資料庫無法啟動的問題的解決

1、登陸資料庫時,把磁碟空間不足,無法登陸 [[email protected]flash_recovery_area]$sqlplus/assysdba SQL*Plus: Release10.2.0.1.0-Productionon 星期五 11月 2817:

deepin(linux)環境安裝mysql資料庫(新手入門)

環境:deepin15.5 1.開啟終端,輸入命令:sudo apt-get update   更新軟體列表 2.輸入命令:sudo apt-get install mysql-server     安裝MySQL資料庫程式 中間會彈出設定root使用者密碼的輸入框,輸

二、高併發神器 非關係型資料庫NoSql之Redis介紹以及Linux環境的安裝

關係型資料庫支援原子性、一致性、隔離性、永續性四大特性,非關係資料庫不支援這四大特性。 非關係資料庫相對於關係型資料庫的優勢: 關係型資料庫為了降低資料冗餘,保證資料約束性,在資料查詢時不得不使用多個數據表之間的連線操作,但是這極大的降低了查詢效率,不能滿足當下網路應用的

Linux環境的 pyenv的安裝

pyenvCentOS上安裝pyenv:在安裝pyenv前,需要先安裝如下的依賴包:在 CentOS/RHEL/Fedora 下:yum install readline readline-devel readline-static yum install openssl openssl-devel open

linux環境部署zabbix3.2、模板、郵件告警詳細過程

-1 ice erer without zlib zip ever native item 服務端部署: 系統環境及軟件版本: Linux:release 6.3 zabbix:zabbix-3.2.5.tar.gz nginx:nginx-1.12.0.tar.gz ph