当前位置:  数据库>oracle

ORA-16456错误,由于备库未mount而在主库执行切换,解决办法详解

    来源: 互联网  发布时间:2017-06-02

    本文导语: 如果对数据库进行主备库的切换需要的前提条件是: (1)备库必须mount状态下,主库open状态 (2)必须不能在最大保护模式下  我们有时做主备库的切换,结果忘记了把备库处于mount状态而是open状态下; 当在primary执行过切换操...

如果对数据库进行主备库的切换需要的前提条件是:

(1)备库必须mount状态下,主库open状态

(2)必须不能在最大保护模式下 

我们有时做主备库的切换,结果忘记了把备库处于mount状态而是open状态下;

当在primary执行过切换操作之后:

SQL>alterdatabase commit to switchover to physical standby; 

Databasealtered.

现在对primary库进行查看:

00:26:00sys@felix SQL>select switchover_status from v$database; 

SWITCHOVER_STATUS

----------------------------------------

RECOVERY NEEDED 

状态我们发现时recovery needed 

这个时刻,我感觉出事了,该怎么办??

我就在主库执行了如下操作:(以为这样会可以的,但是不行)

00:26:26 sys@felix SQL>alter database commit to switchoverto primary;

alter database commit to switchover to primary

*

ERROR at line 1:

ORA-16456: switchover to standby in progress or completed 

0:26:54 sys@felix SQL>shutdown immediate;

ORA-01092: Oracle instance terminated.Disconnection forced

00:27:17 sys@felix SQL>startup mount;

ORA-24324: service handle not initialized

ORA-01041: internal error. hostdefextension doesn't exist

00:27:25 sys@felix SQL>exit 

然后mount主库:

00:27:30 SQL>startup mount;

ORACLE instance started.

 

Total System Global Area 417546240 bytes

Fixed Size 2228944 bytes

Variable Size 289410352 bytes

Database Buffers 121634816 bytes

Redo Buffers 4272128 bytes

Database mounted. 

在standby库执行:

mount备库:

03:21:36 SQL>shutdown immediate;

Database closed.

Database dismounted.

ORACLE instance shut down.

03:21:48 SQL>startup mount;

ORACLE instance started.

 

Total System Global Area 417546240 bytes

Fixed Size 2228944 bytes

Variable Size 289410352 bytes

Database Buffers 121634816 bytes

Redo Buffers 4272128 bytes

Database mounted.

03:22:02 SQL> 

打开主库: 

00:27:41 SQL>alter database open; 

Database altered. 

把主库的切换状态进行切换过来,再试一下:

00:31:30 SQL>alter database commit to switchover to primary; 

Database altered. 

Ok,成功了,看来往下面走是有希望了 

继续,go!!!!

00:32:08 sys@felix SQL>select statusfrom v$instance; 

STATUS

------------------------

MOUNTED

 

00:32:22 sys@felix SQL>alter database open;

 

Database altered.

 

00:32:32 sys@felix SQL>selectswitchover_status from v$database; 

SWITCHOVER_STATUS

----------------------------------------

TO STANDBY 

终于看到to standby了,心里算是松了一口气!! 

ok,开始真正的主备库的切换:

一定要注意:主库一定要处于open状态,备库一定要处于mount状态

 

0:41:57 sys@felix SQL> alter database commit to switchoverto physical standby 

Database altered.

主库执行成功: 

在备库要进行操作: 

03:46:06 SQL>select switchover_status from v$database; 

SWITCHOVER_STATUS

----------------------------------------

RECOVERY NEEDED

 03:46:46 SQL>alter database recover managed standbydatabase disconnect session;

alter database recovermanaged standby database disconnect session

*

ERROR at line 1:

ORA-00274: illegalrecovery option SESSION 

为什么错???少了一个关键字,from

03:52:23 SQL>alter database recover managed standby database disconnect FROMsession; 

Database altered. 

ORACLE instance shut down.

03:56:01 SQL>startup

ORACLE instance started.

 

Total System Global Area 417546240 bytes

Fixed Size 2228944 bytes

Variable Size 301993264 bytes

Database Buffers 109051904 bytes

Redo Buffers 4272128 bytes

Database mounted.

Database opened.

03:56:43 SQL>select switchover_status from v$database;

 

SWITCHOVER_STATUS

----------------------------------------

TO PRIMARY 

03:57:13 SQL>alter database commit to switchover to primary; 

Database altered. 

03:57:42 SQL>shutdown immediate;

ORA-01109: database not open

 

Database dismounted.

ORACLE instance shut down.

03:58:20 SQL> 

Ok,打开主备库: 

Ok,到此主备库已经完整切换了


    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 出现ORA-01401和ORA-01008错误?
  • Eclipse连接Oracle数据库的ORA-00604 ORA-12705错误
  • oracle ORA-01114、ORA-27067错误解决方法
  • Oracle不能删除表 ORA-00604 ORA-01422 错误
  • ORA-12514及ORA-28547错误解决方案
  • plsql连接oracle数据库报ora 12154错误解决方法
  • oracle 11g导出数据时报ORA 1455错误的处理方法
  • Oracle 数据库闪回功能设置出现ORA-19809和ORA-19804错误
  • 为什么我读取数据库时出现:ORA-00600: 内部错误代码,参数: [ttcgcshnd-1], [0], [],错误?
  • ORACLE出现错误1033和错误ORA-00600的解决方法
  • Linux 下数据库oracle出现ORA-27102错误的解决办法
  • PHP连接Oracle错误ORA-24324服务句柄未初始化的解决方法
  • 如何得到带有ora的行的下一行
  • 如何配置 linux 下 oracle 的 listener .ora 和
  • 浅析如何在tnsnames.ora中配置监听
  • Orcle的package中访问其它Schema的表报错ORA-00942解决方法
  • oracle远程连接服务器出现 ORA-12170 TNS:连接超时 解决办法
  • [Oracle] 浅析令人抓狂的ORA-01555问题
  • 解决报错ora-32035的方法分析
  • aq.executeQuery: ORA-00020: maximum number of processes (59) exceeded
  • ORA-00947:Not enough values (没有足够的值)的深入分析
  • solaris10 安装 ora9.2.0.1 时报错
  • 在UNIX下,我的ORA817该怎么样才可以自己启动呀?
  • 安装oracle出现error:ora-01031:insufficient privilleges的解决
  • 谁能帮忙解释一下: ORA-01000 : maximun open cursors exceeded
  • IT科技资讯 iis7站长之家
  • 我在Linux7。3下面装了一个Oracle8i,但是现在启动不起来了,总是报错ORA-01031: insufficient privileges
  • zilong28提问:Tomcat3.2报错内容是Error occurs when connecting DB: ORA-00020: maximum number of processes(59) exceeded 我应该如何解决,先谢了
  • ORA-28002 Oracle 11g存在密码过期问题解决方案
  • Oracle ORA-22908(NULL表值的参考)异常分析与解决方法
  • oracle报错(ORA-00600)问题处理


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,