累瘫这些程序员,网管员,工程师们,百度搜索满天飞,CSDN大师多,年纪大的人员手哆嗦。各种不悦,呐喊,抽烟,焦虑,福报九九六

上集我们讲了roseHA和 oracle终于调成功了,今天一不小心又出问题了,演砸了,重新找原因啊,是因为浪潮安装他们的GS系统,导入了数据库,在rose下面重新生成一个存储路径CWdata, 而rose工程师依据他们的经验仅仅建立共享了一个orcldata文件夹,这样,数据在主数据库里面运行良好,一切换或者同步就 嗝屁了, 备用数据库里面没有CWdata这个共享目录,这样就来回一同步,就都不能登录提示如下



找出问题根源,但是前期的努力和付出就被这个折腾,就一下子恢复不了了,好几天的工作内容没了,可怜可气可怒吼不,很奇怪,浪潮GS不知道为什么修改了数据库密码,但这个好像不是引起这些问题的原因,rose的工程师说数据库密码随便切换的修改,不影响,这时候大家交流的还能心平气和。
从rose的主数据库切换到备用数据库,还总是报错,报哪个错误呢,如下

ORA-01033 ORACLE initialzation of shutdown in progress
ORACLE初始化正在进行中
第一时间想服务器重新启动了,Oracle数据库的相关服务没有启动的原因、查看服务启动的状态。第二想法就是查看的程序配置文件是否被修改过、也没有异常;第三个就是用PL/SQL连接Oracle数据库,输入登录名和密码后

第一种解决方法:
第一步,运行cmd
第一步、sqlplus /NOLOG

第二步、SQL>connect sys/change_on_install as sysdba
提示:已成功
第三步、SQL>shutdown normal
提示:数据库已经关闭 已经卸载数据库 ORACLE 例程已经关闭
第四步、SQL>startup mount
第五步、SQL>alter database open;
提示:(在操作的时候会遇到下边着中错误)
第1 行出现错误: ORA-01157: 无法标识/锁定数据文件6 - 请参阅DBWR 跟踪文件
ORA-01110: 数据文件6: ''''C:\oracle\oradata\oradb\FYGL.ORA''
这个提示文件部分根据每个人不同情况有点差别。
我们实际报错的是5
继续输入
第六步、SQL>alter database datafile 6 offline drop;
第七步、重复使用第五第六步,直到出现“数据库已更改”的提示,然后如下图,

继续输入shutdown normal,startup mount就OK啦
测试了一遍,发现还是没有解决我这个问题;
第二种方法:把Oracle的相关服务都停止后、在重新启动、发现可以正常登录。
-----------------------------
上述百度CSDN之后,发现备用数据库可以测试通过了。

但是出现一个更严重的问题, 切换同步后,原来主数据库里面文件都同步没有了,什么也找不到了, 浪潮GS应用服务器上登录后发现以前建立并使用的数据库实例找不到了,报错误如下

差点大江东去 东逝水,继续百度CSDN 还是有惊喜呢找到了对策,居然把错误给修复了,就是一开始的那个命令导致的这个报错。
第六步、SQL>alter database datafile 5 offline drop;

和这个提示对应起来的

ORA-00376:此时无法读取文件5
ORA-01110:数据文件5: 'E:(CWDATA\CWBASE001.DBF'
删或drop脱机了一些数据文件,现在找不到数据文件.
1.检查数据文件状态
SQL> select file#,name,status from v$datafile;
FILE# NAME STATUS
---------- -------------------------------------------------------------------------------- -------
1 D:\APP\WJ\ORADATA\ORCL11G\SYSTEM01.DBF SYSTEM
2 D:\APP\WJ\ORADATA\ORCL11G\SYSAUX01.DBF ONLINE
3 D:\APP\WJ\ORADATA\ORCL11G\UNDOTBS01.DBF ONLINE
4 D:\APP\WJ\ORADATA\ORCL11G\USERS01.DBF OFFLINE
5 D:\APP\WJ\ORADATA\ORCL11G\EXAMPLE01.DBF ONLINE
12 D:\APP\WJ\ORADATA\ORCL11G\USERS02.DBF RECOVER
发现数据文件4脱机,数据文件12是recover状态
2.将数据文件4联机
SQL> alter database datafile 4 online;
Database altered
3.用RMAN恢复数据文件12
RMAN> recover datafile 12;
正在开始介质的恢复
线程 1 序列 4 的归档日志已作为文件 D:\WJARC00004_0853710748.001 存在于磁盘上
线程 1 序列 5 的归档日志已作为文件 D:\WJARC00005_0853710748.001 存在于磁盘上
线程 1 序列 6 的归档日志已作为文件 D:\WJARC00006_0853710748.001 存在于磁盘上
......................
介质恢复完成, 用时: 00:00:04
完成 recover 于 21-8月 -14
4.再次检查数据文件状态
SQL> select file#,name,status from v$datafile;
FILE# NAME STATUS
---------- -------------------------------------------------------------------------------- -------
1 D:\APP\WJ\ORADATA\ORCL11G\SYSTEM01.DBF SYSTEM
2 D:\APP\WJ\ORADATA\ORCL11G\SYSAUX01.DBF ONLINE
3 D:\APP\WJ\ORADATA\ORCL11G\UNDOTBS01.DBF ONLINE
4 D:\APP\WJ\ORADATA\ORCL11G\USERS01.DBF ONLINE
5 D:\APP\WJ\ORADATA\ORCL11G\EXAMPLE01.DBF ONLINE
12 D:\APP\WJ\ORADATA\ORCL11G\USERS02.DBF OFFLINE
发现数据文件12脱机
把数据文件12联机,再检查数据文件12状态
SQL> alter database datafile 12 online;
Database altered
SQL> select file#,name,status from v$datafile where file#=12;
FILE# NAME STATUS
---------- -------------------------------------------------------------------------------- -------
12 D:\APP\WJ\ORADATA\ORCL11G\USERS02.DBF ONLINE
至此问题解决.
总结一下:
这个故障的处理非常简单,主要是熟悉一下该问题的流程:
1.既然数据文件不能访问,首先要检查数据文件状态以及数据文件是否在磁盘上.
2.如果数据文件只是offline,则只需要把数据文件脱机即可;如果数据文件丢失或RECOVER状态,就要执行恢复,然后再online.
注意:要及时备份数据库
最后大部分问题解决:数据恢复到最好状态,rose有重新建立一个CWDATA数据存储路径,在主备数据库的文件夹下面,具体操作就是rose带出数据,然后在更改查看或更多里面可以找到选择更多的文件同步路径

然后在操作切换主备数据库就可以备份同步成功,最后rose,oracle和GS都完美的互相访问成功,
下一步就是GS和rose的双机热备好像也有很多难度,发现服务项目太多,不知怎么更换的切换为手动,如何关联,
rose和oracle就关联两个文件如下

NT-Oracle OradeSenviceXL
NT-Oracle OrdeOnaDo11g home1T...
资源列表设置一个虚拟IP地址,两个服务就ok,然后把主备数据库这两个服务改为手动,不能是自动,不然不能很好主备数据库之间更换的切换
明天继续聊...................




