前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >MySQL 集群环境搭建

MySQL 集群环境搭建

作者头像
jwangkun
发布2021-12-23 17:27:56
7940
发布2021-12-23 17:27:56
举报
文章被收录于专栏:John Wong's Blog

MySQL主从复制配置

主节点服务器 地址 192.168.0.105

从节点服务器 地址 192.168.0.107

主节点服务器安装好之后,直接clone 一个即可,不需要重复安装2次。

主节点服务器配置

1.进入配置页面命令
代码语言:javascript
复制
  vi /etc/my.cnf 
2.配置服务器id server_id

这里的server_id 尽量配置为服务器地址的后3位 以用来区分

代码语言:javascript
复制
 server_id=105
3.开启日志文件(binLog)
代码语言:javascript
复制
 log-bin=mysql-bin 

配置文件的地址应该在 : # Recommended in standard MySQL setup,否则配置不起作用

4.重启mysql服务
代码语言:javascript
复制
service mysqld restart

验证是否已经配置成功

代码语言:javascript
复制
show variables like '%server_id%';

能够查询对应配置文件中的server_id 说明已经配置成功,如下图,则表示配置成功。server_id=105

代码语言:javascript
复制
show master status;

能够看到同步的文件,和行数说明已经配置成功。

从服务器节点

1.进入配置页面命令
代码语言:javascript
复制
  vi /etc/my.cnf 
2.配置服务器id server_id

这里的server_id 尽量配置为服务器地址的后3位 以用来区分

代码语言:javascript
复制
 server_id=105
3.开启日志文件(binLog)
代码语言:javascript
复制
 log-bin=mysql-bin 
4.添加需用同步的数据库
代码语言:javascript
复制
binlog_do_db=test  
5.重启mysql服务
代码语言:javascript
复制
service mysqld restart

验证是否已经配置成功

代码语言:javascript
复制
show variables like '%server_id%';

能够查询对应配置文件中的server_id 说明已经配置成功

7.从服务器同步主服务器配置

master_host 主服务器地址

master_user 主服务器用户名

master_password 主服务器密码

master_log_file 主服务器配置文件

master_log_pos 主服务器读取配置文件的开始位置,也就是从第多少行开始读取。

代码语言:javascript
复制
change master to master_host='192.168.0.105',master_user='root',master_password='root',master_log_file='mysql-bin.000001',master_log_pos=120;
8.开始同步
代码语言:javascript
复制
start slave
9.检查从服务器复制功能状态
代码语言:javascript
复制
SHOW SLAVE STATUS

**如果二个从服务器是克隆主服务器的,**这时候就会出现如下图的情况,二个服务器的server-uuid 是相同的,因为是克隆过来的。这时候运行 SHOW SLAVE STATUS 就会出现 Slave_IO_Running 为 No,而Slave_SQL_Running为Yes。说明IO同步出错,在Last_IO_Error 字段可以看到错误信息,如下。错误信息的意思就是server-uuid 重复了。也就是下图展示的效果。

Fatal error: The slave I/O thread stops because master and slave have equal MySQL server UUIDs; these UUIDs must be different for replication to work。

如果出现这种情况,需要将 /var/lib/mysql 文件下的生成uuid 的文件删除,然后再重新启动 mysql 服务,就会重新在生成一个 server-uuid,在下图2中 也 显示了这个重新生成的server-uuid。

如果你的从服务器不是克隆主服务器而是重新安装的,那么就不会出现这种情况。直接运行 SHOW SLAVE STATUS 命令,如下图。则表示同步成功

存放server-uuid的 地址,可以在 /etc/my.cnf 文件中查看,如下图。

如果同步执行出错,作如下修改。

代码语言:javascript
复制
show variables like '%server_id%';
show master status;
STOP SLAVE;
set GLOBAL sql_slave_skip_counter=1;
start slave;
SHOW SLAVE STATUS;

下一篇: Centos7.4 安装MySQL 教程→

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020-11-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • MySQL主从复制配置
    • 主节点服务器配置
      • 1.进入配置页面命令
      • 2.配置服务器id server_id
      • 3.开启日志文件(binLog)
      • 4.重启mysql服务
      • 1.进入配置页面命令
      • 2.配置服务器id server_id
      • 3.开启日志文件(binLog)
      • 4.添加需用同步的数据库
      • 5.重启mysql服务
      • 7.从服务器同步主服务器配置
      • 8.开始同步
      • 9.检查从服务器复制功能状态
  • 从服务器节点
相关产品与服务
云数据库 SQL Server
腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档