
| 存储迁移方案 |
| 目前数据库采用10gRAC,采用裸设备存储数据,要求将目前的rac数据从现有存储割接到新存储,为保证业务的高度可持续性,要求业务终止时间要尽可能短。 方法: 采用建立临时库将数据文件通过rman copy方式恢复到新存储设备上,运用归档日志恢复的方式进行迁移。 具体实施过程如下(存储已经挂接新存储VG配置到当前HACMP,lv已经一一对应划分)。 1.在其中一号节点上建立TEST实例,大致需要2G左右的内存,该实例的主要任务是为了生产环境的数据文件的迁移,减少宕机时间。(在线操作) 注:TEST实例的参数文件为生产环境中创建出: create pfile=’/tmp/init.ora from spfile 控制文件也是从生产环境备份出来: alter database backup controlfile to ........................; 修改参数文件的内容。创建相应的dump目录,将数据库启动到mount状态: 包括控制文件的路径等等。 注意这一步对于参数文件中的路径应当仔细修改,包括集群参数,dump文件路径,控制文件路径,数据库文件名,实例 undo等。 2.在生产环境一号节点利用rman copy将数据文件拷贝到新存储指定位置,完成数据文件从原存储到新存储的迁移。(在线操作) run { copy datafile ........................ to ..................; }; 3.在TEST数据库中mount状态下,修改数据文件的位置: alter database rename file ......... to .........; 4.所有数据文件rename完毕后对数据库执行recover run { set until sequence X thread 1; set until sequence X thread 2; recover database; } 备注:(以上过程均需在线操作,但不涉及对生产环境宕机,数据库正常应用,数据文件在迁移过程中可能会影响生产系统性能,视情况而定,如果对性能产生影响,可对copy进行限速) 5.新老库的切换,将生产库宕机,通过dd将spfile,控制文件,redo拷贝到指定位置。 数据库启动到nomount状态,修改参数文件中控制文件的新位置: alter system set control_files=’…………’,’………………….’scope=spfile; 修改本地$ORACLE_HOME/dbs/下的参数文件位置并重新启动数据库 重新修改控制文件,rename redo文件,temp文件等。 recover 数据库。 打开数据库。 备注:(该过程是新老存储的割接关键,需将生产环境宕机,如果割接出现问题, 6.OCR和VOTE盘迁移: 双节点停止crs crsctl stop crs 对ocr信息进行export备份: # ocrconfig -export /XXX/xxx.dmp 修改/etc/oracle/ocr.loc到新目录 将备份信息import到新的设备上 ocrconfig -import /XXX/xxx.dmp vote盘迁移: 增加新磁盘上的vot盘到CRS中 # crsctl add css votedisk /dev/xxx–force(新增加vote盘) 确认是否成功: # crsctl query css votedisk 删除老VOT盘 # crsctl delete css votedisk /dev/xxxxxx -force(原vote盘) 重新启动crs crsctl start crs |
| 编辑于联动北方技术论坛 |
