看了一下資料,更改數據文件的方法如下:
1)恢復數據庫(注意備份生產環境的數據庫)
(a)創建一個itsm的數據庫將數據庫文件路徑設置爲D:/oracle/itsm,
(b)停止itsm服務,將生產環境的itsm數據庫停止並將生產環境的D:/oracle/itsm下的文件考到測試環境的D:/oracle/itsm下(注意:替換前先備份原來的數據庫)
(c)執行命令裝載數據庫sqlplus "/as sysdba"
startup mount
alter database open
SQL> shutdown immediate
數據庫已經關閉。
已經卸載數據庫。
ORACLE 例程已經關閉。
SQL> startup mount
ORACLE 例程已經啓動。
Total System Global Area 135338868 bytes
Fixed Size 453492 bytes
Variable Size 109051904 bytes
Database Buffers 25165824 bytes
Redo Buffers 667648 bytes
數據庫裝載完畢。
SQL> alter database rename file 'C:/ORACLE/ORADATA/DRACO/SYSTEM01.DBF' to 'G:/oradata/SYSTEM01.DBF';
數據庫已更改。
SQL> alter database rename file 'C:/ORACLE/ORADATA/DRACO/UNDOTBS01.DBF' to 'g:/oradata/undotbs01.dbf';
數據庫已更改。
SQL> alter database rename file 'C:/ORACLE/ORADATA/DRACO/CWMLITE01.DBF' to 'g:/oradata/cwmlite01.dbf';
數據庫已更改。
SQL> alter database rename file 'C:/ORACLE/ORADATA/DRACO/DRSYS01.DBF' to 'g:/oradata/drsys01.dbf';
數據庫已更改。
SQL> alter database rename file 'C:/ORACLE/ORADATA/DRACO/EXAMPLE01.DBF' to 'g:/oradata/example01.dbf';
數據庫已更改。
SQL> alter database rename file 'C:/ORACLE/ORADATA/DRACO/INDX01.DBF' to 'g:/oradata/indx01.dbf';
數據庫已更改。
SQL> alter database rename file 'C:/ORACLE/ORADATA/DRACO/ODM01.DBF' to 'g:/oradata/odm01.dbf';
數據庫已更改。
SQL> alter database rename file 'C:/ORACLE/ORADATA/DRACO/TOOLS01.DBF' to 'g:/oradata/tools01.dbf';
數據庫已更改。
SQL> alter database rename file 'C:/ORACLE/ORADATA/DRACO/USERS01.DBF' to 'g:/oradata/users01.dbf';
數據庫已更改。
SQL> alter database rename file 'C:/ORACLE/ORADATA/DRACO/XDB01.DBF' to 'g:/oradata/xdb01.dbf';
數據庫已更改。
SQL> alter database open;
數據庫已更改。在shutdown immediate後複製數據文件到g:/oradata/
然後再接着startup mount
。。。。更改控制文件儲存位置的方法:
C:/>sqlplus
SQL*Plus: Release 9.2.0.1.0 - Production on 星期二 10月 19 15:14:29 2004
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
請輸入用戶名: /as sysdba
連接到:
Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.1.0 - Production
SQL> select * from v$controlfile;
STATUS
-------
NAME
------------------------------------------------------------------------
--------
C:/ORACLE/ORADATA/DRACO/CONTROL01.CTL
C:/ORACLE/ORADATA/DRACO/CONTROL02.CTL
C:/ORACLE/ORADATA/DRACO/CONTROL03.CTL
SQL> create pfile='c:/init.ora' from spfile;
文件已創建。
<<修改init.ora文件中的內容:
*.control_files='/oradata/ocp/control01.ctl','/oradata/ocp/control02.ctl'
,'/oradata/ocp/control03.ctl'
路徑更改爲要儲存的目錄位置。>>
SQL> shutdown immediate
數據庫已經關閉。
已經卸載數據庫。
ORACLE 例程已經關閉。
<<複製控制文件到要存儲的目錄裏〉〉
SQL> startup pfile='c:/init.ora';《從init.ora啓動》
ORACLE 例程已經啓動。
Total System Global Area 135338868 bytes
Fixed Size 453492 bytes
Variable Size 109051904 bytes
Database Buffers 25165824 bytes
Redo Buffers 667648 bytes
數據庫裝載完畢。
數據庫已經打開。
SQL> create spfile from pfile='c:/init.ora';
文件已創建。
SQL> shutdown immediate
數據庫已經關閉。
已經卸載數據庫。
ORACLE 例程已經關閉。
SQL> startup force
ORACLE 例程已經啓動。
Total System Global Area 135338868 bytes
Fixed Size 453492 bytes
Variable Size 109051904 bytes
Database Buffers 25165824 bytes
Redo Buffers 667648 bytes
數據庫裝載完畢。
數據庫已經打開。
SQL> select * from v$controlfile;
STATUS
-------
NAME
------------------------------------------------------------------------
--------
G:/ORADATA/CONTROL01.CTL
G:/ORADATA/CONTROL02.CTL
G:/ORADATA/CONTROL03.CTL
SQL> 果不改system表空間的數據文件可以不用shutdown。
step1:sql>offline tablespace
step2s>mv datafile
step3:sql>alter rename
step4:sql>online tablespace
redo log:
alter database rename file 'xxxto 'xxx';
或刪除重建 我更改日誌文件儲存路徑時執行一下命令:
startup mount
alter database rename file ‘C:/ORACLE/ORADATA/DRACO/REDO03.LOG’ to ‘g:/oradata/REDO03.LOG’
然後重新啓動數據庫就出現如下錯誤,請問如何解決?謝謝!
SQL> startup force
ORACLE 例程已經啓動。
Total System Global Area 135338868 bytes
Fixed Size 453492 bytes
Variable Size 109051904 bytes
Database Buffers 25165824 bytes
Redo Buffers 667648 bytes
數據庫裝載完畢。
ORA-00322: 日誌 1 (線程 1) 不是當前副本
ORA-00312: 聯機日誌 1 線程 1: 'G:/ORADATA/REDO01.LOG'