博客
关于我
Oracle 表空间数据文件物理位置转移
阅读量:538 次
发布时间:2019-03-09

本文共 3530 字,大约阅读时间需要 11 分钟。

数据表空间文件转移指南

以下是Oracle数据库中将数据表空间文件转移的详细步骤说明:

  • 登录SQL Plus
    打开终端并执行以下命令:
  • sqlplus / as sysdba
    1. 确认需要迁移的数据文件
      执行查询以列出目标表空间的数据文件:
    2. select * from dba_data_files where tablespace_name like 'USERS';

      检查文件名、文件ID、表空间名称、字节大小等详细信息,确保迁移的文件符合要求。

      1. 将表空间设置为离线状态
        为了安全迁移数据,首先需要将表空间设置为离线状态:
      2. alter tablespace USERS offline;

        完成后会显示“表空间已更改”。

        1. 拷贝数据表空间文件
          使用命令拷贝文件到目标路径:
        2. cp /oradata/oracle/app/oracle/oradata/test/users01.dbf /oradata/oracle/datafile
          1. 重命名文件并更新表空间指向
            在SQL中重命名文件并更新表空间的存储位置:
          2. alter database rename file '/oradata/oracle/app/oracle/oradata/test/users01.dbf' to '/oradata/oracle/datafile/users01.dbf';
            1. 将表空间设置为在线状态
              完成迁移后,将表空间设置为在线状态:
            2. alter tablespace USERS online;
              1. 验证文件位置
                执行以下查询确认文件是否已正确迁移:
              2. select file_name from sys.dba_data_files;

                预期结果应包括迁移后的文件路径。

                1. 检查空闲表空间
                  查看迁移后表空间的空闲空间:
                2. select tablespace_name, sum(bytes)/1024/1024||'M' as freespaces from dba_data_files group by tablespace_name;

                  检查是否有足够的空闲空间供其他表空间使用。

                  1. 删除原数据文件
                    最后,删除原存的数据文件:
                  2. rm -rf /oradata/oracle/app/oracle/oradata/test/users01.dbf

                    系统表空间文件转移指南

                    以下是系统表空间文件转移的详细步骤说明:

                  3. 登录SQL Plus
                    打开终端并执行以下命令:
                  4. sqlplus / as sysdba
                    1. 确认需要迁移的数据文件
                      执行以下查询列出控制文件、数据文件、日志文件和临时文件的详细信息:
                    2. select name from v$controlfile;  select name from v$datafile;  select member from v$logfile;  select name from v$tempfile;
                      1. 创建pfile并关闭数据库实例
                        创建数据文件并关闭数据库:
                      2. create pfile from spfile;  shutdown immediate;
                        1. 拷贝文件到新位置
                          使用命令将文件拷贝到新的存储路径:
                        2. mkdir fast_recovery_area  cp /oradata/oracle/app/oracle/oradata/test/control01.ctl /oradata/oracle/datafile  cp /oradata/oracle/app/oracle/fast_recovery_area/test/control02.ctl /oradata/oracle/datafile/fast_recovery_area  cp /oradata/oracle/app/oracle/oradata/test/*.dbf /oradata/oracle/datafile  cp /oradata/oracle/app/oracle/oradata/test/*.log /oradata/oracle/datafile
                          1. 修改pfile中的控制文件路径
                            更新pfile中的控制文件路径:
                          2. cd $ORACLE_HOME/dbs  vi initwind.ora  *control_files='/oradata/oracle/datafile/control01.ctl','/oradata/oracle/datafile/fast_recovery_area/control02.ctl'
                            1. 启动数据库实例
                              启动数据库实例并检查状态:
                            2. startup mount;
                              1. 重命名系统表空间文件并更新指向
                                重新命名系统表空间文件并更新数据库指向:
                              2. alter database rename file '/oradata/oracle/app/oracle/oradata/test/system01.dbf' to '/oradata/oracle/datafile/system01.dbf';  alter database rename file '/oradata/oracle/app/oracle/oradata/test/sysaux01.dbf' to '/oradata/oracle/datafile/sysaux01.dbf';  alter database rename file '/oradata/oracle/app/oracle/oradata/test/undotbs01.dbf' to '/oradata/oracle/datafile/undotbs01.dbf';  alter database rename file '/oradata/oracle/app/oracle/oradata/test/redo01.log' to '/oradata/oracle/datafile/redo01.log';  alter database rename file '/oradata/oracle/app/oracle/oradata/test/redo02.log' to '/oradata/oracle/datafile/redo02.log';  alter database rename file '/oradata/oracle/app/oracle/oradata/test/redo03.log' to '/oradata/oracle/datafile/redo03.log';  alter database rename file '/oradata/oracle/app/oracle/oradata/test/standby01.log' to '/oradata/oracle/datafile/standby01.log';  alter database rename file '/oradata/oracle/app/oracle/oradata/test/standby02.log' to '/oradata/oracle/datafile/standby02.log';  alter database rename file '/oradata/oracle/app/oracle/oradata/test/standby03.log' to '/oradata/oracle/datafile/standby03.log';  alter database rename file '/oradata/oracle/app/oracle/oradata/test/standby04.log' to '/oradata/oracle/datafile/standby04.log';  alter database rename file '/oradata/oracle/app/oracle/oradata/test/temp01.dbf' to '/oradata/oracle/datafile/temp01.dbf';
                                1. 验证文件转换成功
                                  检查文件是否已成功迁移:
                                2. select name from v$datafile;  select member from v$logfile;  select name from v$tempfile;
                                  1. 打开数据库
                                    最后,打开数据库并验证功能:
                                  2. alter database open;

                                    以上步骤可帮助您完成数据表空间和系统表空间文件的迁移,确保数据库在迁移过程中保持稳定运行。

    转载地址:http://suqiz.baihongyu.com/

    你可能感兴趣的文章
    node基础(二)_模块以及处理乱码问题
    查看>>
    node安装卸载linux,Linux运维知识之linux 卸载安装node npm
    查看>>
    node安装及配置之windows版
    查看>>
    Node实现小爬虫
    查看>>
    Node提示:error code Z_BUF_ERROR,error error -5,error zlib:unexpected end of file
    查看>>
    Node提示:npm does not support Node.js v12.16.3
    查看>>
    Node搭建静态资源服务器时后缀名与响应头映射关系的Json文件
    查看>>
    Node服务在断开SSH后停止运行解决方案(创建守护进程)
    查看>>
    node模块化
    查看>>
    node模块的本质
    查看>>
    node环境下使用import引入外部文件出错
    查看>>
    node环境:Error listen EADDRINUSE :::3000
    查看>>
    Node的Web应用框架Express的简介与搭建HelloWorld
    查看>>
    Node第一天
    查看>>
    node编译程序内存溢出
    查看>>
    Node读取并输出txt文件内容
    查看>>
    node防xss攻击插件
    查看>>
    noi 1996 登山
    查看>>
    noi 7827 质数的和与积
    查看>>
    NOI-1.3-11-计算浮点数相除的余数
    查看>>