现记录过程如下:
1、基本信息
源库 10.180.67.187 数据库版本 10.2.0.5 DB_NAME name 数据文件存储
目标库 10.180.67.199 数据库版本 10.2.0.5 DB_NAME name 裸设备存储
2、拟采用技术
用RMAN异机恢复 NFS 共享目标库备份卷
3、源数据库文件信息
数据文件
FILE_ID TABLESPACE_NAME FILE_NAME G
---------- ------------------------------ -------------------------------------------------- ----------
1 SYSTEM /u01/app/oradata/yxpwgis/system01.dbf 1
2 UNDOTBS1 /u01/app/oradata/yxpwgis/undotbs01.dbf 31.9999847
3 SYSAUX /u01/app/oradata/yxpwgis/sysaux01.dbf 4
4 USERS /u01/app/oradata/yxpwgis/users01.dbf 10
5 WEBGIS /gis_data/WEBGIS.dbf 20
6 SZPROD /gis_data/szprod01.dbf 31.9999847
7 WEBGIS_IDX /gis_data/webgis_idx01.dbf 8
8 SZPROD_IDX /gis_data/szprod_idx01.dbf 10
9 SZPROD /gis_data/szprod02.dbf 30
10 SZPROD /gis_data/szprod03.dbf 30
11 SZPROD /gis_data/szprod04.dbf 30
12 SZPROD /gis_data/szprod05.dbf 29.296875
13 SZPROD /gis_data/szprod06.dbf 29.296875
14 SZPROD /gis_data/szprod07.dbf 30
15 SZPROD /gis_data/szprod08.dbf 30
16 SZPROD /gis_data/szprod09.dbf 30
17 SZPROD /gis_data/szprod10.dbf 30
18 SZPROD /gis_data2/szprod11.dbf 30
19 SZPROD /gis_data2/szprod12.dbf 30
20 UNDOTBS1 /gis_data2/undotbs02.dbf 30
21 SZPROD_IDX /gis_data/szprod_idx02.dbf 2
21 rows selected.
临时文件
FILE# NAME M
---------- -------------------------------------------------- ----------
1 /u01/app/oradata/yxpwgis/temp01.dbf 10114
2 /u01/app/oradata/yxpwgis/temp02.dbf 5120
在线日志文件
SQL> select group#,members,bytes/1024/1024 m from v$log;
GROUP# MEMBERS M
---------- ---------- ----------
1 1 512
2 1 512
3 1 512
4 1 500
5 1 500
控制文件
SQL> show parameter control;
NAME TYPE VALUE
------------------------------------ -------------------------------- ------------------------------
control_file_record_keep_time integer 40
control_files string /u01/app/oradata/yxpwgis/contr
ol01.ctl, /u01/app/oradata/yxp
wgis/control02.ctl, /u01/app/o
radata/yxpwgis/control03.ctl
select file# , checkpoint_change# from v$datafile;
select file#,checkpoint_change# from v$datafile_header;
4、在目标库上创建裸设备
a.删除旧的lv(因为给的系统里面以前装过ORACLE,有lv存在,为了规范先删掉旧的)
rmlv -f 'lv_system01';
rmlv -f 'lv_szprod_dat01';
rmlv -f 'lv_szprod_dat02';
rmlv -f 'lv_szprod_dat03';
rmlv -f 'lv_szprod_dat04';
rmlv -f 'lv_szprod_dat05';
rmlv -f 'lv_szprod_dat06';
rmlv -f 'lv_szprod_dat07';
rmlv -f 'lv_szprod_dat08';
rmlv -f 'lv_szprod_dat09';
rmlv -f 'lv_szprod_dat10';
rmlv -f 'lv_szprod_idx01';
rmlv -f 'lv_szprod_idx02';
rmlv -f 'lv_szprod_idx03';
rmlv -f 'lv_undotbs1_01';
rmlv -f 'lv_undotbs1_02';
rmlv -f 'lv_user_01';
rmlv -f 'lv_webgis_dat01';
rmlv -f 'lv_webgis_dat02';
rmlv -f 'lv_webgis_dat03';
rmlv -f 'lv_webgis_dat04';
rmlv -f 'lv_webgis_dat05';
rmlv -f 'lv_webgis_dat06';
rmlv -f 'lv_webgis_idx01';
rmlv -f 'lv_webgis_idx02';
rmlv -f 'lv_spfile';
rmlv -f 'lv_temp02';
rmlv -f 'lv_pwdfile'
b. 创建lv
mklv -y lv_system01 -T O -t raw -w n -r n vg_ssd 128 hdisk14
mklv -y lv_undotbs01 -T O -t raw -w n -r n vg_ssd 128 hdisk15
mklv -y lv_sysaux01 -T O -t raw -w n -r n vg_ssd 128 hdisk16
mklv -y lv_users01 -T O -t raw -w n -r n vg_ssd 128 hdisk17
mklv -y lv_webgis -T O -t raw -w n -r n vg_ssd 128 hdisk18
mklv -y lv_szprod01 -T O -t raw -w n -r n vg_ssd 128 hdisk19
mklv -y lv_webgis_idx01 -T O -t raw -w n -r n vg_ssd 128 hdisk20
mklv -y lv_szprod_idx01 -T O -t raw -w n -r n vg_ssd 128 hdisk21
mklv -y lv_szprod02 -T O -t raw -w n -r n vg_ssd 128 hdisk22
mklv -y lv_szprod03 -T O -t raw -w n -r n vg_ssd 128 hdisk23
mklv -y lv_szprod04 -T O -t raw -w n -r n vg_ssd 128 hdisk24
mklv -y lv_szprod05 -T O -t raw -w n -r n vg_ssd 128 hdisk14
mklv -y lv_szprod06 -T O -t raw -w n -r n vg_ssd 128 hdisk15
mklv -y lv_szprod07 -T O -t raw -w n -r n vg_ssd 128 hdisk16
mklv -y lv_szprod08 -T O -t raw -w n -r n vg_ssd 128 hdisk17
mklv -y lv_szprod09 -T O -t raw -w n -r n vg_ssd 128 hdisk18
mklv -y lv_szprod10 -T O -t raw -w n -r n vg_ssd 128 hdisk19
mklv -y lv_szprod11 -T O -t raw -w n -r n vg_ssd 128 hdisk20
mklv -y lv_szprod12 -T O -t raw -w n -r n vg_ssd 128 hdisk21
mklv -y lv_undotbs02 -T O -t raw -w n -r n vg_ssd 128 hdisk22
mklv -y lv_szprod_idx02 -T O -t raw -w n -r n vg_ssd 128 hdisk23
mklv -y lv_control01 -T O -t raw -w n -r n vg_ssd 1 hdisk24
mklv -y lv_control02 -T O -t raw -w n -r n vg_ssd 1 hdisk14
mklv -y lv_control03 -T O -t raw -w n -r n vg_ssd 1 hdisk15
mklv -y lv_temp01 -T O -t raw -w n -r n vg_ssd 40 hdisk16
mklv -y lv_temp02 -T O -t raw -w n -r n vg_ssd 40 hdisk17
mklv -y lv_redo01 -T O -t raw -w n -r n vg_ssd 2 hdisk18
mklv -y lv_redo02 -T O -t raw -w n -r n vg_ssd 2 hdisk19
mklv -y lv_redo03 -T O -t raw -w n -r n vg_ssd 2 hdisk20
mklv -y lv_redo04 -T O -t raw -w n -r n vg_ssd 2 hdisk21
mklv -y lv_redo05 -T O -t raw -w n -r n vg_ssd 2 hdisk22
c. 修改裸设备的用户和组
chown gisora:oinstall /dev/lv*
(这里只是为了好写,具体操作中要仔细查看,不能用*,会误伤其它用户或组的rlv的)
5、备份源库
生成pfile
create pfile from spfile;
拷贝pfile到目标库
可以用RMAN做冷备也可以做热备,这里由于要切换系统,要关库,所以用冷备,即一致性备份,可以不用备份归档日志
在源库备份是用NFS共享目标库,直接备份到目标库,就少了拷贝备份文件的步骤,减少时间
但是需要在源库上执行下面语句:
alter system set event='10298 trace name context forever,level 32' SCOPE=SPFILE;(有人说这是ORACLE的bug,要通过这个语句修改参数绕过去)
run {
shutdown immediate;
startup mount;
allocate channel c1 type disk;
allocate channel c2 type disk;
allocate channel c3 type disk;
allocate channel c4 type disk;
backup as compressed backupset database format '/backup/new_backup/level0_%d_%s_%p_%u.bak';
backup current controlfile format '/backup/new_backup/control_%d_%s_%p_%u.bak' ;
release channel c1;
release channel c2;
release channel c3;
release channel c4;
alter database open;
}
5、转储pfile
scp
6、修改pfile中各个参数的路径
修改成目标库用的路径
7、用pfile启动数据库到nomount状态
startup nomount pfile=/$ORACLE_HOME/dbs/initname.ora
8、转储控制文件 开库到mount状态
run {
restore controlfile from '/backup/....';
sql 'alter database mount';
}
9、重新命名数据文件,转储数据库
run{
set newname for datafile 1 to '/dev/rlv_system01';
set newname for datafile 2 to '/dev/rlv_undotbs01';
set newname for datafile 3 to '/dev/rlv_sysaux01';
set newname for datafile 4 to '/dev/rlv_users01';
set newname for datafile 5 to '/dev/rlv_webgis';
set newname for datafile 6 to '/dev/rlv_szprod01';
set newname for datafile 7 to '/dev/rlv_webgis_idx01';
set newname for datafile 8 to '/dev/rlv_szprod_idx01';
set newname for datafile 9 to '/dev/rlv_szprod02';
set newname for datafile 10 to '/dev/rlv_szprod03';
set newname for datafile 11 to '/dev/rlv_szprod04';
set newname for datafile 12 to '/dev/rlv_szprod05';
set newname for datafile 13 to '/dev/rlv_szprod06';
set newname for datafile 14 to '/dev/rlv_szprod07';
set newname for datafile 15 to '/dev/rlv_szprod08';
set newname for datafile 16 to '/dev/rlv_szprod09';
set newname for datafile 17 to '/dev/rlv_szprod10';
set newname for datafile 18 to '/dev/rlv_szprod11';
set newname for datafile 19 to '/dev/rlv_szprod12';
set newname for datafile 20 to '/dev/rlv_undotbs02';
set newname for datafile 21 to '/dev/rlv_szprod_idx02';
allocate channel c1 type disk;
allocate channel c2 type disk;
allocate channel c3 type disk;
allocate channel c4 type disk;
restore database;
switch datafile all;
release channel c1;
release channel c2;
release channel c3;
release channel c4;
}
这里不能先恢复,因为在线日志不一样
10、rename在线日志
sqlplus '/as sysdba'
alter database rename file '/gis_data2/redo01.log' to '/dev/lv_redo01';
alter database rename file '/gis_data2/redo02.log' to '/dev/lv_redo02';
alter database rename file '/gis_data2/redo03.log' to '/dev/lv_redo03';
alter database rename file '/gis_data2/redo04.log' to '/dev/lv_redo04';
alter database rename file '/gis_data2/redo05.log' to '/dev/lv_redo05';
11、打开数据库
由于是一致性备份,不需要恢复,直接开库,但是确实在线日志文件,要resetlogs
alter database open resetlogs;
12、调整temp和undo表空间
show parameter undo;
selecttablespace_name from dba_tablespaces where contents='UNDO';
undo不用调整
select tablespace_name from dba_tablespaces where contents='TEMPORARY';
由于临时表空间中临时文件还有以前文件系统的文件,这里识别不到,可以通过rename临时文件,
也可以重建临时表空间,这里选择重建临时表空间
create temporary tablespace TEMP2 tempfile '/dev/rlv_temp01' size 10000M autoextend off;
alter database default temporary tablespace TEMP2;
drop tablespace TEMP including contents and datafiles;
drop tablespace TEMP1 including contents and datafiles;
但是由于一些用户指定了临时表空间为temp1,这里还要再次指定这些用户默认的临时表空间
alter user user01 temporary tablespace temp2;
13 、最后就是重新配置监听 netca
至此,此次数据库迁移工作全部完成。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29598413/viewspace-1299363/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/29598413/viewspace-1299363/