动网论坛,站长建站首选,国内使用量最多的论坛软件 动网论坛官方技术讨论区 站长工具 申请属于您自己的免费论坛
首页 | 新闻资讯 | 网站运营 | 网络编程 | 数据库 | 服务器 | 网页设计 | 图像媒体 | 网络应用 | 搜索优化 | 资源下载 | 动网主机 | DVBOX
    本站内  互联网 ASP论坛  ASP.Net论坛  PHP论坛
   数据库 → 阅读文章
  

 在ORACLE中移动数据库文件

作者来源: 
阅读 数 434 人次 , 2006-3-18 11:52: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(完)


 本文Tagsoracle  数据库  
 收藏本文  打印本文  论坛讨论  关闭窗口
· 上一篇:分析Oracle数据库日志文件
· 下一篇:Oracle索引原理
· DB2 UDB静态图像扩展器(1)
· 指定文件位置优化性能
· 用Access设计客观试卷(三)
· MySQL数据库结构和数据的导出和导入
· 在业务系统中处理小数精度, 四舍五入,全舍弃,全进位的方法


关于本站 | 联系我们 | 业务合作 | 客户案例 | 诚聘英才 | 广告合作 | 收藏本站
海口动网先锋网络科技有限公司版权所有
Copyright © 2000 - 2006 Cndw.Com
中华人民共和国电信与信息服务业务经营许可证编号 琼 ICP 020077