oracle 手動建庫詳解
本文是在windows 下試驗。 版本為10.2.0.1 linux 大同小異
在Oracle中建庫,通常有兩種方法。一是使用Oracle的建庫工且DBCA,這是一個圖形介面工且,使用起來方便且很容易理解,因為它的介面友好、美觀,而且提示也比較齊全。在indows系統中,這個工具可 以在Oracle程式組中開啟(”開始”—“程式”—“ Oracle - OraDb10g_home1”—“ Configuration and Migration Tools”—“ Database Configuration Assistant”),也可以在命令列(”開始”—“執行”—“cmd”)工具中直接輸入dbca來開啟。另一種方法就是手工建庫,這也就是下面所要講 的內容。
手工建庫比起使用DBCA建庫來說,是比較麻煩的,但是如果我們學好了手工建庫的話,就可以使我們更好地理解Oracle資料庫的體系結構。手工建庫須要經過幾個步驟,每一個步驟都非常關鍵。它包括:
1、 建立必要的相關目錄
2、 建立初始化引數檔案
3、 設定環境變數Oracle_sid
4、 建立例項
5、 建立口令檔案
6、 啟動資料庫到nomount(例項)狀態
7、 執行建庫指令碼
8、 執行catalog腳步本建立資料字典
9、 執行catproc建立package包
10、 執行pupbld
11、 由初始化引數檔案建立spfile檔案
12、 執行scott指令碼建立scott模式
例項名字為 dims
initdims.ora 內容為
sga_target=200M
db_name=dims
background_dump_dest = D:\oracle\product\10.2.0\admin\dims\bdump
core_dump_dest = D:\oracle\product\10.2.0\admin\dims\cdump
user_dump_dest = D:\oracle\product\10.2.0\admin\dims\udump
control_files =D:\oracle\product\10.2.0\oradata\dims\control01.ctl,D:\oracle\product\10.2.0
\oradata\dims\control02.ctl,D:\oracle\product\10.2.0\oradata\dims\control03.ctl
undo_management = auto
undo_tablespace = undotbs
db_block_size = 8192
D:\oracle\product\10.2.0\db_1\cr_dims.sql 指令碼內容
CREATE DATABASE DIMS
datafile 'D:\oracle\product\10.2.0\oradata\dims\disk1\system01.dbf' size 350M
sysaux datafile 'D:\oracle\product\10.2.0\oradata\dims\disk2\sysaux01.dbf' size 50M
undo tablespace undotbs datafile 'D:\oracle\product\10.2.0\oradata\dims\disk3\undotbs01.dbf' size 50M
default temporary tablespace temp tempfile 'D:\oracle\product\10.2.0\oradata\dims\disk3\temp01.dbf' size 50M
logfile
group 1 'D:\oracle\product\10.2.0\oradata\dims\disk1\redo01.log' size 50m,
group 2 'D:\oracle\product\10.2.0\oradata\dims\disk1\redo02.log' size 50m,
group 3 'D:\oracle\product\10.2.0\oradata\dims\disk1\redo03.log' size 50m
character set zhs16gbk;C:\Documents and Settings\Administrator>set oracle_sid=dims
D:\oracle\product\10.2.0\db_1\cr_dict.sql指令碼內容為
@?\rdbms\admin\catalog.sql
@?\rdbms\admin\catproc.sql
connect system/manager
@?\sqlplus\admin\pupbld.sql
C:\Documents and Settings\Administrator>sqlplus "/as sysdba"
SQL*Plus: Release 10.2.0.4.0 - Production on 星期六 6月 29 11:25:20 2013
Copyright (c) 1982, 2007, Oracle. All Rights Reserved.
已連線到空閒例程。
SQL> startup nomount
ORACLE 例程已經啟動。
Total System Global Area 209715200 bytes
Fixed Size 1295848 bytes
Variable Size 67111448 bytes
Database Buffers 134217728 bytes
Redo Buffers 7090176 bytes
SQL> @?
SP2-0310: 無法開啟檔案 "D:\oracle\product\10.2.0\db_1.sql"
SQL> @?\cr_dims.sql
SQL> @?\cr_dims.sql
資料庫已建立。
SQL> @?\cr_dict.sqlSQL>
SQL> -- End of pupbld.sql
SQL>
具體內容為下
1、開啟命令列工具,建立必要有相關目錄
因為在實際環境中可能把資料檔案分放在不同的磁碟上 提高I/O ,控制檔案等多放幾個位置,提高安全,我這裡用disk1 disk2 disk3 disk4 disk5 代替
C:\>mkdir D:\oracle\product\10.1.0\admin\dims
C:\>mkdir D:\oracle\product\10.1.0\admin\dims\adump
C:\>mkdir D:\oracle\product\10.1.0\admin\dims\bdump
C:\>mkdir D:\oracle\product\10.1.0\admin\dims\udump
C:\>mkdir D:\oracle\product\10.1.0\admin\dims\cdump
C:\>mkdir D:\oracle\product\10.1.0\admin\dims\pfile
C:\>mkdir D:\oracle\product\10.1.0\oradata\dims\disk1
C:\>mkdir D:\oracle\product\10.1.0\oradata\dims\disk2
C:\>mkdir D:\oracle\product\10.1.0\oradata\dims\disk3
C:\>mkdir D:\oracle\product\10.1.0\oradata\dims\disk4
C:\>mkdir D:\oracle\product\10.1.0\oradata\dims\disk5
上面建立目錄的過程也可以在Windows的圖形介面中去建立。其中D:\oracle\product\10.1.0\admin\dims目錄下的幾個子目錄主
要用於存放資料庫執行過程中的跟蹤資訊。最重要的兩上子目錄是bdump和udump目錄,bdump目錄存放的是資料庫動行過程中的
各個後臺程式的跟蹤資訊,當中alert檔案是警告檔案,其檔名稱為alert_dims.log,當資料庫出現問題時,首先就可以去查
看此檔案以找出原因,手工建立過程中出現的各種問題往往也可以通過檢視這個檔案找到原因。Udump目錄存放和特定會話相關
的跟蹤資訊。D:\oracle\product\10.1.0\oradata\dims目錄存放各種資料庫檔案,包括控制檔案、資料檔案、重做日誌檔案。
2、建立初始化引數檔案
資料庫系統啟動時須要用初始化引數檔案的設定分配記憶體、啟動必要的後臺程式的。因此,初始化引數檔案建立的是否正確、參
數設定是否正確關係著整個建庫的“命運”。
建立初始化引數檔案可以通過拷貝現在的初始化引數檔案並將其做適當的修改即可,從而不必要用手工去一句一句地寫出來,因
為 初始化引數檔案的結構體系基本上都是一樣的。在我們安裝Oracle的時候,系統已經為我們安裝了一個名為orcl的資料庫,
於是我們可以從它那裡得到一 份初始化引數檔案。開啟D:\oracle\product\10.1.0\admin\orcl\pfile,找到init.ora檔案,把
它拷貝到 D:\oracle\product\10.1.0\bd_1\databse下,並將其改名為initdims.ora。接著用記事本的方式開啟 initdims.ora
,修改以下的內容:
sga_target=200M
db_name=dims
background_dump_dest = D:\oracle\product\10.2.0\admin\dims\bdump
core_dump_dest = D:\oracle\product\10.2.0\admin\dims\cdump
user_dump_dest = D:\oracle\product\10.2.0\admin\dims\udump
control_files =D:\oracle\product\10.2.0\oradata\dims\control01.ctl,D:\oracle\product\10.2.0
\oradata\dims\control02.ctl,D:\oracle\product\10.2.0\oradata\dims\control03.ctl
undo_management = auto
undo_tablespace = undotbs
db_block_size = 8192
3、開啟命令列,設定環境變數oracle_sid
C:\>set oracle_sid=dims
設定環境變數的目地是在預設的情況下,指定命令列中所操作的資料庫例項是dims。
4、建立例項(即後臺控制服務)
C:\>oradim –new –sid dims
orad
im是建立例項的工具程式名稱,-new表明執行新建例項,-delete表明執行刪掉例項,-sid指定害例的名稱。
5、建立口令檔案
C:\>orapwd file=D:\oracle\product\10.1.0\db_1\database\pwddims.ora password=oracle entries=3
orapwd是建立口令檔案的工肯程式各稱,file引數指定口令檔案所在的目錄和檔名稱,password引數指定sys使用者的口令,
entries引數指定資料庫擁用DBA許可權的使用者的個數,當然還有一個force引數,相信您不指即明,這裡就不再細述。
請注意,這裡的命令要一行輸入,中間不得換行,否則會出現不必要的錯誤。
口令檔案是專門存放sys使用者的口令,因為sys使用者要負責建庫、啟動資料庫、關閉資料庫等特殊任務,把以sys使用者的中令單獨
存放於口令檔案中,這樣資料庫末開啟時也能進行口令驗證。
6、啟動資料庫到nomount(例項)狀態
C:\>sqlplus /nolog
SQL>connect sys/oracle as sysdba ---這裡是用sys連線資料庫
已連線到空閒例程
SQL>startup nomount
ORACLE 例程已經啟動。
SQL>
7、執行建庫指令碼
執行建庫指令碼,首先要有建庫的指令碼。(去哪找建庫指令碼呢?我又沒有!)不用著急,請接著往下看。
得到一個符合自己要求的建庫指令碼有兩種方法,一種方法是在自己的電腦上用DBCA來建,接照它的提示一步步地去做,
另一種方法就是自己手工去寫一份建庫指令碼,這也是這裡要見意使用的方法,用記事本編輯如下的內容,並將其儲存為檔名任
取而字尾名為(*.sql)的SQL指令碼,檔名稱cr_dims.sql。
CREATE DATABASE DIMS
datafile 'D:\oracle\product\10.2.0\oradata\dims\disk1\system01.dbf' size 350M
sysaux datafile 'D:\oracle\product\10.2.0\oradata\dims\disk2\sysaux01.dbf' size 50M
undo tablespace undotbs datafile 'D:\oracle\product\10.2.0\oradata\dims\disk3\undotbs01.dbf' size 50M
default temporary tablespace temp tempfile 'D:\oracle\product\10.2.0\oradata\dims\disk3\temp01.dbf' size 50M
logfile
group 1 'D:\oracle\product\10.2.0\oradata\dims\disk1\redo01.log' size 50m,
group 2 'D:\oracle\product\10.2.0\oradata\dims\disk1\redo02.log' size 50m,
group 3 'D:\oracle\product\10.2.0\oradata\dims\disk1\redo03.log' size 50m
character set zhs16gbk;
接著就執行剛建的建庫指令碼:兩個指令碼內容上面都有
SQL>@?\cr_dims.sql
8、執行catalog腳步本建立資料字典,執行catproc建立package包,執行pupbld
SQL>@?\cr_dict.sql
9、執行scott指令碼建立scott模式
SQL>start D:\oracle\product\10.1.0\db_1\rdbms\admin\scott.sql
10、把資料庫開啟到正常狀態
SQL>alter database open;
11、以scott連線到資料庫(口令為tiger),測試新建資料庫是否可以正常執行
至此,整個資料庫就已經建好了。接著你就可以在此資料庫上建立自己的賬戶和表空間啦以及資料庫物件,這裡就不再作更多地
敘述。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/28894640/viewspace-765095/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- oracle手動建庫詳細步聚Oracle
- oracle手動建庫Oracle
- oracle 之 手動建庫Oracle
- ORACLE RAC 手動建庫Oracle
- oracle建庫過程詳解Oracle
- oracle11g 手動建庫Oracle
- oracle 9i 手動建庫Oracle
- Oracle手動建庫常見問題Oracle
- 手動建庫備註
- 靜默安裝and手動建庫
- 手動建庫過程錯誤
- Sample Schemas建庫後手動建立
- 手動建立oracle資料庫Oracle資料庫
- Oracle 手動建立資料庫Oracle資料庫
- 拋開dbca,手動建庫步驟
- Oracle資料庫啟動過程及狀態詳解Oracle資料庫
- oracle手動刪除資料庫Oracle資料庫
- 手動刪除oracle資料庫Oracle資料庫
- 靜默安裝oracle11gR2軟體並且手動建庫Oracle
- 【Oracle-資料庫概念】-Oracle checkpoint詳解Oracle資料庫
- 【02】Oracle資料庫的例項啟動關閉詳解Oracle資料庫
- oracle資料庫的啟動與關閉過程詳解Oracle資料庫
- 詳解oracle資料庫閃回Oracle資料庫
- ORACLE 資料庫審計詳解Oracle資料庫
- oracle 資料庫ASM功能詳解Oracle資料庫ASM
- 手動建庫步驟 10g for linuxLinux
- Linux共享庫、靜態庫、動態庫詳解Linux
- 【oracle手工建庫】Oracle
- oracle手工建庫Oracle
- Hive隨手記——建庫Hive
- MySQL的資料型別和建庫策略詳解MySql資料型別
- oracle 啟動 關閉步驟詳解Oracle
- oracle起動和關閉詳解(轉)Oracle
- 詳解ORACLE資料庫的分割槽表Oracle資料庫
- ORACLE資料庫閃回步驟詳解Oracle資料庫
- oracle資料庫 exp/imp命令詳解(轉)Oracle資料庫
- oracle靜默建庫刪庫Oracle
- oracle建庫指令碼Oracle指令碼