在ORACLE移動數(shù)據(jù)庫文件
性能的調(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ù)文件 app1_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ù)文件 app1_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;
<
相關(guān)文章
Oracle sql批量插入多條數(shù)據(jù)的實現(xiàn)
這篇文章主要介紹了Oracle sql批量插入多條數(shù)據(jù)的實現(xiàn)方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-07-07
Oracle 12c修改字符集的方法(解決數(shù)據(jù)導(dǎo)入后中文亂碼及ORA-12899錯誤)
之前在Windows上安裝的Oracle,現(xiàn)在遷移到Linux上,把dmp文件導(dǎo)入Linux的時候發(fā)現(xiàn)字段的注釋和存儲過程中的中文是問號?,而且導(dǎo)入的時候還會報ORA-12899錯誤,其實這些都是字符集問題,所以本文給大家介紹了Oracle 12c修改字符集的方法,需要的朋友可以參考下2024-04-04
oracle生成動態(tài)前綴且自增號碼的函數(shù)分享
這篇文章主要介紹了oracle生成動態(tài)前綴且自增號碼的函數(shù),需要的朋友可以參考下2014-04-04
使用Oracle數(shù)據(jù)庫登錄時被告知用戶被鎖怎么解決
這篇文章主要介紹了使用Oracle數(shù)據(jù)庫登錄時被告知用戶被鎖怎么解決的相關(guān)資料,需要的朋友可以參考下2016-07-07
Oracle ORA-22908(NULL表值的參考)異常分析與解決方法
這篇文章主要介紹了Oracle ORA-22908(NULL表值的參考)異常分析與解決方法,大家可以參考使用2013-11-11

