--oracle資料庫由資料檔案,控制檔案和聯機日誌檔案三種檔案組成。
--由於磁碟空間的變化,或者基於資料庫磁碟i/o效能的調整等,
--我們可能會考慮移動資料庫檔案。
--下面以unix平台為例,分別討論三種資料庫檔案的移動方法。
一.移動資料檔案: -- 可以用alter database,alter tablespace兩種方法移動資料檔案。
1. alter database方法;
-- 用此方法,可以移動任何表空間的資料檔案。
step 1. 關閉資料庫:
$ sqlplus /nolog
sql> connect internal;
sql> shutdown;
sql> exit;
step 2.用作業系統命令移動資料檔案:
-- 將資料檔案 'test.ora' 從/ora/oracle/data1目錄移動到/ora/oracle/data2目錄下:
$ mv /ora/oracle/data1/test.ora /ora/oracle/data2
step 3. 啟動資料庫至mount,用alter database命令將資料檔案改名:
$ sqlplus /nolog
sql> connect internal;
sql> startup mount;
sql> alter database rename file '/ora/oracle/data1/test.ora' to '/ora/oracle/data2/test.ora';
step 4. 開啟資料庫:.
sql> alter database open;
sql>select name,status from v$datafile;
2. alter tablespace方法:
-- 用此方法,要求此資料檔案既不屬於system表空間,也不屬於含有active回滾段或臨時段的表空間。
step1. 將此資料檔案所在的表空間offline:
$ sqlplus /nolog
sql> connect internal;
sql> alter tablespace test offline;
sql> exit;
step2. 用作業系統命令移動資料檔案:
將資料檔案 'test.ora' 從/ora/oracle/
data1目錄移動到/ora/oracle/data2目錄下:
$ mv /ora/oracle/data1/test.ora /ora/oracle/data2
step3. 用alter tablespace命令改資料檔名:
$ sqlplus /nolog
sql> connect internal;
sql> alter tablespace test rename datafile '/ora/oracle/data1/test.ora' to '/ora/oracle/data2/test.ora';
step4. 將此資料檔案所在的表空間online:
sql> alter tablespace test online;
sql> select name,status from v$datafile;
二. 移動控制檔案:
-- 控制檔案 在 init.ora檔案中指定。移動控制檔案相對比較簡單,下資料庫,
-- 編輯init.ora,移動控制檔案,重啟動資料庫。
step 1. 下資料庫:
$ sqlplus /nolog
sql> connect internal;
sql> shutdown;
sql> exit;
step 2.用作業系統命令 移動控制檔案:
--將控制檔案'ctl3orcl.ora' 從/ora/oracle/data1目錄移動到/ora/oracle/data2目錄下:
$ mv /ora/oracle/data1/ctrlorcl3.ora /ora/oracle/data2
step 3. 編輯init.ora檔案:
init.ora檔案的在$oracle_home/dbs目錄下,
修改引數 "control_files",其中指定移動後的控制檔案:
control_files = (/ora/oracle/data1/ctrlorcl1.ora,/ora/oracle/data1/ctrlorcl2.ora,/ora/oracle/data2/ctrlorcl3.ora)
step 4. 重啟動資料庫:
$ sqlplus /nolog
sql> connect internal;
sql> startup;
sql>select name from v$controlfile;
sql> exit;
三. 移動聯機日誌檔案:
step 1. 停資料庫:
$ sqlplus /nolog
sql> connect internal;
sql> shutdown;
sql> exit;
step 2. 用作業系統命令移動聯機日誌檔案:
--將聯機日誌檔案'redolog1.ora' 從/ora/oracle/data1目錄移動到/ora/oracle/data2目錄下:
$ mv /ora/oracle/data1/redolog1.ora /ora/oracle/data2
step 3. mount資料庫,用alter database 命令改聯機日誌檔名:.
$ sqlplus /nolog
sql> connect internal;
sql> startup mount ;
sql> alter database rename file '/ora/oracle/data1/redolog1.ora' to '/ora/oracle/data2/redolog1.ora';
step 4.重啟動資料庫: .
sql> alter database open;
sql>select member from v$logfile;
**:
Oracle移動資料庫檔案
一。設定要移動的資料庫 開始 執行 cmd命令 set oracle sid experience experience你要移動檔案所屬的資料庫的sid 二。進入sqlplus sqlplus nolog conn sys sys as sysdba 已連線。select name from v d...
資料庫檔案
if exists select from mater.sysdatabases where name db 09zy drop database db 09zy go create database zy on primary name zy data filename e 09.9zy1 zy ...
資料庫 檔案
定長記錄 檔案頭維護空閒列表 變長記錄 塊頭 空閒空間 記錄 插入 在空閒空間末尾分配空間 刪除 將條目之前的全部向後移動 大物件通常儲存到特殊檔案,通過指標儲存在記錄中 引數檔案 日誌檔案 套接字檔案 通過套接字檔案,unix系統下本地連線mysql可以採用unix域套接字方式 pid檔案 mys...