Online Data Files move

  1. 云栖社区>
  2. 博客>
  3. 正文

Online Data Files move

snowofsummer 2018-09-19 08:20:50 浏览727
展开阅读全文

12C新特性: online data files move

参考手册:

Oracle Database Online Documentation 12c Release 1 (12.1) / Database Administration

14.5.1 Renaming and Relocating Online Data Files
You can use the ALTER DATABASE MOVE DATAFILE SQL statement to rename or relocate online data files. This statement enables you to rename or relocate a data file while the database is open and users are accessing the data file.

When you rename or relocate online data files, the pointers to the data files, as recorded in the database control file, are changed. The files are also physically renamed or relocated at the operating system level.

You might rename or relocate online data files because you want to allow users to access the data files when you perform one of the following tasks:

Move the data files from one type of storage to another

Move data files that are accessed infrequently to lower cost storage

Make a tablespace read-only and move its data files to write-once storage

Move a database into Oracle Automatic Storage Management (Oracle ASM)

移动本地文件到asm

SQL> alter database move datafile 16 to '+data/cdb/datafile/system02.dbf';

SQL>  select file#,name from v$datafile;

     FILE# NAME
---------- --------------------------------------------------------------------------------
     1 +DATA/CDB/DATAFILE/system.290.985011811
     3 +DATA/CDB/DATAFILE/sysaux.289.985011873
     4 +DATA/CDB/DATAFILE/undotbs1.293.985011907
     5 +DATA/CDB/64A52F53A7693286E053CDA9E80AED76/DATAFILE/system.300.985012289
     6 +DATA/CDB/64A52F53A7693286E053CDA9E80AED76/DATAFILE/sysaux.299.985012289
     7 +DATA/CDB/DATAFILE/users.294.985011909
     8 +DATA/CDB/64A52F53A7693286E053CDA9E80AED76/DATAFILE/undotbs1.301.985012289
     9 +DATA/CDB/DATAFILE/undotbs2.303.985012575
    10 +DATA/CDB/7429AF9E7B2A4EF9E053CB00A8C08F1D/DATAFILE/system.308.985012979
    11 +DATA/CDB/7429AF9E7B2A4EF9E053CB00A8C08F1D/DATAFILE/sysaux.309.985012979
    12 +DATA/CDB/7429AF9E7B2A4EF9E053CB00A8C08F1D/DATAFILE/undotbs1.307.985012979
    13 +DATA/CDB/7429AF9E7B2A4EF9E053CB00A8C08F1D/DATAFILE/undo_2.311.985013015
    14 +DATA/CDB/7429AF9E7B2A4EF9E053CB00A8C08F1D/DATAFILE/users.312.985013017
    15 +DATA/CDB/DATAFILE/user02.dbf
    16 /soft/system02.dbf

15 rows selected.

SQL> alter  database move datafile 16 to '+data/cdb/datafile/system02.dbf';

Database altered.

SQL>  select file#,name from v$datafile;

     FILE# NAME
---------- --------------------------------------------------------------------------------
     1 +DATA/CDB/DATAFILE/system.290.985011811
     3 +DATA/CDB/DATAFILE/sysaux.289.985011873
     4 +DATA/CDB/DATAFILE/undotbs1.293.985011907
     5 +DATA/CDB/64A52F53A7693286E053CDA9E80AED76/DATAFILE/system.300.985012289
     6 +DATA/CDB/64A52F53A7693286E053CDA9E80AED76/DATAFILE/sysaux.299.985012289
     7 +DATA/CDB/DATAFILE/users.294.985011909
     8 +DATA/CDB/64A52F53A7693286E053CDA9E80AED76/DATAFILE/undotbs1.301.985012289
     9 +DATA/CDB/DATAFILE/undotbs2.303.985012575
    10 +DATA/CDB/7429AF9E7B2A4EF9E053CB00A8C08F1D/DATAFILE/system.308.985012979
    11 +DATA/CDB/7429AF9E7B2A4EF9E053CB00A8C08F1D/DATAFILE/sysaux.309.985012979
    12 +DATA/CDB/7429AF9E7B2A4EF9E053CB00A8C08F1D/DATAFILE/undotbs1.307.985012979
    13 +DATA/CDB/7429AF9E7B2A4EF9E053CB00A8C08F1D/DATAFILE/undo_2.311.985013015
    14 +DATA/CDB/7429AF9E7B2A4EF9E053CB00A8C08F1D/DATAFILE/users.312.985013017
    15 +DATA/CDB/DATAFILE/user02.dbf
    16 +DATA/cdb/datafile/system02.dbf

15 rows selected.

移动部分文件到新目录

move 完成之后,源目录文件自动清除。

SQL> alter database move datafile 1 to '/soft/system01.dbf';
SQL> alter database move datafile 3 to '/soft/sysaux01.dbf';

[oracle@host01 ~]$ sqlplus / as sysdba

SQL*Plus: Release 12.1.0.2.0 Production on Wed Sep 19 22:36:24 2018

Copyright (c) 1982, 2014, Oracle.  All rights reserved.


Connected to:
Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production
With the Partitioning, Oracle Label Security, OLAP, Advanced Analytics
and Real Application Testing options

SQL> col name format a50;
set linesize 800;
set pagesize 900; 
select file#,name from v$datafile;SQL> SQL> SQL> 

     FILE# NAME
---------- --------------------------------------------------
     1 /u01/app/oracle/oradata/PRODCDB/system01.dbf
     2 /u01/app/oracle/oradata/PRODCDB/pdbseed/system01.dbf
     3 /u01/app/oracle/oradata/PRODCDB/sysaux01.dbf
     4 /u01/app/oracle/oradata/PRODCDB/pdbseed/sysaux01. bf
     5 /u01/app/oracle/oradata/PRODCDB/undotbs01.dbf
     6 /u01/app/oracle/oradata/PRODCDB/users01.dbf
     7 /u01/app/oracle/oradata/PRODCDB/PDBPROD1/system01.dbf
     8 /u01/app/oracle/oradata/PRODCDB/PDBPROD1/sysaux01.dbf
     9 /u01/app/oracle/oradata/PRODCDB/PDBPROD1/PDBPROD1_users01.dbf
    10 /u01/app/oracle/oradata/PRODCDB/PDBPROD2/system01. dbf
    11 /u01/app/oracle/oradata/PRODCDB/PDBPROD2/sysaux01.dbf
    12 /u01/app/oracle/oradata/PRODCDB/PDBPROD2/PDBPROD2_users01.dbf
    13 /u01/app/oracle/oradata/PRODCDB/PDBPROD1/example01.dbf
       
13 rows selected.

SQL> alter database move datafile 1 to '/soft/system01.dbf';
                                           
Database altered.

SQL> alter database move datafile 3 to '/soft/sysaux01.dbf';

Database altered.

select file#,name from v$datafile;SQL> SQL> SQL> 

     FILE# NAME
---------- --------------------------------------------------------------------------------
     1 /soft/system01.dbf
     2 /u01/app/oracle/oradata/PRODCDB/pdbseed/system01.dbf
     3 /soft/sysaux01.dbf
     4 /u01/app/oracle/oradata/PRODCDB/pdbseed/sysaux01.dbf
     5 /u01/app/oracle/oradata/PRODCDB/undotbs01.dbf
     6 /u01/app/oracle/oradata/PRODCDB/users01.dbf
     7 /u01/app/oracle/oradata/PRODCDB/PDBPROD1/system01.dbf
     8 /u01/app/oracle/oradata/PRODCDB/PDBPROD1/sysaux01.dbf
     9 /u01/app/oracle/oradata/PRODCDB/PDBPROD1/PDBPROD1_users01.dbf
    10 /u01/app/oracle/oradata/PRODCDB/PDBPROD2/system01.dbf
    11 /u01/app/oracle/oradata/PRODCDB/PDBPROD2/sysaux01.dbf
    12 /u01/app/oracle/oradata/PRODCDB/PDBPROD2/PDBPROD2_users01.dbf
    13 /u01/app/oracle/oradata/PRODCDB/PDBPROD1/example01.dbf

13 rows selected.

网友评论

登录后评论
0/500
评论
snowofsummer
+ 关注