mysql配置主从复制

时间:2022-09-21 12:46:24
1、修改主服务器下面的文件:           vim /etc/my.cnf                             //修改 mysql 配置文件           写入:                    server-id=199                       //值一般是 IP 的后三位。是为了在多台集群的时候区分那台是那台。(因为这个例子是一对一分离,实际中有可能是1对多,多下面还有多个)                    log-bin=mysql-bin                 //声明生成配置文件,生成后名字为 mysql-bin0000什么的(存在 /var/lib/mysql/ 下)                    binlog-format=mixed            //根据什么生成二进制文件。mixed 是混合的意思。让 mysql 判断是根据 sql 语句还是根据磁盘发生变化。   2、修改服务器下面的文件:          vim /etc/my.cnf                              //修改 mysql 配置文件          server-id=200          relay-log=mysql-relay                    //读取主服务器主文件   3、主服务创建授权账号:         grant replication client,replication slave on *.* to'repl'@'192.168.%.%' identified by 'root';          /// *.* 代表全局,必须作用于所有库上和所有表上。(而 mongoDB 可以单选某个库下的某张表做主从分离)          ///repl@192.168.%.% 代表 repl 账号可以在 192.168... ip上可以发挥作用          ///密码是 root   4、在从服务器配置主服务器信息:        change master to master_host='192.168.0.199',                           //主服务 ip      (在从服务器端登录授权账号)                                    master_user='repl',                                          //主服务器的授权账号                                    master_password='root',                                  //主服务器的授权密码                                    master_log_file='mysql-bin.000003',                //主服务器当前使用的二进制文件                                    master_log_pos=278;                                       //主服务二进制文件当前指针位置       【上面这是一句话!在从服务器上直接执行即可】        start slave;                             //启动从服务器(开始监听主服务器变化),不开启没用。        show slave status;                  //显示这个 Waiting for master to send event 说明建立连接成功。只要主服务器上有任何改动,从服务器就会产生相应的改动。         more mysql-bin.index                            //展示生成了哪些二进制文件。(必须要进入到二进制文件存放目录) show master status;                             //显示主服务器状态。当前使用的是那个二进制文件,指针位置。这个很重要 show slave status;                                //显示从服务器状态。 reset slave;                                          //重置从服务器(重置后,如果还想主从。要从新配置主服务器相关信息) stop slave;                                             //暂停监听,停止做从服务器(就停止监听了)       注意:可以一主多从,但是不能一从多主。