在学习之前;我们首先要学会在Linux系统安装mysql;还没安装成功的同学可以点连接进去学习;纯干货哦;——>Linux安装MySQL5.7——避开所有坑;
; 注意;一个主库可以有多个从库;
1、master将改变 记录到二进制日志;binary log;
2、slave 将 master 的 binary log 拷贝到它的中继日志;relay log;
3、slave重做中继日志中的事件;将改变应用到自己的数据库中
提前准备好两台服务器;分别安装MySql并启动成功
1、进入其中一台服务器中的MySQL;将此库作为Master主库来配置;修改MySQL的配置问文件
增加两行设置;开启MySQL的二进制日志功能;设置服务器的唯一标识;前面也提到过;一个主库可能对应多个从库;为了区分开来;把每个从库的id设置唯一;。保存并退出。
2、重启数据库
3、先刷新一下权限表。把在所有数据库的所有表的所有权限赋值给位于所有IP地址的root用户。
mysql> flush privileges;
4、登录你的作为主库使用的Linux中的MySQL后;输入下面命令;
MySQL8之前的数据库版本使用这个命令
mysql> grant replication slave on*.*to;user1;;%identified by ;user1;123456;;
MySQL8及之后的数据库版本使用这两个命令
mysql> create user user1 identified with ;mysql_native_password; by ;user1;123456;; mysql> grant replication slave on*.*to user1;
;上面的SQL用于创建一个用户user1;密码为user1;123456;并给user1用户授予replication slave权限。常用于建立复制时所需要用到的用户权限;也就是slave必须被master授权;具有该权限的用户才能通过该用户复制。说白了user1就是个工具人;用来提供建立主从复制的权限;
4、执行下面SQL;记录下结果中的File和Position的值
//查看主库的状态 show master status
注:上面的操作执行完毕后就不在主库中执行其他操作了;因为我们执行其他操作的时候;结果中的File和Position的值会变化;现在从库的这个文件名和position在从库中会使用到。
---------------------------------------------------------------------------------------------------------------------------------