將表空間和數據文件從一個位置移動到另一個位置的操作方法
一. OFFLINE
OFFLINE 分為ALTER DATABASE 與 ALTER TABLESPACE OFFLINE,
他們的區別參看blog:http://blog.csdn.net/tianlesoftware/archive/2009/11/29/4898800.aspx
按數據文件來:
1.先將相應的數據文件 offline
ALTER DATABASE DATAFILE 'D:\ORACLE\ORADATA\DBA\TEST01.DBF' OFFLINE;
2.把數據文件 copy 到新位置
3. alter database rename file 'D:\ORACLE\ORADATA\DBA\TEST01.DBF' to 'D:\TEST01.DBF';
4. 介質恢復(offline 數據文件必須要介質恢復)
recover datafile 'D:\TEST01.DBF'
5. 將相應的數據文件 online
SQL>ALTER DATABASE DATAFILE 'D:\TEST01.DBF' ONLINE;
按表空間來:
1.先將相應的表空間 offline
SQL>alter tablespace test offline;
2.把數據文件 copy 到新位置
3. alter tablespace TEST rename datafile 'D:\TEST01.DBF' to 'D:\ORACLE\ORADATA\DBA\TEST01.DBF'
4. 將表空間 online
SQL>alter tablespace test online;
二. Shutdown 數據庫
1. 關閉數據庫
C:>set ORACLE_SID=DBA
C:>sqlplus /nolog
SQL*Plus: Release 10.2.0.1.0 - Production on 星期日 11月 29 11:14:02 2009
Copyright (c) 1982, 2005, Oracle. All rights reserved.
SQL> conn sys/admin as sysdba
已連接。
SQL> shutdown immediate
數據庫已經關閉。
已經卸載數據庫。
ORACLE 例程已經關閉。
SQL>
2. 把數據文件 copy 到新位置
3. rename datafile
SQL> startup mount
ORACLE 例程已經啟動。
Total System Global Area 289406976 bytes
Fixed Size 1248576 bytes
Variable Size 71303872 bytes
Database Buffers 209715200 bytes
Redo Buffers 7139328 bytes
數據庫裝載完畢。
SQL> alter database rename file 'D:\ORACLE\ORADATA\DBA\TEST01.DBF' to 'D:\TEST01
.DBF';
數據庫已更改。
SQL> alter database open;
數據庫已更改。
SQL> select file#,name,status from v$datafile;
FILE# NAME STATUS
-------- ------------------------------------------------------- ---------------
1 D:\ORACLE\ORADATA\DBA\SYSTEM01 SYSTEM
2 D:\ORACLE\ORADATA\DBA\UNDOTBS0 ONLINE
3 D:\ORACLE\ORADATA\DBA\SYSAUX01 ONLINE
4 D:\ORACLE\ORADATA\DBA\USERS01. ONLINE
5 D:\TEST01.DBF ONLINE
posted on 2011-04-07 15:34
SIMONE 閱讀(397)
評論(0) 編輯 收藏 所屬分類:
oracle