mysql读写分离设置说明_Mysql读写分离操作

环境:两台centos环境,安装mysql(mariadb)

web网站的优化:

缓存技术 数据库缓存 redis

文件缓存 图片 fastdfs

负载均衡 nginx

数据库主从备份,读写分离

图解:

在工作中,为了防止数据损坏,使用主从备份这种架构(复制集),为了满足mysql的性能要求,为了提高吞吐量使用复制集之后还可搭建读写分离去提高性能。

80d0583116ba616966b2a276c65bcdb8.png

1bfbfbc644d0e769e77df6d9917e1ab4.png

搭建主从

在master(主机名) 和slave(从机名) 都需要操作安全向导

mysql_secure_installation

fefa186fe687c7b46f14a26b829ab9b3.png

2ce4bf7d1149dde4ccc184bc742db116.png

systemctl restart mariadb 重启服务

mysql -u root -p 使用密码登陆

关闭主从防火墙和安全模式

systemctl stop firewalld

setenforce 0

slave 操作

systemctl restart mariadb

mysql -uroot -p

create database OurBlog charset=utf8;

exit

将刚导入的sql文件导入到salve库中

mysql -h localhost -u root -p111111 OurBlog < /opt/OurBlog.sql

修改配置文件

master配置文件

vi /etc/my.cnf

增加代码

server-id=1

log_bin=mysql-bin?

binlog-do-db=OurBlog

binlog-ignore-db=mysql

保存文件

重启 mariadb

9dd5c81fd782838c1370fd2962c014ee.png

slave修改

修改配置文件

vi /etc/my.cnf

增加下面代码

server-id=2

log_bin=mysql-bin?

binlog-do-db=OurBlog

binlog-ignore-db=mysql

保存

重启

84dc254cd439967eb908acdd108252ff.png

-Salve 配置

change master to master_host="10.10.14.154",master_user="root",master_password='111111',master_log_file="mysql-bin?.000001",master_log_pos=245;

88d45cbc8bc9e0d9e2462925e55a7301.png

-Slave 库当中

数据库当中

slave start 开始备份

show slave status \G

96b139d2b6b1e29b9420ddda895fe924.png

-salve库当中

查看slave 状态

show slave status \G

停止slave

stop slave;

开启slave

start slave

查看master 状态

show master status;

在 master中写入数据,然后在slave中查看数据

cae6fd0b347579f6b07dd2a45ef64c0a.png

Master 主库 slave 从库

binary log 二进制文件。relay log 中继器日志

I/O线程,sql线程

当客户端发器insert操作,操作的master库(事务)由master服务将sql语句转为二进制,存储到二进制日志文件中,然后执行commit 操作,将事务结果存储到master 库当中。

slave 开通一个io线程,线程阻塞等到,监听二进制文件是否有改变,如果有的,读取到中继器当中,

sql线程会定期查看中继器中的内容,然后重演,将改变写入slave库当中。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值