10分钟搞定Mysql主从部署配置

流程

  1. Master数据库安装
  2. Slave数据库安装
  3. 配置Master数据库
  4. 配置Slave数据库

网络信息

  1. Master数据库IP:192.168.198.133
  2. Slave数据库IP:192.168.198.132

配置Master数据库

在Master数据库安装完毕后,修改/etc/my.cnf

复制代码
[mysqld]
server-id=1 \\指定ID,主从的两台虚拟机ID必须不同
log-bin=mysql-bin \\mysql根据配置自动设置指定的二进制文件名

修改完配置文件,重启数据库主库

复制代码
systemctl restart mysqld

在Master库中添加同步使用的用户(不能用root)

SQL 复制代码
-- 创建用户synch,IP地址必须绑定Slave服务器IP,否则Slave无法通过此账号来访问
create user 'synch'@'192.168.198.132' identified by '123456';  
-- 对账号的数据库和数据表进行授权,授权全部库即可
grant replication slave on *.* to 'synch'@'192.168.198.132';
-- 刷新权限
flush privileges;

查看住数据库状态,确定日志File名和当前bin日志的位置,提供给从库做配置使用。下图中的Position指的是log-bin日志的位置,一般这里写什么,从库中就写什么。从库中写了该信息后,同步将从此日志位置开始

也就是说,在同步之前,你的主库和从库状态必须是一致的。否则在从库配置该属性的时候,就要配置为0

配置Slave数据库

你有几个Slave就配置几个,咱们这以一个Slave数据库举例。同样先修改/etc/my.cnf

复制代码
[mysqld]
server-id=2
replicate-do-db=test \\指定要复制的数据库

修改完重启数据库

复制代码
systemctl restart mysqld

进入从库的交互模式

复制代码
mysql -uroot -p
-- 输入密码

-- 停掉同步
stop slave;

-- 修改同步的配置,注意:以下配置每一行后面一定不能有空格,否则识别可能不通过
change
master to
master_host='192.168.198.133', 
master_port=3306,
master_user='synch',
master_password='123456',
master_log_file='mysql-bin.000001',
master_log_pos=3558;

-- master_host:主库的IP
-- master_user:同步用户,就是上一环节创建的用户
-- master_password:用户密码,就是上一环境创建的用户密码
-- master_log_file:上一环节看到的日志文件名
-- master_log_pos: 从哪一行开始同步

-- 开启同步
start slave;

-- 查看从库同步信息和状态
show slave status\G;

从库同步信息和状态中,只要Slave_IO_Running和Slave_SQL_Running 都是Yes,就证明同步正常了

注意事项

  1. 对从库进行配置前,建议在从库服务器上,使用同步账号通过mysql命令进行一次访问,来确保两台服务器之间可以相互访问

    mysql -h 192.168.198.133 -u synch -p
    -- 输入密码

  2. 同步前强烈建议先把主库和从库需要同步的数据库调整为一致,否则如果主库数据里大,会进行漫长的同步等待

相关推荐
星环处相逢9 分钟前
MySQL数据库管理从入门到精通:全流程实操指南
数据库·mysql
计算机毕设小月哥16 分钟前
【Hadoop+Spark+python毕设】中风患者数据可视化分析系统、计算机毕业设计、包括数据爬取、Spark、数据分析、数据可视化、Hadoop
后端·python·mysql
计算机毕设匠心工作室31 分钟前
【python大数据毕设实战】强迫症特征与影响因素数据分析系统、Hadoop、计算机毕业设计、包括数据爬取、数据分析、数据可视化、机器学习、实战教学
后端·python·mysql
h***047735 分钟前
SpringBoot集成Flink-CDC,实现对数据库数据的监听
数据库·spring boot·flink
源来猿往39 分钟前
redis-架构解析
数据库·redis·缓存
河南博为智能科技有限公司40 分钟前
高集成度国产八串口联网服务器:工业级多设备联网解决方案
大数据·运维·服务器·数据库·人工智能·物联网
Wang's Blog1 小时前
MongoDB小课堂: 深度诊断与优化——响应时间、内存压力及连接数故障全方位解决指南
数据库·mongodb
z***02601 小时前
MySQL--》如何通过选择合适的存储引擎提高查询效率?
数据库·mysql·adb
SoleMotive.1 小时前
在 MySQL 中如何快速的去复制一张表,包括表结构和数据?
数据库
翔云 OCR API1 小时前
承兑汇票识别接口技术解析-开发者接口
开发语言·前端·数据库·人工智能·ocr