数据安全的重要性在企业的运行中不言而喻,因此我打算继续分享一些关于MySQL的数据相关一些方法,今天我们讲到的内容就是许多企业中经常使用到的主从复制中的binlog方式。
搭载环境:
两台全新的机器,一台作为主服务器,另一台作为从服务器。
首先可以先在本地域名解析中配置master和slave的IP地址:vim /etc/hosts;
并且确保两台的数据库初始数据出于相同的环境中;
主服务器:
1、在主服务器的my.cnf中添加如下配置内容(开启binlog日志):
[mysqld]
log-bin=/var/log/mysql/mysql-bin
server-id=1
2、随后在目录下创建日志文件夹,并赋予权限:
[root@mysql-master ~]# mkdir /var/log/mysql
[root@mysql-master ~]# chown -R mysql.mysql /var/log/mysql
3、然后将MySQL服务进行重启;
4、随后登录MySQL:
mysql -u root -p '密码'
5、创建主从同步的用户:
mysql> GRANT REPLICATION SLAVE ON *.* TO '用户名'@'%' identified by '密码';
mysql> flush privileges;
6、查看binlog日志:
mysql> show master status\G
从服务器:
1、在从服务器的my.cnf中添加如下配置内容:
[mysqld]
server-id=2
注:server-id一定要和主服务器上面的不一样,不然会出现报错。
2、登录mysql
[root@mysql-slave ~]# mysql -uroot -p''
mysql> \e
CHANGE MASTER TO
MASTER_HOST='mysql-master',
MASTER_USER='主服务器创建的用户',
MASTER_PASSWORD='用户的密码',
MASTER_LOG_FILE='日志文件',
MASTER_LOG_POS=初始位置;
-> ;
mysql> start slave;
mysql> show slave status\G
此时看到上面的两个running已经出现yes
之后在主服务器上面创建数据,在从服务器上面查看。就会发现主库和从库中间已经实现数据同步。
\e中的参数解释:
CHANGE MASTER TO
MASTER_HOST='', #主服务器ip或者本地域名解析
MASTER_USER='', #主服务器用户
MASTER_PASSWORD='', #用户密码
MASTER_PORT=, #端口(可加可不加)
MASTER_LOG_FILE='', #binlog日志文件名称
MASTER_LOG_POS=4, #日志位置
以上就是所有的主从复制binlog恢复日志方式,不过许多人在刚刚配置的时候可能会出现各种报错,这是正常现象,不要慌张。聪明沉着的你只需要根据报错内容和排错大概就能分析出导致出现问题的原因。如果各位观众们对于排错方法有需要的话,请在评论区留言,后续我会整理出排错思路。