mysql主从的搭建

最近又搭建了一套mysql主从,跟之前不同的是,这次是在coentos7上搭建的,使用的mysql版本为5.6.28。下面简要的整理一下安装步骤。


首先,在centos7上安装mysql之前,需要先卸载掉centos7自带的mariadb-libs包,不然会跟将要安装的mysql包冲突。

rpm -e mariadb-libs --nodeps
这里只介绍用rpm包的安装方法。在网上可以找到centos7用的mysql的rpm包,包名类似如下:

mysql-client-XXXXXX.el7.x86_64.rpm
mysql-server-XXXXXX.el7.x86_64.rpm
mysql-shared-XXXXXX.el7.x86_64.rpm

下载到这三个包之后,在服务器上可以使用yum localinstall命令来安装,安装过程中会自动安装依赖的net-tools包的。

安装之后,mysql的root密码是被默认设置了,初始密码记录在:/root/.mysql_secret,要修改的话自己修改即可。


接下来说说mysql主从的配置(mysql主:192.168.0.1,mysql从:192.168.0.2):

---

1. mysql主的my.cnf配置文件:

[mysqld]
server_id=1
log_bin=mysqlbinlog
binlog_format=mixed
然后重启mysql服务,登录mysql主机并给mysql从机授予操作权限:

grant replication slave,reload,super on *.* to slave@192.168.0.2 identified by '123456';
另外,使用show master status命令可以查看master的binlog位置信息,如:

show master status;
+--------------------+----------+--------------+------------------+-------------------+
| File               | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+--------------------+----------+--------------+------------------+-------------------+
| mysqlbinlog.000001 |   120    |              |                  |                   |
+--------------------+----------+--------------+------------------+-------------------+

2. mysql从的my.cnf配置文件:

[mysqld]
server_id=2
master_host=192.168.0.1
master_user=slave
master_password=123456
需要注意的是,从机这么配置后mysql启动报错。网上查了一下,好像是新版本不再支持在配置文件中设置master的配置了,需要使用change master命令来操作。

将mysql从的my.cnf配置文件中master相关的配置删掉之后重启mysql,然后登录mysql从机执行如下命令:

change master to master_host='192.168.0.1', master_user='slave', master_passwd='123456',master_log_file='mysqlbinlog.000001',master_log_pos=120;
命令中master_log_file和master_log_pos用来指定master的binlog的位置。如果位置不同步,也是会有问题的。

然后,在mysql命令行启动slave:

start slave;
可以通过命令查看slave的状态:

show slave status\G;
当看到以下两个状态值都为Yes时,则表明同步状态正常:

Slave_IO_Running: Yes
Slave_SQL_Running: Yes


可以在mysql主机上建一个库,如果mysql从机也能同步创建,就说明成功了。





  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MySQL主从复制是一种常用的数据库复制技术,用于实现数据的备份、读写分离和负载均衡。下面是一种简单的MySQL主从搭建步骤: 1. 确保主服务器和从服务器上都安装了MySQL数据库,并且版本一致。 2. 在主服务器上编辑MySQL配置文件(my.cnf),启用二进制日志功能。在配置文件中添加以下内容: ``` [mysqld] log-bin=mysql-bin server-id=1 ``` `log-bin`参数指定二进制日志文件的名称,`server-id`参数指定主服务器的唯一ID。 3. 重启主服务器使配置生效。 4. 在主服务器上创建一个用于复制的用户,并授予适当的权限。例如,可以使用以下命令创建用户并授予权限: ``` CREATE USER 'replication_user'@'slave_ip' IDENTIFIED BY 'password'; GRANT REPLICATION SLAVE ON *.* TO 'replication_user'@'slave_ip'; FLUSH PRIVILEGES; ``` `slave_ip`是从服务器的IP地址,`password`是用户的密码。 5. 在主服务器上执行以下命令,获取当前二进制日志文件和位置的信息: ``` SHOW MASTER STATUS; ``` 记下输出结果中的文件名和位置信息,稍后在从服务器上配置时会使用。 6. 在从服务器上编辑MySQL配置文件(my.cnf),启用复制功能。在配置文件中添加以下内容: ``` [mysqld] server-id=2 ``` `server-id`参数指定从服务器的唯一ID,与主服务器不同即可。 7. 重启从服务器使配置生效。 8. 在从服务器上执行以下命令,配置从服务器连接到主服务器并开始复制: ``` CHANGE MASTER TO MASTER_HOST='master_ip', MASTER_USER='replication_user', MASTER_PASSWORD='password', MASTER_LOG_FILE='master_log_file', MASTER_LOG_POS=master_log_pos; ``` `master_ip`是主服务器的IP地址,`replication_user`和`password`是之前创建的复制用户的用户名和密码,`master_log_file`和`master_log_pos`是之前在主服务器上获取的二进制日志文件和位置信息。 9. 启动从服务器上的复制进程: ``` START SLAVE; ``` 10. 在从服务器上执行以下命令,检查复制状态: ``` 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、付费专栏及课程。

余额充值