启动时需要注意先启动后端数据库,待所有数据库启动并验证可以登录后,再启动集群。
启动数据库
启动所有服务器上的mysql实例,启动之前 ps -ef|grep mysql 确认 mysql 实例没有启动。如下是启动命令:
cd /app/dbcluster/sgrdb/mysql
./bin/mysqld_safe --defaults-file=my[port].cnf --user=mysql &
ps -ef|grep mysql 确保所有数据库已经启动后,验证所有数据库可以登录:
cd /app/dbcluster/sgrdb/mysql
./bin/mysql -u[用户名] -p[密码] -h[ip地址] -P[端口] -e “select 1”
返回结果为 1 。
启动GreatDB
在一台服务器执行:
pcs resource enable vip dbscale
执行 pcs status 确认 vip 、 dbscale 均为 enable 状态。
(2)停止
停止GreatDB
停止时需要注意先停止GreatDB,再停止后端数据库。在一台服务器执行:
pcs resource disable vip dbscale
执行 pcs status 确认 vip 、 dbscale 均为 disable 状态。
停止后端数据库
依次停止所有mysql数据库:
cd /app/dbcluster/sgrdb/mysql
./bin/sgrdb -u[user] -p[password] -h[vip] -P[port] shutdown
最后登录每台服务器执行 ps -ef|grep mysql 确保 mysql 进程全部停止。
"1.?停止dbservice资源组(选择任意一个pacemaker节点执行)#?pcs?resource?disable?dbservice
2.?关闭dbscale
停止dbscale(每个dbscale节点都执行)?执行如下命令:
#?sgrdb?-uroot?-p密码?-h127.0.0.1?-P19100?-e?“DBSCALE?FLUSH?CONFIG?TO?FILE”
#?cd?/app/dbcluster/sgrdb/dbscale?#?sh?daemon/stopper.sh
确认dbscale进程退出
#?ps?-ef?|grep?dbscale
保存最新dbscale.conf配置
#?export?LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/app/dbcluster/sgrdb/dbscale/libs?#?./fetch_config_file_from_zoo
#?mv?dbscale.conf?dbscale-bak.conf
#?mv?generated_dbscale.conf?dbscale.conf
3.?清理zookeeper上的配置信息(任选一个dbscale节点执行)
在任意一个dbscale节点上执行如下命令
#?cd?/app/dbcluster/sgrdb/dbscale
#?export?LD_LIBRARY_PATH=$LD_LIBRARY_PATH:`pwd`/libs?#?./clean_zookeeper
4.?编辑相关配置文件
1)?编辑/etc/ha.d/ldirectord.cf文件
修改其中的集群对外端口(每个pacemaker节点都要执行)
例如,将原来的端口19100更改为集群新端口为20000,每个dbscale的19100端口更改为新的20000端口
virtual=172.16.90.100:20000?real=172.16.90.102:20000?gate?real=172.16.90.103:20000?gate
确认无误后,将更改好的/etc/ha.d/ldirectord.cf拷贝到其他pacemaker节点
2)?编辑dbscale.conf文件(每个dbscale节点都要执行)?#?cd?/app/dbcluster/sgrdb/dbscale
#?vi?dbscale.conf
i.?更改端口
[driver?mysql]?port?=?19100
type?=?MySQLDriver?bind-address?=?0.0.0.0
将port?=?19100更改为port?=?20000
确认检查,更改符合预期:
#?grep?""^port""?dbscale.conf
ii.?将config-version?配置项这一行删除例如:
删除行:
config-version?=?49
5.?启动dbscale(所有dbscale节点执行)
执行如下命令:
#?cd?/app/dbcluster/sgrdb/dbscale?#?python?daemon/dbscale_daemon.py?确认lvs_dest.sh脚本位置
#?cd?/app/dbcluster/sgrdb/lvs?#?sh?lvs_dest.sh?stop
#?sh?lvs_dest.sh?start
6.?启动dbservice资源组并查看状态(选择任意一个pacemaker节点执行)
#?pcs?resource?enable?dbservice?#?pcs?status
7.?通过ipvsadm?-l命令查看信息是否正常
本命令在vip所在节点上执行?如果更改了集群端口,信息如下:
#?ipvsadm?-l
IP?Virtual?Server?version?1.2.1?(size=4096)?Prot?LocalAddress:Port?Scheduler?Flags
->?RemoteAddress:Port?TCP?test1:20000?rr
更,集群端口
->?test1:20000
更,dbscale端口
->?test2:20000
更,dbscale端口
->?test3:20000
更,dbscale端口
"
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)