mysql集群-主库从库配置--主从库分离

mysql集群

为什么要做主从库分离?

怎么进行分离?

设置2个数据库,为主库从库,主库存储,从库查询

怎么设置?

在你原本的配置yml文件中主库的ip是多少,从库是多少,都要和数据库的ip 一致

先编辑文件

#cp /usr/share/mysql/my-default.cnf /etc/my.cnf,就是说将my-default.cnf这个文件移动到/etc/my.cnf下面,要在根目录底下执行

#vim /etc/my.cnf--编写这个文件

进入后可以看到my.cnf文件内容,不好辨认,所以增加:set nu(增加行号)

把光标放在第4行,然后对文件进行修改-插入( :+ i)esc就能退出编辑模式

这里每个服务器都要设置唯一的id

主从同步是通过二进制的日志文件来进行,故须开启MySQL的日志功能记录增删改,每次服务启动就会产生新的日志文件

存储所有master-bin.0000xx文件名

配置端口号,这个端口号就是自定义的,一般不要改端口号

#需要同步的数据库名,若同步多个数据库数据用逗号分隔继续追加;若没有本行则表示同步所有的数据库数据,第9行可标注

#不同步的数据库名,多个用逗号分割;ignore=忽略

如果你时间超过1s就是慢查询

第一个就是打开慢查询,第二个就是设置阀值

以上几句诗设置文件的内容,退出编辑模式并保存;esc :wq,或者:wq!


启动服务让配置生效

systemctl start mysqld 重启 or systemctl restart mysqld 启动

未启动就用启动mysql,如果未启动过就用重启


创建主从同步的帐户

#mysql -uroot -p123456@Yc(密码按照自己设置的)

mysql> GRANT REPLICATION SLAVE ON *.* to rep@'%' IDENTIFIED BY '123456@Yc';

mysql> flush privileges;

mysql> select host,user from mysql.user;当看到user是有rep代表设置成功

配置从库

也是一样,需要一个配置文件,然后在项目里启动文件

配置时需要更改【服务器id】并取消log配置,因为是从库,不需要给别人同步数据,所以取消log配置

A.从库my.conf配置同master服务器配置一样,但server-id=2,取消#binlog-ignore-db配置,保存退出

B.重启mysql让其配置生效:

systemctl start mysqld or systemctl restart mysqld

如何知道是否已经启动mysql

执行losf -i :3306,看到有mysql就执行重启,未看到就执行启动


然后在主库,输入showstatus查看主库状态

然后在从库,登录从库后执行

绑定失败

停掉slave即可

再执行一边,看到ok即可

检查

需要看到这2个yes

相关推荐
nongcunqq25 分钟前
abap 操作 excel
java·数据库·excel
rain bye bye1 小时前
calibre LVS 跑不起来 就将setup 的LVS Option connect下的 connect all nets by name 打开。
服务器·数据库·lvs
阿里云大数据AI技术2 小时前
云栖实录|MaxCompute全新升级:AI时代的原生数据仓库
大数据·数据库·云原生
不剪发的Tony老师3 小时前
Valentina Studio:一款跨平台的数据库管理工具
数据库·sql
weixin_307779133 小时前
在 Microsoft Azure 上部署 ClickHouse 数据仓库:托管服务与自行部署的全面指南
开发语言·数据库·数据仓库·云计算·azure
六元七角八分3 小时前
pom.xml
xml·数据库
虚行3 小时前
Mysql 数据同步中间件 对比
数据库·mysql·中间件
奥尔特星云大使3 小时前
mysql读写分离中间件Atlas安装部署及使用
数据库·mysql·中间件·读写分离·atlas
牛马baby4 小时前
【mysql】in 用到索引了吗?
数据库·mysql·in
杀气丶4 小时前
L2JBR - 修复数据库编码为UTF8
数据库·sql·oracle