什么是Mysql主从同步?
<强>
从库同步主库上的数据,(让其他数据库服务器自动同步当前正在被访问的数据服务器上的数据)强>
<强>主从同步的结构类型强>
1主- - - - - -在1从(常用)一台主服务器(负责业务更新)一台从服务器
1主- - - - - -→多从(常用)一台主服务器(负责业务更新)多台从服务器
主- - - - - -→从- - - - - - - - - -在从一台主服务器(负责业务更新)一台从服务器(同时作为另一台的主服务器)一台从服务器
主& lt;==在主(不单独用,一般和第三方软件一起做高可用集群或负载均衡)服务器相互为主从服务器
环境要求
1. mysql服务器版本需一样
2。网络能互联
3。防火墙和selinux需要放行mysql实验环境可以将selinux和防火墙全部关闭
4。在配置成主从同步结构之前,一定要让从库有和主库一样的数据(如果两个服务器数据结构不相同在主服务器上能执行的sql在从服务器上,在从服务器上执行出错,sql线程就会没有了,不再同步)
<强>主数据库服务器强>
1。用户授权
格兰特复制奴隶。授权用户@"从服务器ip地址“;被“密码“
2。启用binlog日志
vim/etc/my.cnf(mysqld)
server_id=0 - 255的值主从不要重复
log-bin=/指定binlog日志的文件夹/日志文件名mysql服务用户需要有指定文件夹的读写执行权限可以不指定默认是在数据库目录下/var/lib/mysql
binlog-format=癿ixed"使用混合模式记录日志(混合模式记录改变结果和sql命令)
3。查看正在使用的binlog日志
显示主状态;
<强>
从数据库服务器强>
1。验证主库授权
# mysql - h主库地址- u授权用户- p授权密码;
在从服务器命令行能登陆说明授权成功
2。指定server_id
vim/etc/my.cnf(mysqld)
server_id=52
: wq
显示奴隶状态;查看自己是不是从库信息
因为还没有指定过查不到信息
3。指定主库信息
mysql>改变主
→master_user=皉epluser",//主服务器授权用户
→master_host=?92.168.4.51",//主服务器ip地址
→master_password=?23456“,//授权密码
→master_log_file=癆1-bin.000001",//主服务器正在使用的binlog日志可以在主服务器上显示主状态查看到正在使用的日志以及已经记录的偏移量
→master_log_pos=452;//binlog日志已经记录的偏移量
查询好,0行影响,2警告(0.23秒)
<>强4。查看配置强>
显示奴隶状态\ G;
<强> <强> <强> <强> <强> <强> <强> <强> <强> <强> <强> <强> <强> 1。行 强> 强> 强> 强> 强> 强> 强> 强> 强> 强> 强> 强> 强>
Slave_IO_State:
Master_Host: 192.168.4.51
Master_User: repluser
Master_Port: 3306
Connect_Retry: 60
Master_Log_File: A1-bin。000001
Read_Master_Log_Pos: 452
Relay_Log_File: A2-relay-bin。000001
Relay_Log_Pos: 4
Relay_Master_Log_File: A1-bin。000001
Slave_IO_Running:没有
Slave_SQL_Running:没有
Replicate_Do_DB:
Replicate_Ignore_DB:
Replicate_Do_Table:
Replicate_Ignore_Table:
Replicate_Wild_Do_Table:
Replicate_Wild_Ignore_Table:
Last_Errno: 0
Last_Error:
Skip_Counter: 0
Exec_Master_Log_Pos: 452
Relay_Log_Space: 154
Until_Condition:没有
Until_Log_File:
Until_Log_Pos: 0
Master_SSL_Allowed:没有
Master_SSL_CA_File:
Master_SSL_CA_Path:
Master_SSL_Cert:
Master_SSL_Cipher:
Master_SSL_Key:
Seconds_Behind_Master:空
Master_SSL_Verify_Server_Cert:没有
Last_IO_Errno: 0
Last_IO_Error:
Last_SQL_Errno: 0
Last_SQL_Error:
Replicate_Ignore_Server_Ids:
Master_Server_Id: 0
Master_UUID:
Master_Info_File:/var/lib/mysql/master.info
SQL_Delay: 0
SQL_Remaining_Delay:空
Slave_SQL_Running_State:
Master_Retry_Count: 86400
Master_Bind:
Last_IO_Error_Timestamp:
Last_SQL_Error_Timestamp:
Master_SSL_Crl:
Master_SSL_Crlpath:
Retrieved_Gtid_Set:
Executed_Gtid_Set:
Auto_Position: 0
Replicate_Rewrite_DB:
Channel_Name:
Master_TLS_Version:
1行组(0.00秒)
5。器用药膏进程
mysql>开始奴隶;
查询好,0行影响(0.08秒)
再次查看配置的时候以下两个参数的值是是的