本文目录结构:
1.主从复制
1.1简介
1.2实操
1.3问题处理
其他:my.cnf主从配置参数
1.主从复制
1.1简介
原理
主服务器数据库的每次操作都会记录在二进制日志文件mysql-bin.xxx中。从服务器的I/O线程使用专用帐号登陆到主服务器中读取该二进制文件,并将文件内容写入到自己本地的中继日志relay-log文件中。然后从服务器的SQL线程会根据中继日志中的内容执行SQL语句,这要求两台服务器有同样的初态。
逻辑步骤:
1)主服务器数据库的每次操作都会记录在二进制日志文件mysql-bin.xxx中.
2)从库的IO线程向主库的主进程发送请求,主库验证从库,交给主库IO线程负责数据传输
3)主库IO线程对比从库发送过来的master.info里的信息,将binlog文件信息,偏移量和binlog文件名等发送给从库
4)从库接收到信息后,将binlog信息保存到relay-bin中,同时更新master.info的偏移量和binlog文件名
5)从库的SQL线程不断的读取relay-bin的信息,同时将读到的偏移量和文件名写道relay-log.info文件,binlog信息写进自己的数据库,一次同步操作完成。
6)完成上次同步后,从库IO线程不断的向主库IO线程要binlog信息
形式:
一主一从,一主多从,多主一从,主主复制,联级复制。
用途:
实时灾备,读写分类,备份。
条件:
主库开启binlog日志
主从server-id不同
从库可以连到主库
1.2.实操配置
1)同步初态
先将主机数据库加锁,避免数据改变
>use tatabase_name;
>flush tables with read lock;
再将主机数据备份
mysqldump -uroot -pxxx database_name > database_name.sql
备份完后解锁数据库
>unlock tables;
在从机从机相同的数据库,然后导入数据
>create table database_name;
>use database_name;
>sou