ORACLE 11G 手工建庫
原創作品,出自 “深藍的blog” 部落格,歡迎轉載,轉載時請務必註明以下出處,否則追究版權法律責任。
第一步:目錄
--資料庫檔案目錄
$ cd $ORACLE_BASE/oradata
$ ls
--看到已經存在庫的SID
PROD
$ pwd
--檢視一下絕對路徑
/u01/app/oracle/oradata
$ mkdir HYL
$ ls -l
--產看一下目錄及許可權
--規劃資料檔案存放的不同磁碟目錄,這裡的規劃依據實際情況而定
$ cd HYL
$ mkdir dump disk1 disk2 disk3 disk4 disk5
--disk表示不同的磁碟,這是為檔案多元化做準備
$ cd dump
$ mkdir bdump cdump udump
--建立了三個目錄,分別用來不同的dump檔案
第二步:許可權
$ chown -R oracle:oinstall /u01/app/oracle/oradata/HYL
--把上步建立的HYL目錄賦給oracle使用者
--上文中的檔案路徑、dump檔案路徑都應該是在這個目錄下,在許可權正確的情況下才能完成建庫
$ chmod –R 755 HYL
--賦予HYL目錄的訪問許可權,許可權級別755
第三步:初始化引數
--這一步要完成初始化引數檔案的建立
$ cd $ORACLE_HOME/dbs
--在這個目錄下存放資料庫的初始化引數檔案,我們需要在這個目錄下建立一個
$ vi initHYL.ora
--初始化引數名字為init加上SID
memory_target=900M --11G中,記憶體管理將pga和sga用memory_target這一個引數進行表示 --下面是資料名,初期規劃為SID名字 db_name=HYL --下面是控制檔案路徑,建議將不同路徑下的控制檔案以相同名字命名 control_files=’/u01/app/oracle/oradata/HYL/disk1/control01.ctl’, ‘/u01/app/oracle/oradata/HYL/disk2/control01.ctl’, ‘/u01/app/oracle/oradata/HYL/disk3/control01.ctl’ --下面是undo表空間資訊 undo_management=auto undo_tablespace=undotbs --下面是dump檔案 diagnostic_dest=/u01/app/oracle/oradata/PROD/dump --相比較於10G,對於udump、bdump、cdump路徑在11G中統一為了一個
第四步:把庫啟動到nomount狀態
$export ORACLE_SID=HYL
$sqlplus ‘/as sysdba’
SQL> startup nomount;
第五步:藉助官方文件編寫建庫語句
--依據實際修改指令碼,刪除掉一些沒必要的設定
--將日誌組成員進行多元化
--修改路徑資訊
CREATE DATABASE HYL
LOGFILE GROUP 1 ('/u01/app/oracle/oradata/HYL/disk1/redo01a.log',
'/u01/app/oracle/oradata/HYL/disk2/redo01b.log')
SIZE 100M BLOCKSIZE 512,
GROUP 2 ('/u01/app/oracle/oradata/HYL/disk1/redo02a.log',
'/u01/app/oracle/oradata/HYL/disk2/redo02b.log')
SIZE 100M BLOCKSIZE 512,
GROUP 3 ('/u01/app/oracle/oradata/HYL/disk1/redo03a.log',
'/u01/app/oracle/oradata/HYL/disk2/redo03b.log')
SIZE 100M BLOCKSIZE 512
CHARACTER SET zhs16gbk
NATIONAL CHARACTER SET AL16UTF16
EXTENT MANAGEMENT LOCAL
DATAFILE '/u01/app/oracle/oradata/HYL/disk3/system01.dbf' SIZE 325M REUSE
SYSAUX DATAFILE '/u01/app/oracle/oradata/HYL/sysaux01.dbf' SIZE 325M REUSE
DEFAULT TABLESPACE users
DATAFILE '/u01/app/oracle/oradata/HYL/disk3/users01.dbf'
SIZE 500M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED
DEFAULT TEMPORARY TABLESPACE tempts1
TEMPFILE '/u01/app/oracle/oradata/HYL/disk4/temp01.dbf'
SIZE 20M REUSE
UNDO TABLESPACE undotbs
DATAFILE '/u01/app/oracle/oradata/HYL/disk5/undotbs01.dbf'
SIZE 200M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED;
--將以上指令碼放在oracle目錄下,然後執行
$cd /u01/app/oracle/
$vi createDB.sh
SQL> @/u01/app/oracle/createDB.sh
第六步:跑相應指令碼
SQL> @?/rdbms/admin/catalog.sql
--約2分鐘,作用:建立資料字典
SQL> @?/rdbms/admin/catproc.sql
--約5分鐘,跑完這兩個指令碼後庫已經建完了,作用:建立儲存過程和包
SQL> conn system/manager
SQL> @?/sqlplus/admin/pupbld.sql
--約1分鐘,以conn system/manager 執行此指令碼作用:設定sqlplus的一些包,讓其它使用者可以登入sqlplus
SQL> conn /as sysdba
SQL> select instance_name,status from v$instance; --檢查狀態,此時資料庫應該是open狀態
原創作品,出自 “深藍的blog” 部落格,歡迎轉載,轉載時請務必註明以下出處,否則追究版權法律責任。