原因是备库与主库还未disconnect,主库还有zengine进程,备库就能通过复制端口连接主库。
2、主库kill掉zengine进程后,重装主库报错,提示说数据库已经安装。
[omm@gsdb02 ~]$
[omm@gsdb02 ~]$ zsql / as sysdba -q
connected.
SQL> select name,status,open_status,database_role,database_condition,switchover_status,failover_status from v$database;
NAME STATUS OPEN_STATUS DATABASE_ROLE DATABASE_CONDITION SWITCHOVER_STATUS FAILOVER_STATUS
---------- ----------- ----------------- -------------------- ------------------- -------------------- ------------------
YHGSDB OPEN READ ONLY PHYSICAL_STANDBY NORMAL TO PRIMARY TO PRIMARY
1 rows fetched.
SQL> alter database failover;
GS-00775, Invalid switch request, could not issue failover when not disconnected
SQL>
SQL> exit
[omm@gsdb02 ~]$
[omm@gsdb01 ~]$
[omm@gsdb01 ~]$ ps -ef|grep zengine
omm 20980 1 2 2月28 ? 02:57:08 /u01/gaussdb/app/bin/zengine open -D /u01/gaussdb/data
omm 26216 26082 0 12:02 pts/0 00:00:00 grep --color=auto zengine
[omm@gsdb01 ~]$
[omm@gsdb01 ~]$
[omm@gsdb01 ~]$ kill -9 20980
[omm@gsdb01 ~]$
[omm@gsdb01 ~]$ ps -ef|grep zengine
omm 26224 26082 0 12:02 pts/0 00:00:00 grep --color=auto zengine
[omm@gsdb01 ~]$
[omm@gsdb01 ~]$
[omm@gsdb02 ~]$ zsql / as sysdba -q
connected.
SQL> select name,status,open_status,database_role,database_condition,switchover_status,failover_status from v$database;
NAME STATUS OPEN_STATUS DATABASE_ROLE DATABASE_CONDITION SWITCHOVER_STATUS FAILOVER_STATUS
---------- ----------- ----------------- -------------------- ------------------- -------------------- ------------------
YHGSDB OPEN READ ONLY PHYSICAL_STANDBY DISCONNECTED TO PRIMARY TO PRIMARY
1 rows fetched.
SQL>
SQL> alter database failover;
Succeed.
SQL> select name,status,open_status,database_role,database_condition,switchover_status,failover_status from v$database;
NAME STATUS OPEN_STATUS DATABASE_ROLE DATABASE_CONDITION SWITCHOVER_STATUS FAILOVER_STATUS
---------- ----------- ----------------- -------------------- ------------------- -------------------- ------------------
YHGSDB OPEN READ WRITE PRIMARY NORMAL NOT ALLOWED NOT ALLOWED
1 rows fetched.
SQL> exit
[omm@gsdb02 ~]$
[root@gsdb01 gaussdb]#
[root@gsdb01 gaussdb]# python install.py -U omm:dbgrp -R /u01/gaussdb/app -D /u01/gaussdb/data -C LSNR_ADDR=127.0.0.1,192.168.179.121 -C LSNR_PORT=1888 -O
Checking runner.
Checking parameters.
End check parameters.
Checking user.
End check user.
Checking old install.
Error: Database has been installed already.
Please refer to install log "/home/omm/zengineinstall.log" for more detailed information.
[root@gsdb01 gaussdb]#
[root@gsdb01 gaussdb]#
[root@gsdb01 gaussdb]#
[root@gsdb01 gaussdb]# userdel -r omm
[root@gsdb01 gaussdb]# useradd -g dbgrp -d /home/omm -m -s /bin/bash omm
[root@gsdb01 gaussdb]#
[root@gsdb01 gaussdb]# python install.py -U omm:dbgrp -R /u01/gaussdb/app -D /u01/gaussdb/data -C LSNR_ADDR=127.0.0.1,192.168.179.121 -C LSNR_PORT=1888 -O
Checking runner.
Checking parameters.
End check parameters.
Checking user.
End check user.
Checking old install.
End check old install.
Checking kernel parameters.
Checking directory.
Checking integrality of run file...
Decompressing run file.
Setting user env.
Checking data dir and config file
Initialize db instance.
Changing file permission due to security audit.
Install successfully, for more detail information see /home/omm/zengineinstall.log.
[root@gsdb01 gaussdb]#
[root@gsdb01 gaussdb]# su - omm
上一次登录:四 3月 5 12:19:35 CST 2020
[omm@gsdb01 ~]$ cd /u01/gaussdb/data/cfg/
[omm@gsdb01 cfg]$ vi zengine.ini
[omm@gsdb01 cfg]$
[omm@gsdb01 cfg]$
[omm@gsdb01 cfg]$ ps -ef|grep zen
omm 27057 26976 0 12:23 pts/0 00:00:00 grep --color=auto zen
[omm@gsdb01 cfg]$
[omm@gsdb01 cfg]$ cd /u01/gaussdb/app/bin/
[omm@gsdb01 bin]$ python zctl.py -t start -m nomount
Successfully started instance.
[omm@gsdb01 bin]$
[omm@gsdb01 bin]$ zsql / as sysdba -q
connected.
SQL> build database;
Succeed.
SQL>
SQL> select name,status,open_status,database_role,database_condition,switchover_status,failover_status from v$database;
NAME STATUS OPEN_STATUS DATABASE_ROLE DATABASE_CONDITION SWITCHOVER_STATUS FAILOVER_STATUS
---------- ----------- ----------------- -------------------- ------------------- -------------------- ------------------
YHGSDB OPEN READ ONLY PHYSICAL_STANDBY NORMAL TO PRIMARY TO PRIMARY
1 rows fetched.
SQL> exit
[omm@gsdb01 bin]$
[omm@gsdb02 ~]$ zsql / as sysdba -q
connected.
SQL> select name,status,open_status,database_role,database_condition,switchover_status,failover_status from v$database;
NAME STATUS OPEN_STATUS DATABASE_ROLE DATABASE_CONDITION SWITCHOVER_STATUS FAILOVER_STATUS
---------- ----------- ----------------- -------------------- ------------------- -------------------- ------------------
YHGSDB OPEN READ WRITE PRIMARY NORMAL NOT ALLOWED NOT ALLOWED
1 rows fetched.
SQL> exit
[omm@gsdb02 ~]$
[omm@gsdb01 bin]$ zsql / as sysdba -q
connected.
SQL>
SQL> alter database switchover;
Succeed.
SQL> select name,status,open_status,database_role,database_condition,switchover_status,failover_status from v$database;
NAME STATUS OPEN_STATUS DATABASE_ROLE DATABASE_CONDITION SWITCHOVER_STATUS FAILOVER_STATUS
---------- ----------- ----------------- -------------------- ------------------- -------------------- ------------------
YHGSDB OPEN READ WRITE PRIMARY NORMAL NOT ALLOWED NOT ALLOWED
1 rows fetched.
SQL>
[omm@gsdb02 run]$ zsql / as sysdba -q
connected.
SQL> select name,status,open_status,database_role,database_condition,switchover_status,failover_status from v$database;
NAME STATUS OPEN_STATUS DATABASE_ROLE DATABASE_CONDITION SWITCHOVER_STATUS FAILOVER_STATUS
---------- ----------- ----------------- -------------------- ------------------- -------------------- ------------------
YHGSDB OPEN READ ONLY PHYSICAL_STANDBY NORMAL TO PRIMARY TO PRIMARY
1 rows fetched.
SQL>
———— / END / ————

点击下方“阅读原文”查看更多精彩内容☺
本文分享自微信公众号 - 墨天轮(enmocs)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。