![]() |
|
||||||||||||||
| | 网站首页 | 数据库教程 | web编程 | 服务器 | 程序设计 | | ||
|
||
|
|||||
| 在ORACLE中移动数据库文件 | |||||
作者:佚名 文章来源:不详 点击数: 更新时间:2007-6-30 ![]() |
|||||
|
---- 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;
|
|||||
| 文章录入:admin 责任编辑:admin | |||||
| 【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口】 | |||||
| 网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!) |
| | 设为首页 | 加入收藏 | 联系站长 | 友情链接 | 版权申明 | 网站公告 | 网站地图 | 管理登录 | | |||
|