mysql主从及读写分离
主从同步1 主配置
把237配置为主数据库服务器
授权用户从42数据库服务器连接自己的时候有拷贝数据的权限
grant replication slaveon*.* to slaveuser@"172.40.7.42" identified by "123456";
vim /etc/my.cnf
server_id=237
log-bin=master #必须开启
:wq
servicemysqlrestart
showmasterstatus;
2查看日志文件,日志偏移量(从服务器上用)
配置从数据库服务器42
验证是否能够使用授权用户连接主数据库服务器
mysql-h172.40.7.237 -uslaveuser -p123456
vim/etc/my.cnf
server_id=42
log-bin=slave #可选项
:wq
servicemysql restart
使用自己的数据库管理员登录 ,配置自己做237的从数据库 服务器。
change master to master_host="172.40.7.237",master_user="slaveuser",master_password="123456",master_log_file="master.000001",master_log_pos=120;
start slave;
showslave status\G;
Slave_IO_Running: YES
Slave_SQL_Running: YES
验证?
主从同步工作过程?
cd /var/lib/mysql/
master.info 主数据库服务器的信息
relay-log.info 中继日志信息
www-relay-bin.000000 中继binlog日志文件
www-relay-bin.index 记录当前已有的中继binlog日志文件名
Slave_IO_Running: YES
拷贝master binlog sql语句 ->relaybinlog
错误:1changemasterto 配置信息错误
2 物理连接不通
Last_IO_Errno: 0
Last_IO_Error: 错误信息
stopslave;
change master to master_host="172.40.7.237",master_user="slaveuser",master_password="123456",master_log_file="master.000001",master_log_pos=120;
startslave;
Slave_SQL_Running: YES
执行本机relaybinlog日志里sql语句,把数据写进本 机数据库里。
错误:执行本机relaybinlog日志里sql语句时,使用的库或表不 存在。
查看错误信息
Last_SQL_Errno: 错误编号
Last_SQL_Error: 错误信息
3 mysql主从同步结构模式?
一主一从
一主多从
主(从)从 vim/etc/my.cnf
log-slave-updates
:wq
4mysql主从同步配置常用参数
vim /etc/my.cnf
主数据库服务器端的配置参数
binlog-do-db=mysql, studb 只允许从数据库服务器同步自己的哪些库
binlog-ignore-db=test, db1 不允许从数据库服务器同步自己的哪些库
----------------------------------------------------------------
从数据库服务器端的配置参数
replicate-do-db=mysql, studb 只同步主数据库服务器上哪些库
replicate-ignore-db=test,db1 不同步主数据库服务器上哪些库
relay-log=dbsvr2-relay-bin 设置relaybinlog日志文件名
log-slave-updates允许级联复制
十二:配置mysql读写分离功能
1安装
yum -y install lua
tar -zxvf mysql-proxy-tar.gz
mv mysql-proxy-0.8.3-linux-rhel5-x86-64bit//usr/local/mysqlproxy
cd/usr/local/mysqlproxy/share/doc/mysql-proxy/
chmod+x rw-splitting.lua
2 启动
启动代理服务
/usr/local/mysqlproxy/bin/mysql-proxy --help
/usr/local/mysqlproxy/bin/mysql-proxy-P172.40.7.77:3306(虚拟vip) -r172.40.7.42:3306-b172.40.7.237:3306 -s /usr/local/mysqlproxy/share/doc/mysql-proxy/rw-splitting.lua &
页:
[1]