数据库主从同步配置

本文详细介绍了如何在两个MySQL服务器之间配置主从复制,包括准备数据库、配置文件、创建复制用户、设置权限及启动同步过程。同时,解决了一些常见问题,如连接失败和权限配置错误。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

首先,准备主数据库,从数据库,假设两个服务器上已装好数据库。

master:192.168.1.10

slave:192.168.1.11

1.配置数据库文件:vim /etc/my.cnf

3.保存后,重启数据库

service mysql restart 或 service mysqld restart(centos下)

ps:重启方式随意(其他环境自行搜索)

4.查看主数据库配置状态

mysql> SHOW MASTER STATUS;

5.配置从数据库(同理)

6.重启从数据库服务器

同上

7.接下来配置两数据库的关联

切换到主数据库:

mysql> create user repl;

mysql> GRANT REPLICATION SLAVE ON *.* TO 'repl'@'从xxx.xxx.xxx.xx' IDENTIFIED BY 'mysql';

mysql> flush privileges;

这个配置就是配置主数据用户,用于配置从数据库连接到主数据库的权限。(*.*操作所有表,@前为用户名,后为从数据库ip地址,BY后通过什么密码)

切换到从数据库:

mysql> change master to master_host='主xxx.xxx.xxx.xx',master_port=3306,master_user='repl',master_password='mysql',master_log_file='master-bin.000001'(需要与主配置相同),master_log_pos=0(需要与主配置相同);

这里面的xxx是主服务器ip,同时配置端口,repl代表访问主数据库的用户,上述步骤执行完毕后执行start slave启动配置:

mysql> start slave;

停止主从同步的命令为:

mysql> stop slave;

查看从数据库状态

mysql> show slave status \G;

看到两个yes即成功同步;

个人遇坑问题:Slave_IO_running: connecting to master

解决方案:1.互ping服务器,看是否联通;

2.主数据库对对repl用户访问,是否有远程权限;

如无就自己百度搜索解决方案。

 

其他代码:

mysql -u 用户(repl) -p 密码(mysql) -h 主数据库ip -P 3306 -D 数据库(从数据测试连接主数据库)
show grants for repl@'从数据库ip'(展示权限)
update db set host = '%' where user = 'repl';(修改用户远程权限)

有问题私信:1095709422@qq.com

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值