1. mysql版本一致且后台以服务运行
    2. 主从配置在[mysqld]节点下,最好都是小写
      windows是mysql.ini配置文件(主机)
    1. 2. 2.1 [必须]主服务器唯一ID --举例: server-id=1
    2. 2.2 [必须]开启二进制日志 --举例: log-bin = 自己本地的路径/mysqlbinlog-bin=D:/devSoft/MysqlServer5.5/data/mysqlbin
    3. 2.2 [可选]启用错误日志 --举例: log-err = D:/devSoft/MysqlServer5.5/data/mysqlerr
    4. 2.3 [可选]根目录 --举例: basedir="自己本地的路径" 如: basedir="D:/devSoft/Mysqlserver5.5"
    5. 2.4 [可选]临时目录(交换数据)--举例: tmpdir="自己本地的路径" 如: tmpdir="D:/devSoft/MysqlServer5.5"
    6. 2.5 [可选]数据目录 --举例: datadir = "自己的本地路径/Data/" 如:datadir="D:/devSoft/MySQLServer5.5/Data/"
    7. 2.5 主机,读写都可以 read-only = 0
    8. 2.6 [可选]设置不要复制的数据库 binlog-ignore-db=mysql
    9. 2.7 [可选]设置需要复制的数据库 binlog-do-db=需要复制的主数据库名字
    10. 2.8[默认] logbin格式 binlog_format=STATEMENT
    11. bin_log3种格式,
    12. 1 statement :特点记录所有写操作的sql,但是遇到(time=now())这种,存在函数会造成主从不一致
    13. 2 row 不再记录所有写操作sql,而是记录每一行的改变,但是效率很差
    14. 3 mixed 上面两种折中,但是遇到系统变量没办法,会造成主从复制不一致

    linux是my.cnf配置文件(从机)

    1. 2.8 [必须]从服务器唯一ID --举例 : server-id = 2
    2. 2.9 [必须]启用二进制日志 --举例 log-bin = "------------------"
    1. 因修改过配置文件,主机+从机都重启后台mysql服务 ```
    2. 重启mysql服务 service mysql stop service mysql start ps -ef | grep mysql 查看mysql ```

    3. 主机从机都关闭防火墙 ```

    4. service iptables stop 或 centOS7 systemctl stop firewalld ```

    5. 在windows(主机)上建立账户并授权slave ```

    6. 5.1 GRANT REPLICATION SLAVE ON . TO ‘zhangsan’@’从机数据库IP’ IDENTIFIED BY ‘123456’; 授权复制给从机,以张三ip为:xxxx 密码为 12345 5.2 flush privileges 刷新一下 5.3 show master status;看看主机的状态 (下图1解释) 翻译 :【GRANT 授权】 ; 【REPLICATION 复制】 ; 【IDENTIFIED 确认】【privileges 特权】 ```

    (图1)
    一主一从常见配置 - 图1

    1. File:从这个文件开始复制
    2. Postition 从这行开始复制
    3. Binlog_Do_DB 复制的数据库
    4. Binlog_ignore_DB 不复制的数据库
    1. 在linux(从机)上配置需要复制的主机 ```
    2. 6.1 CHANGE MASTER TO MASTER_HOST=’主机IP’,MASTER_USER=’zhangsan’,MASTER_PASSWORD=’123456’,MASTER_LOG_FILE=’FILE名字’,MASTER_LOG_POS=Position数字; —》配置从库连接到主库 6.2 start slave; —》 开启从库 6.3 show slave status\G 配置成功后看看状态 (\G 是竖行查看内容,key value形式的) Slave_IO_Running:YES Slave_SQL_Running:YES 这两个参数必须同时为YES ,不然一定失败 ```

    3. 主机新建库、新建表、insert记录、从机复制,测试一下行不行
      8.如果要停从机: stop slave;
      9.注意问题: 若配置不成功,或者重启了从库, 需要先停了从库,并重新查一次主库的show master status 得到File 和 Postition 参数 配置步骤6