环境介绍
为共享存储,A主机使用全备份+归档将数据库追到最新,然后将存储挂载到B主机,属于shared everying架构。
近期对某部门的一套数据库进行迁移,迁移方案如下:
在主机A 的存储上面 装好对应的软件以及对应的从备份中恢复数据库。
迁移时将B主机的存储下线,将spile以及最后的归档日志拷贝到A主机进行恢复,然后resetlogs打开数据库即可。
但是 在 进行存储挂接时发现 A主机 oracle UID为 300,而B主机UID 为 301
当把 A主机的存储 挂接到 B主机时,发现 文件 以及目录的 owner均变为300,不先是对应的oracle用户 ,
处理方案 :
1 在B主机中创建新的用户 oracle1 UID为300即可。
2 但是在启动监听过程中,表示不是对应的owner,监听无法启动,试用strace追踪启动监听过程,发现会使用/var/.tmp/oracle 目录创建监听,查看文件对应权限发现 还是全赖的oracle,切换root修改owner
chown oracle1:oinstall /var/.tmp/oracle
修改完成后,监听可以正常启动,
总结:监听启动需要对应的嵌套字文件 ,对应目录 /var/.tmp/oracle,类似集群进程的嵌套字文件。