标签:执行 min 就是 增删改 使用 sla current mysq set
主从复制:
mysql要做到主从复制,其实依靠的是二进制日志,即:假设主服务器叫A,从服务器叫B;主从复制就是
B跟着A学,A做什么,B就做什么。那么B怎么同步A的动作呢?现在A有一个日志功能,把自己所做的增删改查的动作
全都记录在日志中,B只需要拿到这份日志,照着日志上面的动作施加到自己身上就可以了。这样就实现了主从复制。
环境:
主库:阿里云 MySQL5.7 (Windows Server2008)
从库:个人计算机 MySQL5.7 (Win 10)
1、配置master(主库)
找到MySQL的配置文件,一般位于MySQL安装位置根目录或者Data文件目录中
在[mysqld]下边,添加以下三个参数
log-bin=mysql-bin //将mysql二进制日志取名为mysql-bin
binlog_format=mixed //二进制日志的格式,有三种:statement/row/mixed,具体分别不多做解释,这里使用mixed
server-id=101 //为服务器设置一个独一无二的id便于区分,这里使用ip地址的最后一位充当server-id
2、配置slave(从库)
步骤同1,server-id不同即可
3、分别重启主库从库
4、在主库上为从库分配一个账号
Microsoft Windows [版本 6.1.7601] 版权所有 (c) 2009 Microsoft Corporation。保留所有权利。 C:\Users\Administrator>mysql -u root -p Enter password: **** Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 10 Server version: 5.7.20-log MySQL Community Server (GPL) Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved. mysql> grant replication slave on *.* to ‘slave‘@‘%‘ identified by ‘slave‘; Query OK, 0 rows affected, 1 warning (0.00 sec) mysql> show master status; +------------------+----------+--------------+------------------+--------------- ----+ | File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_ Set | +------------------+----------+--------------+------------------+--------------- ----+ | mysql-bin.000002 | 1483 | | | | +------------------+----------+--------------+------------------+--------------- ----+ 1 row in set (0.00 sec) mysql>
其中“grant replication slave on *.* to ‘slave‘@‘%‘ identified by ‘slave‘;” ,在主库上为slave账号分配了replication 权限
“show master status;” 查看主服务器BIN日志的信息(执行完之后记录下这两值,然后在配置完从服务器之前不要对主服务器进行任何操作,因为每次操作数据库时这两值会发生改变).
5、配置从库
mysql> stop slave; ERROR 2006 (HY000): MySQL server has gone away No connection. Trying to reconnect... Connection id: 3 Current database: mysql Query OK, 0 rows affected, 1 warning (0.00 sec) mysql> show slave status; Empty set (0.00 sec) :: 此处配置的是主库的地址 mysql> change master to master_host=‘**.**.**.**‘; Query OK, 0 rows affected (0.07 sec) mysql> change master to master_user=‘slave‘; Query OK, 0 rows affected, 2 warnings (0.04 sec) mysql> change master to master_password=‘slave‘; Query OK, 0 rows affected, 2 warnings (0.04 sec) :: 与上一步在主库上查询的结果一致即可 mysql> change master to master_log_file=‘mysql-bin.000002‘; Query OK, 0 rows affected, 1 warning (0.04 sec) :: 与上一步在主库上查询的结果一致即可 mysql> change master to master_log_pos=1483; Query OK, 0 rows affected (0.04 sec) :: 开始主从复制 mysql> start slave; Query OK, 0 rows affected (0.01 sec)
6、配置完成
如果上述步骤都正常执行完毕,那么现在就配置完成了
使用Navicat等可视化连接工具对主库做建表、插入、删除、修改等操作
从库会随之更新
标签:执行 min 就是 增删改 使用 sla current mysq set
原文地址:https://www.cnblogs.com/luxd/p/11434272.html