zoukankan      html  css  js  c++  java
  • 将数据文件从asm移到普通文件系统

    数据库可以关闭的场景:

    1.关闭并重新mount数据库

    $ sqlplus '/as sysdba'
    SQL> shutdown immediate;
    SQL> startup mount;
    

    2.确保文件系统的空间大小够用

    SQL> select file#,name,bytes/1024/1024 file_size_mb from v$datafile;
    
         FILE# NAME                                                         FILE_SIZE_MB
    ---------- ------------------------------------------------------------ ------------
             1 +DATA/test/datafile/system.285.914350599                             790
             2 +DATA/test/datafile/sysaux.276.914350599                            2140
             3 +DATA/test/datafile/undotbs1.280.914350599                           130
             4 +DATA/test/datafile/users.284.914350599                             2140
    

    3.登录rman并copy数据文件

    $ rman target /
    RMAN> copy datafile 4 to '/oradata/test/users01.dbf';
    

    4.更新控制文件中被移动文件的信息

    $ sqlplus '/as sysdba'
    SQL> alter database rename file '+DATA/test/datafile/users.284.914350599' to '/oradata/test/users01.dbf';
    

    5.查看结果

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

    6.打开数据库

    数据库处于运行状态:

    如果数据库处于运行状态,要想移动数据文件,必须要将文件offline
    1.查看包含该文件的表空间,并将数据文件offline

    RMAN> report schema;
    SQL> alter database datafile 4 offline;
    

    2.确保文件系统的空间大小够用

    SQL> select file#,name,bytes/1024/1024 file_size_mb from v$datafile;
    
         FILE# NAME                                                         FILE_SIZE_MB
    ---------- ------------------------------------------------------------ ------------
             1 +DATA/test/datafile/system.285.914350599                             790
             2 +DATA/test/datafile/sysaux.276.914350599                            2140
             3 +DATA/test/datafile/undotbs1.280.914350599                           130
             4 +DATA/test/datafile/users.284.914350599                             2140
    

    3.登录rman并copy数据文件

    $ rman target /
    RMAN> copy datafile 4 to '/oradata/test/users01.dbf';
    

    4.更新控制文件中被移动文件的信息

    $ sqlplus '/as sysdba'
    SQL> alter database rename file '+DATA/test/datafile/users.284.914350599' to '/oradata/test/users01.dbf';
    

    5.查看结果

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

    6.将数据文件online
    (1) 如果该数据文件所在的表空间是offline的,直接将数据文件online

    SQL> alter database datafile 4 online;
    

    (2) 如果该文件所在表空间是online的

    SQL> recover automatic datafile 4;
    SQL> alter database datafile 4 online;
    或者使用rman
    RMAN> recover datafile 4;
    RMAN> sql "alter database datafile 4 online";
    

      

  • 相关阅读:
    Lizcst Software Lab新秀品牌上线!
    HBase 数据备份
    Debian7离线升级bash漏洞—然后修复方法
    Android手势识别的发展
    【Android先进】如何使用数据文件来保存程序
    android 随着认识的去除率EditText(它配备了防抖效果)
    [Angular 2] Using Array ...spread to enforce Pipe immutability
    [Angular 2] Using Pipes to Filter Data
    [Angular 2] Controlling how Styles are Shared with View Encapsulation
    [Angular 2]ng-class and Encapsulated Component Style2
  • 原文地址:https://www.cnblogs.com/abclife/p/5771938.html
Copyright © 2011-2022 走看看