社区微信群开通啦,扫一扫抢先加入社区官方微信群
社区微信群
概述
主从复制(同步)使得修改的数据可以从一个数据库服务器复制到其他数据库服务器上,在复制数据时,一个服务器充当主服务器(master),其余的服务器充当从服务器(slave)。只要主数据库的二进制日志数据发生变化,从服务器就会复制数据。
配图说明:
主从服务器配置
主服务器配置
主库授权一个可以进行复制(同步)操作的账户 :
grant all on *.* to 'mary'@'192.168.10.%' identified by “123123”;
#授权Mary用户使用123123密码从192.168.10段的ip进行登录数据库,可以使用除了grant权限之外的所有权限。
flush logs;#刷新mysql的权限表
启用binlog日志:
vim /etc/my.conf
[mysqld]
server_id=1
#指定主MySQL数据库的ID
log-bin=/data/mysql/mysql_bin
#启用binglog日志,日志文件保存在/data/mysql(自行建立)
#记得授权chown -R mysql:mysql /data/mysql
查看主服务器状态
show master status;
从数据库配置
修改配置文件/etc/my.cnf
server-id=2 ##不能与主服务器 一样
relay-log=/data/mysql-binlog/mysql-relay#把中继日志放在那里,自己建立。
修改权限
chown -R mysql:mysql /data/mysql-binlog
修改从服务器的 UUID
vim /mysql/auto.cnf #在你数据库所在的目录下面
server-uuid=4988e6fb-bc9f-11e8-b581-000c290b86e1 #主数据库服务器与从服务器的UUID不能一样
重新启动服务
/usr/local/mysql57/support-files/mysql.service start
登录mysql,配置主数据库信息(使用本机的mary用户登陆)
change master to master_host='192.168.10.12',master_user='mary',master_password='123123',master_log_file='mysql-bin.000038',master_log_pos=597;
#以用户Mary密码为123123登录master服务器(192.168.10.12)追踪二进制日志mysql-bin.000038从位置597开始。
开启从服务功能
start slave;
查看slave状态
show slave status;
如果是以下这样,则配置成功
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!