mysql 主从复制搭建

首先准备两台服务器,并且在服务器中安装mysql

先克隆一个虚拟机,更改克隆后的ip,让两个地址不相同; 

启动虚拟机,查看防火墙,开放3306端口;

firewall-cmd --zone=public --add-port=3306/tcp --permanent

firewall-cmd --zone=public --list-ports

将两台数据库启动起来:

systemctl start mysqld

 登录mysql,验证是否正常启动:

主库配置: 修改Mysql数据库的配置文件 vim /etc/my.cnf

在[mysqld]下方增加配置:

[mysqld]
log-bin=mysql-bin   #[必须]启用二进制日志
server-id=200       #[必须]服务器唯一ID(唯一即可)

重启mysql:

systemctl restart mysqld

 登录mysql,并执行如下指令,创建用户并授权:

GRANT REPLICATION SLAVE ON *.* to 'xiaoming'@'%' identified by 'Root@123456';

注:'xiaoming'和'Root@123456' 不是固定的;

如果遇到以下的报错:

重新设置下密码: 

 alter user 'root'@'localhost' identified by 'Root@123456';

登录Mysql数据库,查看master同步状态**

执行下面SQL,记录下结果中**File**和**Position**的值

show master status;

==注:上面SQL的作用是查看Master的状态,执行完此SQL后不要再执行任何操作==

不然数据可能会有变动;

 从库配置: 

 修改Mysql数据库的配置文件 vim /etc/my.cnf

在[mysqld]下添加以下配置 

server-id=201     #[必须]服务器唯一ID

重启Mysql服务:

systemctl restart mysqld

  登录Mysql数据库,设置主库地址及同步位置 :

change master to master_host='192.168.253.133',master_user='xiaoming',master_password='Root@123456',master_log_file='mysql-bin.000001',master_log_pos=154;

以上红框的数据记得根据自己的修改.

start slave;

 查看从数据库的状态:

show slave status;

  

可以将以上代码复制到notepade中打开浏览:

必须要两个yes才可以 .

如果slave_io_running显示的是No,或者connection,

需退出mysql,然后输入 

vim /var/lib/mysql/auto.cnf 

 

将最后的8随便换个数字,然后保存退出,重启虚拟机,登录mysql ,

然后输入:

 stop slave;

再执行一遍一下操作:

就会显示两个yes了.

最后就可以测试了 

在navicat中创建两个连接,主库和从库:(ip要和上面的对应) 

在主库master连接中随便创建一个数据库rw,然后刷新从库slave,从库也会自动创建出一个rw数据库

在主库中的数据库中随便创建一个表格 ,从库也会自动同步创建.

over~~~~~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值