做网站简单需要什么,哈尔滨网络公司代理商,手机商城模板,wordpress如何换主题1、前提条件
集群的条件下 服务器 172.16.11.195 13316:3306 服务器 172.16.11.196 13317:3306 配置好主数据库和从数据
2、配置主从数据库
2.1使用portainer 来管理容器
建立数据库密码 新增配置文件 # mysql-master.cnf
[mysqld]
server_id110
log-binmysql-binrela…1、前提条件
集群的条件下 服务器 172.16.11.195 13316:3306 服务器 172.16.11.196 13317:3306 配置好主数据库和从数据
2、配置主从数据库
2.1使用portainer 来管理容器
建立数据库密码 新增配置文件 # mysql-master.cnf
[mysqld]
server_id110
log-binmysql-binrelay_logmysql-relay-bin
log_replica_updateson
secure_file_priv/var/lib/mysql
# mysql-slave.cnf
[mysqld]
server_id111
log-binmysql-bin
slave-skip-errors1032read_only1
relay_logmysql-relay-bin
log_replica_updateson
secure_file_priv/var/lib/mysql # eip-mysql-cluster
version: 3.7
services:eip-mysql-master:image: harbor.hkc.cn/jpaas/mysql:8privileged: truehostname: eip-mysql-master container_name: eip_mysql_masternetworks:- golbal-service-jpaas-netports:- 13316:3306volumes:- /etc/localtime:/etc/localtime- mysql-master-data:/var/lib/mysqlconfigs:- source: mysql-master.cnftarget: /etc/mysql/my.cnfcommand:--default-authentication-pluginmysql_native_password--max_connections6000--character-set-serverutf8mb4--collation-serverutf8mb4_general_ci--explicit_defaults_for_timestamptrue--lower_case_table_names1--default-time-zone8:00--expire-logs-days7--sql_modeSTRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTIONdeploy:replicas: 1placement:constraints: [node.labels.zone dbmaster]restart_policy:condition: on-failuresecrets:- mysql-secrtenvironment:- MYSQL_ROOT_PASSWORD_FILE/run/secrets/mysql-secrteip-mysql-slave:image: harbor.hkc.cn/jpaas/mysql:8privileged: truehostname: eip-mysql-slave container_name: eip_mysql_slavenetworks:- golbal-service-jpaas-netports:- 13317:3306volumes:- mysql-slave-data:/var/lib/mysql- /etc/localtime:/etc/localtimeconfigs:- source: mysql-slave.cnftarget: /etc/mysql/my.cnfcommand:--default-authentication-pluginmysql_native_password--max_connections6000--character-set-serverutf8mb4--collation-serverutf8mb4_general_ci--explicit_defaults_for_timestamptrue--lower_case_table_names1--default-time-zone8:00--expire-logs-days7--sql_modeSTRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTIONdeploy:replicas: 1placement:constraints: [node.labels.zone dbslave]restart_policy:condition: on-failuresecrets:- mysql-secrtenvironment:- MYSQL_ROOT_PASSWORD_FILE/run/secrets/mysql-secrtsecrets:mysql-secrt:external: trueconfigs:mysql-master.cnf:external: truemysql-slave.cnf:external: truevolumes:mysql-master-data:mysql-slave-data:networks:golbal-service-jpaas-net:external: true3、配置主从同步
3.1 配置主节点访问账号
进入容器里面的mysql
# 登录mysql
mysql -uroot -ptryyiuer 创建访问账户
## 创建从节点的访问账号
CREATE USER slave% IDENTIFIED BY slave;
GRANT REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO slave%;## 查看用户
SELECT User, Host FROM mysql.user;## 查看用户权限
SHOW GRANTS FOR slave%;## 查看master状态
show master status; 这里记住 File 和 Position 这里属性的值。
退出mysql 执行 exit即可
退出容器执行 exit即可
3.2 配置从节点同步
如上一样进入到从节点容器的mysql中。执行以下指令
# MASTER_HOST是互通的IP地址如果是容器管理加入同一个网络使用容器的服务名称
# 端口默认3306 可以加上 Master_Port3306 可以改成自己mysql 配置的端口
CHANGE MASTER TO
MASTER_HOSTeip-mysql-master,
MASTER_USERslave,
MASTER_PASSWORDslave,
MASTER_LOG_FILEON.000004,
MASTER_LOG_POS7639;## 执行完成后开启同步
start slave;## 查看状态不需要分号
SHOW SLAVE STATUS\G 两个关键进程下面两个参数都是Yes则说明主从配置成功 4、测试
5、可能会出现的问题
4.1、数据库结构一致
配置之前一定要保证两个数据的结构一样 4.2、网络原因
是否关闭防火墙。
# 查看防火墙状态
systemctl status firewalld.service# 关闭防火墙
systemctl stop firewalld.service# 开启防火墙
systemctl start firewalld.service# 防火墙随系统开启启动
systemctl enable firewalld.service# 执行开机禁用防火墙自启命令
systemctl disable firewalld.service
ping ip 是否连通。
ping 172.16.11.195
4.3、实在不行就重置从服务器重新配置
# 如果上述方法都无法解决问题或者从服务器的复制状态变得混乱你可能需要重置从服务器的复制状态
STOP SLAVE;
RESET SLAVE ALL;