oracle adg切换

广大2年前技术文章1000



1 主库转备库


注意:原则上至多只能有一个主库,但是备库可以多个,所以需要先进行主库转备库操作。


1.1 查看主库角色切换状态


SYS@proe>select name,database_role,switchover_status from v$database;

NAME                      DATABASE_ROLE    SWITCHOVER_STATUS
------------------------- ---------------- --------------------
PROE                      PRIMARY          TO STANDBY


1.2 正常主库切换备库命令


SYS@proe>alter database commit to switchover to physical standby;

Database altered.


1.2 执行切换后的操作


SYS@proe>shutdown abort
ORACLE instance shut down.
SYS@proe>startup mount;
ORACLE instance started.
# 查看此时角色切换状态
SYS@proe>select name,database_role,switchover_status from v$database;

NAME                      DATABASE_ROLE    SWITCHOVER_STATUS
------------------------- ---------------- --------------------
PROE                      PHYSICAL STANDBY RECOVERY NEEDED
# 查看角色保护模式和级别
SYS@proe> select name,database_role,protection_mode,protection_level from v$database;

NAME                      DATABASE_ROLE    PROTECTION_MODE      PROTECTION_LEVEL
------------------------- ---------------- -------------------- --------------------
PROE                      PHYSICAL STANDBY MAXIMUM AVAILABILITY MAXIMUM AVAILABILITY


1.3 异常切换命令


"TO STANDBY"意味着主库此时可以切换为备库,如果状态为SESSION ACTIVE可以使用以下命令切换。然后执行上述切换后的操作。


SYS@proe>alter database commit to switchover to physical standby with session shutdown;


2 备库转主库


2.1 查看备库角色切换状态


SYS@stddb>select name,database_role,switchover_status from v$database;

NAME      DATABASE_ROLE    SWITCHOVER_STATUS
--------- ---------------- --------------------
PROE      PHYSICAL STANDBY TO PRIMARY


2.2 备库切换主库命令


SYS@stddb>alter database commit to switchover to primary;

Database altered.


2.2 执行切换后的操作


# 查看此时角色切换状态
SYS@stddb>select name,database_role,switchover_status from v$database;

NAME      DATABASE_ROLE    SWITCHOVER_STATUS
--------- ---------------- --------------------
PROE      PRIMARY          NOT ALLOWED
# 查看角色保护模式和级别
SYS@stddb>select name,database_role,protection_mode,protection_level from v$database;

NAME      DATABASE_ROLE    PROTECTION_MODE      PROTECTION_LEVEL
--------- ---------------- -------------------- --------------------
PROE      PRIMARY          MAXIMUM PERFORMANCE  UNPROTECTED
# 备库切换为主库后实例状态
SYS@stddb>select instance_name,status from v$instance;

INSTANCE_NAME    STATUS
---------------- ------------
stddb            MOUNTED
# 将数据库启动到open
SYS@stddb>alter database open;

Database altered.
# 再次查看转换后的角色保护模式及级别,可以看到和原来的主库一致。
SYS@stddb>select database_role,protection_mode,protection_level from v$database;

DATABASE_ROLE    PROTECTION_MODE      PROTECTION_LEVEL
---------------- -------------------- --------------------
PRIMARY          MAXIMUM PERFORMANCE  MAXIMUM PERFORMANCE


3 启动现在备库日志应用服务


原来的主库已经切换为备库,查看此时数据库打开模式


SYS@proe>select name,open_mode from v$database;

NAME                      OPEN_MODE
------------------------- --------------------
PROE                      MOUNTED


数据库启动到open


SYS@proe>alter database open;

Database altered.


启动数据库的日志应用服务


SYS@proe>alter database recover managed standby database using current logfile disconnect;
Database altered.
# 查看数据库打开模式
SYS@proe>select name,open_mode from v$database;

NAME                      OPEN_MODE
------------------------- --------------------
PROE                      READ ONLY WITH APPLY

一次完整的主备切换完成

相关文章

ranger审计Solr部署

安装前准备1.1. 创建用户和用户组groupadd solruseradd -g solr solr1.2. 添加环境变量vi /etc/profile export SOLR_HOME=/opt/...

Keepalived安装部署

Keepalived安装部署

安装keepalivedyum 安装keepalivedyum install keepalivedkeepalived.conf配置文件进行调整,其中state设置主备状态,interface设置对...

开启kerberos配置HiveServer2负载均衡

开启kerberos配置HiveServer2负载均衡

1.HAProxy配置HiveServer2负载均衡1.编辑/etc/haproxy/haproxy.cfg文件,在文件末尾增加如下配置listen stats     bind 0.0.0.0:1...

证书不识别问题处理

证书不识别问题处理

生成证书时客户端进入显示不识别在172.16.121.210生成一个证书后,使用keytool -importkeystore命令将其他节点172.16.121.114的条目进行合并,问题并没有解决,...

kubernetes HPA

kubernetes HPA

Horizontal Pod Autoscaling 可以根据 CPU 利用率自动伸缩一个 ReplicaSet、Deployment 或者中的 Pod 数量cat hpa-deploy.yaml a...

linux中的buffer和cache

linux中的buffer和cache

linux中的buffer和cache一、buffer和cache的来源及应用1、来源Buffer 是缓冲区,而 Cache 是缓存,两者都是数据在内存中的临时存储。那么,这两种“临时存储”有什么区别...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。