最近几周一直在客户现场测试IBM和VISION两家公司的数据迁移、灾备软件,两个软件都是基于LV的数据块级的。
其中重要的一项是测试数据库的迁移效果。
今天在测试过程中需要将已安装的数据库软件和数据文件的储存路径进行更改。
将oracle数据库软件和数据文件移动到新的路径后需要将初始化文件和控制文件进行修改。
在没有移动前先创建数据库的pfile,把controlfile备份为trace文件,用于controlfile文件的重建。
步骤如下:
1、创建pfile:
create pfile from spfile;
2、将controlfile备份为trace文件:
alter database backup controlfile to trace as 'ctl.sql'
3、修改oracle用户的.profile,将其中的PATH环境变量设置为新的路径。
4、以root用户,将新路径下oracle文件夹的权限修改为oracle用户所有
chown -R oracle:dba oracle
chmod -R 755 oracle
5、修改pfile文件将其中background_dump_dest、core_dump_dest、user_dump_dest、control_files的路径修改为新路径。
6、使用新的pfile启动实例,如果数据库实例可以正常启动,则说明pfile文件修改成功。
然后重建spfile:
create spfile from pfile;
7、修改备份控制文件的trace文件,将其中的路径修改为新路径,修改如下:
STARTUP NOMOUNT
CREATE CONTROLFILE REUSE DATABASE "TEST" NORESETLOGS NOARCHIVELOG
MAXLOGFILES 50
MAXLOGMEMBERS 5
MAXDATAFILES 100
MAXINSTANCES 1
MAXLOGHISTORY 226
LOGFILE
GROUP 1 '/cadrasu01/app/oracle/oradata/TEST/redo01.log' SIZE 100M,
GROUP 2 '/cadrasu01/app/oracle/oradata/TEST/redo02.log' SIZE 100M,
GROUP 3 '/cadrasu01/app/oracle/oradata/TEST/redo03.log' SIZE 100M
DATAFILE
'/cadrasu01/app/oracle/oradata/TEST/system01.dbf',
'/cadrasu01/app/oracle/oradata/TEST/undotbs01.dbf',
'/cadrasu01/app/oracle/oradata/TEST/cwmlite01.dbf',
'/cadrasu01/app/oracle/oradata/TEST/drsys01.dbf',
'/cadrasu01/app/oracle/oradata/TEST/example01.dbf',
'/cadrasu01/app/oracle/oradata/TEST/indx01.dbf',
'/cadrasu01/app/oracle/oradata/TEST/odm01.dbf',
'/cadrasu01/app/oracle/oradata/TEST/tools01.dbf',
'/cadrasu01/app/oracle/oradata/TEST/users01.dbf',
'/cadrasu01/app/oracle/oradata/TEST/xdb01.dbf'
CHARACTER SET ZHS16GBK
;
ALTER DATABASE OPEN;
ALTER TABLESPACE TEMP ADD TEMPFILE '/cadrasu01/app/oracle/oradata/TEST/temp01.dbf' SIZE 42991616 REUSE AUTOEXTEND ON NEXT 655360 MAXSIZE 32767M;
8、删除oradata下的controlfile文件。
9、关闭数据库实例,sqlplus登陆,执行修改好的ctl.sql文件,对控制文件进行重建。
10、数据库正常启动。
至此此次路径修改完成。
阅读(6844) | 评论(0) | 转发(0) |