在ORACLE中移动数据库文件

  泉源:网海拾贝  




---- ORACLE数据库由数据文件,节制文件和联机日记文件三种文件构成。因为磁盘空间的厘革,年夜概基于数据库磁盘I/O
功效的调处等,数据库治理员可以会考虑移动数据库文件。上面以UNIX平台为例,辞别会商三种数据库文件的移动办法。

---- 一.移动数据文件:

---- 可以用ALTER DATABASE,ALTER TABLESPACE两种办法移动数据文件。

---- 1. ALTER DATABASE办法;

---- 用此办法,可以移动任何表空间的数据文件。

---- STEP 1. 下数据库:

$ svrmgrl
SVRMGR > CONNECT INTERNAL;
SVRMGR > SHUTDOWN;
SVRMGR > EXIT;

---- STEP 2.用独霸体系下令移动数据文件:
---- 将数据文件 'app1_data.ora' 从/ora/oracle7/data1目录移动到/ora/oracle7/data2目录下:

---- $ mv /ora/oracle7/data1/app1_data.ora /ora/oracle7/data2

---- STEP 3. Mount数据库,用ALTER DATABASE下令将数据文件改名:

---- $ svrmgrl

SVRMGR > CONNECT INTERNAL;
SVRMGR > STARTUP MOUNT;
SVRMGR > ALTER DATABASE RENAME FILE
2 > '/ora/oracle7/data1/app1_data.ora ' TO
3 > '/ora/oracle7/data2/app1_data.ora;

STEP 4. 翻开数据库:.
SVRMGR > ALTER DATABASE OPEN;
SVRMGR >SELECT NAME,STATUS FROM V$DATAFILE;

---- 2. ALTER TABLESPACE办法:
---- 用此办法,要求此数据文件既不属于SYSTEM表空间,也不属于含有ACTIVE回滚段或一时段的表空间。

---- STEP1. 将此数据文件地点的表空间OFFLINE:

$ svrmgrl
SVRMGR > CONNECT INTERNAL;
SVRMGR > ALTER TABLESPACE app1_data OFFLINE;
SVRMGR > EXIT;

STEP2. 用独霸体系下令移动数据文件:
将数据文件 'app1_data.ora' 从/ora/oracle7/
data1目录移动到/ora/oracle7/data2目录下:
$ mv /ora/oracle7/data1/app1_data.ora /ora/oracle7/data2

STEP3. 用ALTER TABLESPACE下令改数据文件名:
$ svrmgrl
SVRMGR > CONNECT INTERNAL;
SVRMGR > ALTER TABLESPACE app1_data RENAME DATAFILE
2 > '/ora/oracle7/data 1/app1_data.ora' TO
3 > '/ora/oracle7/data2/app1_data.ora;

STEP4. 将此数据文件地点的表空间ONLINE:
SVRMGR > ALTER TABLESPACE app1_data ONLINE;
SVRMGR > SELECT NAME,STATUS FROM V$DATAFILE;

---- 二. 移动节制文件:

---- 节制文件 在 INIT.ORA文件中指定。移动节制文件绝相比赛年夜概纰漏,下数据库,编辑INIT.ORA,移动节制文件,重启动
数据库。

STEP 1. 下数据库:
$ svrmgrl
SVRMGR > CONNECT INTERNAL;
SVRMGR > SHUTDOWN;
SVRMGR > EXIT;

STEP 2.用独霸体系下令 移动节制文件:
将节制文件'ctl3orcl.ora' 从/ora/oracle7
/data1目录移动到/ora/oracle7/data2目录下:
$ mv /ora/oracle7/data 1/ctrl3orcl.ora
/ora/oracle7/data2

STEP 3. 编辑INIT.ORA文件:
INIT.ORA文件的在$ORACLE_HOME/dbs目录下,
修改参数 "control_files",个中指定移动后的节制文件:
control_files = (/ora/oracle7/data 1/ctrl1orcl.ora,
/ora/oracle7/data1/ctrl2orcl.ora,
/ora/oracle7/data2/ctrl3orcl.ora)

STEP 4. 重启动数据库:
$ svrmgrl
SVRMGR > CONNECT INTERNAL;
SVRMGR > STARTUP;
SVRMGR >SELECT name FROM V$CONTROLFILE;
SVRMGR > EXIT;


---- 三. 移动联机日记文件:
STEP 1. 停数据库:
$ svrmgrl
SVRMGR > CONNECT INTERNAL;
SVRMGR > SHUTDOWN;
SVRMGR > EXIT;

STEP 2. 用独霸体系下令移动联机日记文件:
将联机日记文件'redolog1.ora' 从/ora/oracle7
/data1目录移动到/ora/oracle7/data2目录下:
$ mv /ora/oracle7/data 1/redolog1.ora
/ora/oracle7/data2

STEP 3. Mount数据库,用ALTER DATABASE
下令改联机日记文件名:.
$ svrmgrl
SVRMGR > CONNECT INTERNAL;
SVRMGR > STARTUP MOUNT CC1;
SVRMGR > ALTER DATABASE RENAME FILE
2 > '/ora/oracle7/data 1/redolog1.ora' TO
3 > '/ora/oracle7/data 2/redolog1.ora';

STEP 4.重启动数据库: .
SVRMGR > ALTER DATABASE OPEN;
SVRMGR >SELECT MEMBER  FROM V$LOGFILE;




版权声明: 原创作品,应允转载,转载时请务必以超链接方式标明文章 原始出处 、作者信息和本声明。不然将追究规则责任。

原文地址:https://www.cnblogs.com/zgqjymx/p/1975879.html