CentOS7下mysql主从复制搭建

mysql安装

CentOS7安装MySql5.7完整教程_长头发的程序猿的博客-CSDN博客_centos7 mysql5.7安装

1、配置主机

1.1、修改my.cnf配置文件

vim /etc/my.cnf

最后一行添加:

#主服务器唯一ID
server-id=1
#启用二进制日志
log-bin=mysql-bin
#设置不要复制的数据库(可设置多个)
binlog-ignore-db=mysql
#binlog-ignore-db=information_schema
#设置需要复制的数据库
binlog-do-db=testdb
#设置logbin格式
binlog_format=STATEMENT

1.2、重启 MySQL 服务

systemctl restart mysqld
systemctl status mysqld

1.3、在主机上建立帐户并授权 slave

mysql -uroot -pok

在主机MySQL里执行授权命令:

flush privileges;
GRANT REPLICATION SLAVE ON *.* TO 'slave'@'%' IDENTIFIED BY 'ok';

查询master的状态:

show master status;

2、配置从机

2.1、修改my.cnf配置文件

vim /etc/my.cnf

文件末尾添加:

#从服务器唯一ID
server-id=2
#启用中继日志
relay-log=mysql-relay

2.2、重启 MySQL 服务

systemctl restart mysqld
systemctl status mysqld

2.3、在从机上配置需要复制的主机

mysql -uroot -pok

复制主机的命令:

CHANGE MASTER TO MASTER_HOST='主机的IP',
MASTER_USER='slave',
MASTER_PASSWORD='ok',
MASTER_LOG_FILE='1.3步图片中的File',MASTER_LOG_POS=1.3步图片中的Position;

启动从服务器复制功能:

start slave;

查看从服务器状态:

show slave status\G;

拓展:

如何重新配置主从:

stop slave; 
reset master;

3、主机新建库、新建表、insert 记录,查看从机是否复制成功

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MySQL主从复制是指将一个MySQL数据库的变化同步到另一个MySQL数据库上,从而实现数据的备份、负载均衡、读写分离等功能。下面我们来介绍一下MySQL主从复制搭建过程。 1. 配置主服务器 首先需要在主服务器上配置一些参数。打开MySQL配置文件my.cnf,在[mysqld]下添加以下内容: ``` server-id=1 #服务器唯一ID log-bin=mysql-bin #启用二进制日志 binlog-do-db=testdb #指定需要复制的数据库名 ``` 然后重启MySQL服务。 2. 配置从服务器 接着需要在从服务器上配置一些参数。打开MySQL配置文件my.cnf,在[mysqld]下添加以下内容: ``` server-id=2 #服务器唯一ID,要保证与主服务器不同 ``` 然后重启MySQL服务。 3. 创建复制用户并授权 在主服务器上创建一个用于复制的用户,并授权给从服务器使用。在MySQL命令行中输入以下命令: ``` CREATE USER 'replication'@'%' IDENTIFIED BY 'password'; #创建用户 GRANT REPLICATION SLAVE ON *.* TO 'replication'@'%'; #授权 ``` 其中,'password'是复制用户的密码。 4. 获取主服务器状态信息 在主服务器上执行以下命令,获取主服务器的状态信息: ``` SHOW MASTER STATUS; ``` 会显示出如下信息: ``` +------------------+----------+--------------+------------------+-------------------+ | File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set | +------------------+----------+--------------+------------------+-------------------+ | mysql-bin.000001 | 120 | testdb | | | +------------------+----------+--------------+------------------+-------------------+ ``` 其中,File列和Position列的值会在后面的步骤中用到。 5. 配置从服务器复制信息 在从服务器上执行以下命令,配置从服务器的复制信息: ``` CHANGE MASTER TO MASTER_HOST='master_ip', MASTER_USER='replication', MASTER_PASSWORD='password', MASTER_LOG_FILE='mysql-bin.000001', #主服务器的File值 MASTER_LOG_POS=120; #主服务器的Position值 ``` 其中,master_ip是主服务器的IP地址,'password'是复制用户的密码,mysql-bin.000001和120分别是主服务器的File值和Position值。 6. 开启从服务器复制 在从服务器上执行以下命令,开启从服务器的复制: ``` START SLAVE; ``` 执行成功后,可以使用以下命令查看从服务器的状态: ``` SHOW SLAVE STATUS\G; ``` 如果看到“Slave_IO_Running”和“Slave_SQL_Running”两项都为“YES”,则说明从服务器复制已经正常启动。 至此,MySQL主从复制搭建完成。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值