mysql主从复制配置(windows和linux操作都有)
阿里云国内75折 回扣 微信号:monov8 |
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6 |
主从复制是什么?
mysql主从复制是一个异步的复制过程底层是基于mysql数据库自带的二进制日志功能。就是一台或多台mysal数据库slave即从库从另一台mysql数据库master即主库进行日志的复制然后再解析日志并应用到自身最终实现从库的数据和主库的数据保持一致。Mysql主从复制是Mysql数据库自带功能无需借助第三方工具。
操作实践
我这里主库是linux从库是windows系统的可以参考操作
-
配置前提条件
准备好两台服务器分别安装MySQL并启动服务。主库mater从库Slave
-
修改配置文件主库
在/etc/my.cnf下添加一下信息如图第一句意味启用二进制日志第二句为设置服务器唯一ID
[mysqld] log-bin=mysql-bin server-id=100
修改完了要重启数据库一下
systemctl restart mysqld
-
登录mysql执行下面的sql主库
mysql -u用户名 -p密码 GRANT REPLICATION SLAVE ON *.* to 'xiaoming'@'%' identified by 'Root@123456';
该sql的作用是创建一个用户xiaoming密码为Root@123456并且给xiaoming赋予REPLICATION SLAVE权限。常用于建立复制时所需要用到的用户权限也就是slave必须被master授权具有该权限的用户才能通过该用户复制。
-
查看主库状态修改从库配置文件
show master status;
记住这个position
给从库设置ID,并且重启从库mysql在/mysql/my.ini里面
window重启mysql操作
net start mysql; net stop mysql;
-
在从库中执行下面的操作记得将单引号中的数据修改为自己的数据
change master to master_host='8.134.98.51',master_user='xiaoming',master_password='Root@123456',master_log_file='mysql-bin.000001',master_log_pos=441;
开启slave
start slave;
-
查看从库数据库状态
show slave status\G;这样就竖着输出不会乱
如图这样子就设置好了
验证主从设置
分别连接两个数据从主库中完成增删改数据库表数据的操作看从库是否同步。