美文网首页
oracle非系统表空间移动

oracle非系统表空间移动

作者: 徐子鑑 | 来源:发表于2019-10-31 11:39 被阅读0次

    环境 centos7 oracle11

    1.查看要改变的表空间的数据文件信息

    SQL> select tablespace_name,file_name,online_status from dba_data_files where tablespace_name='EXAMPLE';
     
    TABLESPACE_NAME FILE_NAME     ONLINE_
    --------------- ----------------------------------- -------
    EXAMPLE /opt/oracle/oradata/EXAMPLE01.DBF  ONLINE
    

    EXAMPLE为要移动的表空间名
    select tablespace_name from dba_data_files;
    查看所有表空间名

    2.将目标表空间设置为脱机状态

    SQL> alter tablespace EXAMPLE offline;
    

    3.再次查看目标表空间的状态,确保其已经是脱机状态

    SQL> select tablespace_name,file_name,online_status from dba_data_files where tablespace_name='EXAMPLE';
     
    TABLESPACE_NAME FILE_NAME     ONLINE_
    --------------- ----------------------------------- -------
    EXAMPLE  /opt/oracle/oradata/EXAMPLE01.DBF OFFLINE
    

    4.将原来的数据文件移动(或复制)到新的路径

    SQL> host mv /opt/oracle/oradata/EXAMPLE01.DBF /mnt/oracle/oradata/
    

    5.修改该表空间的数据文件路径

    SQL> alter tablespace EXAMPLE rename datafile '/opt/oracle/oradata/EXAMPLE01.DBF' to '/mnt/oracle/oradata/EXAMPLE01.DBF';
    

    6.查看该表空间修改后的信息,确保信息无误

    SQL> select tablespace_name,file_name,online_status from dba_data_files where tablespace_name='EXAMPLE';
     
    TABLESPACE_NAME FILE_NAME     ONLINE_
    --------------- ----------------------------------- -------
    EXAMPLE  /mnt/oracle/oradata/ORADATA/EXAMPLE01.DBF OFFLINE
    

    7.修改该表空间为在线状态

    SQL> alter tablespace EXAMPLE online;
    

    8.查看该表空间最后结果

    SQL> select tablespace_name,file_name,online_status
     from dba_data_files
     where tablespace_name='EXAMPLE';
    
    TABLESPACE_NAME FILE_NAME     ONLINE_
    --------------- ----------------------------------- -------
    EXAMPLE  /mnt/oracle/oradata/EXAMPLE01.DBF ONLINE
    

    备注:本方法对SYSAUX、USERS表空间也适用

    相关文章

      网友评论

          本文标题:oracle非系统表空间移动

          本文链接:https://www.haomeiwen.com/subject/tlgzvctx.html