方式一、在12.2之前,迁移存储基本都是将新的存储加入到磁盘中。然后将磁盘中老的存储剔除。这种方式就不介绍了
方式二、在12.2之后,datafile文件可以在线move操作。迁移存储直接使用move数据文件
SQL> alter database move datafile '/u01/app/oracle/oradata/orcl/users01.dbf' to '/u01/app/oracle/users01.dbf';
Database altered.
SQL> alter database move datafile '/u01/app/oracle/users01.dbf' to '/u01/app/oracle/oradata/orcl/users01.dbf';
Database altered.
SQL>
需要迁移的内容:
数据库内容:
1.数据文件+临时文件
2.日志文件
3.控制文件 -----这个需要关闭数据库
4.spfile文件
集群信息:
1.ocr信息:使用添加和删除ocr信息,操作完成
# ocrconfig -add +NIMBLE ---添加新的ocr信息位置
# ocrconfig -delete +DATA ---删除老的ocr信息问题
# crconfig -backuploc +NIMBLE ----修改ocr的备份位置
# ocrconfig -manualbackup ---手动备份ocr信息
# ocrconfig -showbackup ---查看ocr之前的备份位置
[grid@test1 ~]$ more /etc/oracle/ocr.loc
#Device/file +DATA/test-cluster/OCRFILE/registry.255.948637723 getting replaced by device +NIMBLE/test-cluster/OCRFILE/registry.255.955398311
ocrconfig_loc=+NIMBLE/sapir-cluster/OCRFILE/registry.255.955398311
local_only=false
[grid@test1 ~]$
2.olr信息:
# ocrconfig -local -manualbackup ---备份本地olr信息。(集群信息修改之后,需要手动备份)
3.votedisk信息:
[grid@test1 ~]$ crsctl query css votedisk
## STATE File Universal Id File Name Disk group
-- ----- ----------------- --------- ---------
1. ONLINE abf7dc7bb0904f34bf0950ebe32deb54 (AFD:DATA01) [DATA]
Located 1 voting disk(s).
[grid@test1 ~]$
$ crsctl replace votedisk +NIMBLE
3.ASM操作:
SQL> create pfile='/home/grid/asm.ora.bak' from spfile;
SQL> create spfile='+NIMBLE' from pfile='/home/grid/asm.ora.bak';
[grid@test1 ~]$ gpnptool get -o-
MGMTDB数据库,重建即可,参考mos How to Move/Recreate GI Management Repository to Different Shared Storage (Diskgroup, CFS or NFS etc) (文档 ID 1589394.1)
这种方式迁移,需要停一次数据库。asm不需要做两次reblance。两种方式,哪中更节省时间,更方便,没有仔细对比过。