linux 数据库文件迁移步骤详解
数据库所有文件(数据文件、日志文件、临时文件、控制文件)迁移步骤:
1、 迁移步骤概述:
1:具体需求
2:保存现有数据文件、控制文件、临时文件、日志文件位置
3:停止监听,并关闭数据库
4:移动所有数据文件、控制文件、临时文件、日志文件到新的位置
5:启动数据库到nomount状态,并更改控制文件位置,关闭数据库
6:启动数据库到mount状态
7:更改数据文件、临时文件、日志文件位置
7:打开数据库
8:重启验证
2、 具体操作:
1、迁移目录
将数据文件、控制文件、临时文件、日志文件都迁移到新的目录/oradata/esbdb上
注意:该目录 需要有Oracle软件安装用户读写权限
切换用户为oracle
su – oracle
2、文件位置
保存现有数据文件、控制文件、临时文件、日志文件位置
sqlplus / as sysdba;
SQL> select NAME from v$datafile; 所有数据文件
SQL> select MEMBER from v$logfile; 所有日志文件
SQL> select name from v$tempfile; 所有临时文件
SQL> show parameter control 查看控制文件位置
3、关闭数据库
SQL> shutdown immediate; 立即关闭
[[email protected] orcl]$ lsnrctl stop
注意:关闭之前需要停止所有应用
4、迁移开始
注意在 oracle 用户组下执行操作;
移动所有数据文件、控制文件、临时文件、日志文件到新的位置
留一份控制文件在原有路径做冗余。
此次迁移工作只涉及到了/u01/app/oracle/oradata/esbdb/esbdb_temp.dbf与/u01/app/oracle/oradata/esbdb/esbdb_data.dbf 两个文件;
5、数据库nomount状态
启动数据库到nomount状态,并更改控制文件位置,关闭数据库;
SQL> startup nomount;
示例:SQL>alter stem set control_files=’/oradata/orcl/control01.ctl’,’/oradata/orcl/control02.ctl’,’/u01/app/oracle/product/10.2.0/db_1/oradata/orcl/control03.ctl’ scope=spfile;
(注意:这里是更改控制文件位置,此次迁移控制文件不用迁移)
SQL> shutdown immediate; 关闭数据库
启动数据库到mount状态
设置完数据库控制文件之后,关闭数据库,并启动数据库到mount状态;
SQL> startup mount;
show parameter control 查看控制文件位置 是否更改到指定位置
6、更改数据文件、临时文件和日志文件位置
alter database rename file ‘/u01/app/oracle/oradata/esbdb/esbdb_data.dbf’ to ‘/oradata/esbdb/esbdb_data.dbf’;
alter database rename file ‘/u01/app/oracle/oradata/esbdb/esbdb_temp.dbf’ to ‘/oradata/esbdb/esbdb_temp.dbf’;
注意:具体迁移文件请以实际情况为主;引号之间不要有空格。
打开数据库:
SQL> alter database open;
7、重启验证
SQL> shutdow immediate;
SQL> startup
SQL> select NAME from vdatafile;所有数据文件SQL>selectnamefromvtempfile; 所有临时文件
SQL> select MEMBER from v$logfile; 所有日志文件
SQL> show parameter control 查看控制文件位置
linux 数据库文件迁移步骤详解相关教程