欢迎光临散文网 会员登陆 & 注册

Mysql主从复制

2023-02-20 22:31 作者:二仙桥管理员  | 我要投稿

单台数据库存在的问题:单台数据库压力过大,且单点存储,磁盘丢失后果严重

主从复制示意

下面所有的操作均是对CentOS7虚拟机的MySQL数据库进行的操作,在主从复制之前要确保已经分别在两个虚拟机上完成MySQL数据库的安装。

CentOS7虚拟机安装MySQL

CentOS安装

1 配置主库

1.1 首先要修改/etc/my.cnf

vim /etc/my.cnf

1.2 加入两行:

log-bin=mysql-bin

server-id=100

其中server-id要保证全局唯一

修改my.cnf

1.3 重启服务

systemctl restart mysqld

重启服务


执行sql前要通过mysql -u root -p登录一下

mysql> GRANT REPLICATION SLAVE ON *.* to 'xiaoming'@'%' identified by 'root@123456';

要注意用户名可能在之前进行了限制,如最短长度等,如果报错需要检查一下之前是否做了相关设置,使用符合要求的用户名

执行SQL


mysql> show master status;

执行效果如下,file和position后面会用到

主机状态

2 配置从库

与前面大体相同

2.1 修改cnf文件

加入server-id=101 保证全局唯一

修改从库的cnf

2.2 重启服务

systemctl restart mysqld

2.3 执行SQL

同样登录从库执行下面语句,要注意下面的信息是前面配置的主库对应的

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

如果报错可能是因为已经配置过,先stop

执行SQL


2.4 执行:start salve

通过show slave status;可以看到状态,为了方便查看可以复制到文本文档中查看

从机状态
通过文本查看

看到两个yes应该就是成功了

3 测试

在这里通过sqlyog软件进行测试,在主库(ip为132)新建一个数据库db1,在从库(ip131)中刷新,发现自动新建了。

测试结果


Mysql主从复制的评论 (共 条)

分享到微博请遵守国家法律