8){NewaspContentLabel.style.fontSize=(--newasp_fontsize)+"pt";NewaspContentLabel.style.lineHeight=(--newasp_lineheight)+"pt";}‘>減小字體 增大字體
---- ORACLE數(shù)據(jù)庫由數(shù)據(jù)文件,控制文件和聯(lián)機日志文件三種文件組成。由于磁盤空間的變化,或者基于數(shù)據(jù)庫磁盤I/O 性能的調(diào)整等,數(shù)據(jù)庫管理員可能會考慮移動數(shù)據(jù)庫文件。下面以UNIX平臺為例,分別討論三種數(shù)據(jù)庫文件的移動方法。
---- 一.移動數(shù)據(jù)文件:
---- 可以用ALTER DATABASE,ALTER TABLESPACE兩種方法移動數(shù)據(jù)文件。
---- 1. ALTER DATABASE方法;
---- 用此方法,可以移動任何表空間的數(shù)據(jù)文件。
---- STEP 1. 下數(shù)據(jù)庫:
$ svrmgrl SVRMGR > CONNECT INTERNAL; SVRMGR > SHUTDOWN; SVRMGR > EXIT;
---- STEP 2.用操作系統(tǒng)命令移動數(shù)據(jù)文件: ---- 將數(shù)據(jù)文件 ‘a(chǎn)pp1_data.ora‘ 從/ora/oracle7/data1目錄移動到/ora/oracle7/data2目錄下:
---- $ mv /ora/oracle7/data1/app1_data.ora /ora/oracle7/data2
---- STEP 3. Mount數(shù)據(jù)庫,用ALTER DATABASE命令將數(shù)據(jù)文件改名:
---- $ svrmgrl
SVRMGR > CONNECT INTERNAL; SVRMGR > STARTUP MOUNT; SVRMGR > ALTER DATABASE RENAME FILE 2 > ‘/ora/oracle7/data1/app1_data.ora ‘ TO 3 > ‘/ora/oracle7/data2/app1_data.ora;
STEP 4. 打開數(shù)據(jù)庫:. SVRMGR > ALTER DATABASE OPEN; SVRMGR >SELECT NAME,STATUS FROM V$DATAFILE;
---- 2. ALTER TABLESPACE方法: ---- 用此方法,要求此數(shù)據(jù)文件既不屬于SYSTEM表空間,也不屬于含有ACTIVE回滾段或臨時段的表空間。
---- STEP1. 將此數(shù)據(jù)文件所在的表空間OFFLINE:
$ svrmgrl SVRMGR > CONNECT INTERNAL; SVRMGR > ALTER TABLESPACE app1_data OFFLINE; SVRMGR > EXIT;
STEP2. 用操作系統(tǒng)命令移動數(shù)據(jù)文件: 將數(shù)據(jù)文件 ‘a(chǎn)pp1_data.ora‘ 從/ora/oracle7/ data1目錄移動到/ora/oracle7/data2目錄下: $ mv /ora/oracle7/data1/app1_data.ora /ora/oracle7/data2
STEP3. 用ALTER TABLESPACE命令改數(shù)據(jù)文件名: $ svrmgrl SVRMGR > CONNECT INTERNAL; SVRMGR > ALTER TABLESPACE app1_data RENAME DATAFILE 2 > ‘/ora/oracle7/data 1/app1_data.ora‘ TO 3 > ‘/ora/oracle7/data2/app1_data.ora;
STEP4. 將此數(shù)據(jù)文件所在的表空間ONLINE: SVRMGR > ALTER TABLESPACE app1_data ONLINE; SVRMGR > SELECT NAME,STATUS FROM V$DATAFILE;
---- 二. 移動控制文件:
---- 控制文件 在 INIT.ORA文件中指定。移動控制文件相對比較簡單,下數(shù)據(jù)庫,編輯INIT.ORA,移動控制文件,重啟動 數(shù)據(jù)庫。
STEP 1. 下數(shù)據(jù)庫: $ svrmgrl SVRMGR > CONNECT INTERNAL; SVRMGR > SHUTDOWN; SVRMGR > EXIT;
STEP 2.用操作系統(tǒng)命令 移動控制文件: 將控制文件‘ctl3orcl.ora‘ 從/ora/oracle7 /data1目錄移動到/ora/oracle7/data2目錄下: $ mv /ora/oracle7/data 1/ctrl3orcl.ora /ora/oracle7/data2
STEP 3. 編輯INIT.ORA文件: INIT.ORA文件的在$ORACLE_HOME/dbs目錄下, 修改參數(shù) "control_files",其中指定移動后的控制文件: control_files = (/ora/oracle7/data 1/ctrl1orcl.ora, /ora/oracle7/data1/ctrl2orcl.ora, /ora/oracle7/data2/ctrl3orcl.ora)
STEP 4. 重啟動數(shù)據(jù)庫: $ svrmgrl SVRMGR > CONNECT INTERNAL; SVRMGR > STARTUP; SVRMGR >SELECT name FROM V$CONTROLFILE; SVRMGR > EXIT;
---- 三. 移動聯(lián)機日志文件: STEP 1. 停數(shù)據(jù)庫: $ svrmgrl SVRMGR > CONNECT INTERNAL; SVRMGR > SHUTDOWN; SVRMGR > EXIT;
STEP 2. 用操作系統(tǒng)命令移動聯(lián)機日志文件: 將聯(lián)機日志文件‘redolog1.ora‘ 從/ora/oracle7 /data1目錄移動到/ora/oracle7/data2目錄下: $ mv /ora/oracle7/data 1/redolog1.ora /ora/oracle7/data2
STEP 3. Mount數(shù)據(jù)庫,用ALTER DATABASE 命令改聯(lián)機日志文件名:. $ svrmgrl SVRMGR > CONNECT INTERNAL; SVRMGR > STARTUP MOUNT CC1; SVRMGR > ALTER DATABASE RENAME FILE 2 > ‘/ora/oracle7/data 1/redolog1.ora‘ TO 3 > ‘/ora/oracle7/data 2/redolog1.ora‘;
STEP 4.重啟動數(shù)據(jù)庫: . SVRMGR > ALTER DATABASE OPEN; SVRMGR >SELECT MEMBER FROM V$LOGFILE;
|