在ORACLE移动数据库文件

来源:asp之家 时间:2010-08-02 12:54:00 

 ---- 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;

标签:oracle,数据库,文件
0
投稿

猜你喜欢

  • sqlserver 手工实现差异备份的步骤

    2024-01-28 12:48:24
  • 图文详解Python中如何简单地解决Microsoft Visual C++ 14.0报错

    2021-09-09 02:16:48
  • PyTorch中关于tensor.repeat()的使用

    2023-06-26 07:13:35
  • Pytorch模型微调fine-tune详解

    2021-06-17 07:29:00
  • php面向对象全攻略 (十二) 抽象方法和抽象类

    2023-11-18 20:44:18
  • Java数据库连接池之c3p0简介_动力节点Java学院整理

    2024-01-19 18:16:03
  • Numpy ndarray 多维数组对象的使用

    2023-08-09 07:01:54
  • NumPy对数组按索引查询实战方法总结

    2021-02-23 06:33:18
  • mysql:Can't start server: can't create PID file: No space left on device

    2024-01-24 23:20:46
  • PyTorch中的参数类torch.nn.Parameter()详解

    2021-09-07 19:06:30
  • 获得当前数据库对象依赖关系的实用算法

    2009-01-08 13:28:00
  • 使用Javascript实现选择下拉菜单互移并排序

    2023-09-07 18:14:45
  • sql server not in 语句使程充崩溃

    2012-01-05 19:05:00
  • php实现搜索一维数组元素并删除二维数组对应元素的方法

    2023-10-09 05:45:40
  • Oracle VM VirtualBox 虚拟机硬盘扩容

    2024-01-14 13:58:59
  • python多线程扫描端口示例

    2022-06-28 23:18:58
  • 如何通过神经网络实现线性回归的拟合

    2023-04-24 06:15:07
  • Javascript typeof 用法

    2013-10-20 20:49:40
  • JavaScript获取echart曲线上任意点位的值详解

    2024-05-02 16:57:52
  • Python画图时如何调用本地字体

    2023-08-02 08:51:31
  • asp之家 网络编程 m.aspxhome.com