ORACLE10G手工建庫

2021-12-30 11:52:19 字數 4056 閱讀 5191

--資料庫檔案目錄

$ 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

--在這個目錄下存放資料庫的初始化引數檔案,我們需要在這個目錄下建立乙個pfile檔案

$ vi inithyl.ora

--初始化引數名字為init加上sid

sga_target=400m

--一般記憶體分配總大小為物理記憶體的80%,而其中sga又佔其80%(表示sga:pga=4:1的關係)

--下面是資料名,初期規劃為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檔案

user_dump_dest=/u01/app/oracle/oradata/hyl/dump/udump

background_dump_dest=/u01/app/oracle/oradata/hyl/dump/bdump

core_dump_dest=/u01/app/oracle/oradata/hyl/dump/cdump$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,

group 2 ('/u01/app/oracle/oradata/hyl/disk1/redo02a.log',

'/u01/app/oracle/oradata/hyl/disk2/redo02b.log')

size 100m,

group 3 ('/u01/app/oracle/oradata/hyl/disk1/redo03a.log',

'/u01/app/oracle/oradata/hyl/disk2/redo03b.log')

size 100m

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 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狀態

為避免建立其它使用者及物件時,對於system表空間的徵用,新建立乙個使用者表空間由於其它新建使用者預設使用。因為system表空間裡存放資料字典,當新建使用者或物件時缺省會放到system表空間下,這樣便對資料庫的效能有一定的影響。

這個問題,其實可以在建庫指令碼編寫初期進行解決,但由於官方文件中給出的參考語句,此處是錯誤的,所以我們在建庫後再手工再建立預設表空間即可。在11g中,官方文件提供的參考中就解決了這個問題。

(可以參看文章:

sql> create tablespace users datafile '/u01/app/oracle/oradata/hyl/disk3/user01.dbf' size 100m autoextend on next 50m maxsize unlimited;

--新建立乙個表空間,作為預設表空間使用

sql> alter database default tablespace users;

--改變資料庫預設表空間為users表空間

至此手工建庫完成。

ORACLE 10G 手工建庫

深藍的blog 資料庫檔案目錄 cd oracle base oradata ls 看到已經存在庫的 sid prod pwd 檢視一下絕對路徑 mkdir hyl ls l 產看一下目錄及許可權 規劃資料檔案存放的不同磁碟目錄,這裡的規劃依據實際情況而定 cd hyl mkdir dump dis...

oracle 10g手工建庫全過程

在平時的oracle建庫中我們一般都是採用gui建庫方式,所以手工建庫相對來說比較有些難度,這個也是ocm考試中需要關注的地方,特別做了測試,主要是版本是9i,10g 1.修改 etc oratab oral opt oracle database n 2.建立sys口令認證檔案 orapwd fi...

手工建立Oracle10g 資料庫

剛剛見好庫,參考了好多文章,都是比較凌亂的,版本各異,自己總結如下。redhat ws3 oracle10g release 2 oracle10gr2下手動建立資料庫 su oracle 1 設定系統環境變數 oracle home home oracle product 10.2.0 oracl...