欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

在ORACLE移动数据库文件

程序员文章站 2023-11-07 20:05:10
正在看的oracle教程是:在oracle移动数据库文件。...
正在看的oracle教程是:在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;