1.1 KiB
1.1 KiB
原理
master节点将数据的改变记录到二进制binlog中,slave会在一定时间间隔内对master二进制进行探测,若发生改变,那就开始一个io_thread请求master的二进制binlog,master启动一个log dump线程,发送二进制文件给slave,并保存在slave节点的中继日志relay log中,slave使用sql_thread从中继日志读取二进制文件,在本地重放,使得slave的数据与主节点保持一致,最后io_thread和sql_thread休眠,等待下次被唤醒
配置
1、主库my.cnf需要配置server_id,bin_log(server_id唯一)
2、主节点创建一个具有复制权限的用户,show master status查看master状态,记录当前的log_bin文件和position
3、从节点my.cnf需要配置server_id,read_only=true(防止在从节点执行update等操作,但是对高权限的用户无效)
4、从节点执行change master to master_host=xxx,master_port=xxx,master_user=xxx,master_password=xxx,log_file='master-log-bin.xxxx',log_pos=xxx ,然后start slave,可以通过show slave status\G,查看状态