当前位置:Gxlcms > 数据库问题 > mysql读写分离

mysql读写分离

时间:2021-07-01 10:21:17 帮助过:34人阅读

什么是sync_binlog? 
当每个sync_binlog’th写入该二进制日志后,MySQL服务器将它的二进制日志同步到硬盘上(fdatasync())。请注意如果在autocommit模式,每执行一个语句向二进制日志写入一次,否则每个事务写入一次。 默认值是0,不与硬盘同步。值为1是最安全的选择,因为崩溃时,你最多丢掉二进制日志中的一个语句/事务;但是,这是最慢的选择(除非硬盘有电池备份缓存,从而使同步工作较快)。 
slave:

server-id=2 
datadir=/var/lib/mysql 
character-set-server=utf8 
init_connect=‘SET NAMES utf8‘

在master数据库设置用来同步的slave用户权限

启动数据库

[root@localhost ~]# service mysqld start

进入mysql

[root@localhost ~]# mysql -uroot -p123456
mysql> GRANT REPLICATION SLAVE ON *.* TO <root>‘@‘<192.168.15.142>‘ IDENTIFIED BY ‘<123456>‘;
Query OK, 0 rows affected (0.10 sec)

主数据库锁表(禁止再插入数据以获取主数据库的的二进制日志坐标)

>FLUSH TABLES WITH READ LOCK;

在主数据库上使用mysqldump命令创建一个数据快照

[root@localhost ~]# mysqldump -u root -pnew-password  --databases drp > /root/test.sql

技术分享

解锁第(2)步主数据的锁表操作

SSH登录到从数据库

通过FTP、SFTP或其他方式,将上一步备份的主数据库快照all.sql上传到从数据库某个路径,例如我放在了/root/目录下;

从导入主的快照

[root@localhost ~]# mysql -uroot -p -h127.0.0.1 -P3306< test.sql
Enter password: 
You have mail in /var/spool/mail/root

给从数据库设置复制的主数据库信息(注意修改MASTER_LOG_FILE和MASTER_LOG_POS的值)

MASTER_LOG_FILE和MASTER_LOG_POS在主数据中查看技术分享

mysql> CHANGE MASTER TO MASTER_HOST=‘192.168.15.141‘,MASTER_USER=‘root‘,MASTER_PASSWORD=‘new-password‘,MASTER_LOG_FILE=‘mysqlmaster-bin.000001‘,MASTER_LOG_POS=3931
mysql> START slave;
Query OK, 0 rows affected (0.74 sec)

查看重数据库的状态

mysql> SHOW slave STATUS \G

如果下面两个参数都是Yes,则说明主从配置成功! 
技术分享 
slave_sql_running:负责自己的slave mysql进程 
Slave_IO_Running:负责与主机的io通信 
查看报错: 
Last_IO_Error: Fatal error: The slave I/O thread stops because master and slave have equal MySQL server ids; these ids must be different for replication to work (or the –replicate-same-server-id option must be used on slave but this does not always make sense; please check the manual before using it). 
意思就是从上的server_id和主的一样的,经查看发现从上的/etc/my.cnf中的server_id=1这行我没有注释掉(在下面复制部分我设置了server_id),于是马上把这行注释掉了,然后重启mysql,发现还是报同样的错误。 
解决方案: 
查看主从数据库中my.conf的server_id是否重复,如果重复,改一下再重启。 
这样当主数据库插入数据,新建表或者创建数据库时,就可以自动同步到从数据库了~

mysql读写分离

标签:优化   进入   sftp   ast   电池   stat   解决方案   server   coff   

人气教程排行