mysql主从同步

mysql主从同步
1.1 mysql主从同步 工作原理
1.2 部署mysql主从同步
1.2.1 准备工作: 确保数据相同 从库必须要有主库上的数据。
1.2.1 配置mysql主从同步
1.2.1.1 配置主库 192.168.4.51

			]# vim /etc/my.cnf
			[mysqld]
				server_id=51
				log-bin=master51
			:wq
			
			]# systemctl restart mysqld
			
			]# mysql -uroot  -p密码
			   mysql> grant  replication slave on  *.*  to  repluser@"%" identified by "123qqq...A";

			mysql> show master status;

		1.2.1.2 配置从库 192.168.4.52
			]# vim /etc/my.cnf
			   [mysqld]
				server_id=52
			:wq
		
			]# systemctl restart mysqld

			]# mysql -uroot  -p密码

			mysql> change  master to master_host="192.168.4.51",master_user="repluser",master_password="123qqq...AA",master_log_file="master51.000001",master_log_pos=441;

			mysql> start slave;
			mysql> show slave status\G;
				Master_Host: 192.168.4.51
				Slave_IO_Running: Yes
        				Slave_SQL_Running: Yes

			mysql> system cat /var/lib/mysql/master.info

1.2.1.3 测试主从同步配置
1 在主库51上添加访问数据的连接用户

]# mysql  -uroot  -p密码
			     mysql> create database db6;
			     mysql> grant all on db6.*  to  yaya@"%" identified by "123qqq...A"

;

2 客户端50 连接主库51 存储数据

   ]# mysql  -h192.168.4.51 -uyaya  -p123qqq...A
				        mysql> use db6;
					mysql> create table  t1(id int);
					mysql> insert into  t1 values(11),(99),(88)

3 从库52管理员本机登陆查看 , 有主库的数据

]# mysql  -uroot  -p密码
			mysql> select  * from db6.a;

1.4 把从库还原 为独立的数据库服务器。

[root@mysql52 mysql]# cd /var/lib/mysql
		[root@mysql52 mysql]# rm  -rf master.info 
		[root@mysql52 mysql]# rm  -rf relay-log.info 
		[root@mysql52 mysql]# rm  -rf mysql52-relay-bin.00000*
		[root@mysql52 mysql]# rm  -rf mysql52-relay-bin.index 
		[root@mysql52 mysql]# systemctl  restart mysqld
		[root@mysql52 mysql]# mysql -uroot -p密码
		mysql> show slave status\G;

1.5 mysql主从同步常用配置项
1.5.1 写在主库/etc/my.cnf文件里的常用配置(对所有的从库有效)

]# vim /etc/my.cnf
		[mysqld]
		#binlog_do_db=gamedb  仅允许从库同步的库
		binlog_ignore_db=bbsdb 不允许从库同步的库
		:wq
		]# systemctl restart mysqld
	1.5.2  写在从库/etc/my.cnf文件里的常用配置(只对从库本机有效)

		]# vim /etc/my.cnf
	       		log_slave_updates
			relay_log=中继日志文件名
			#replicate_do_db=库名    //仅同步的库
			replicate_ignore_db=库名 //只不同步的库
		:wq

		]# systemctl restart mysqld

1.6.3 配置mysql主从同步 主从从
51 52 53
主 从 从
配置从库53 仅同步主库 52 teadb 库数据
53 :

   ]# vim  /etc/my.cnf
				[mysqld]
				replicate_do_db=teadb
      			   :wq
			   ]# systemctl restart  mysqld
			   ]# mysql -uroot -p密码
			   mysql> show slave status\G;
				  Replicate_Do_DB: teadb

配置主库51 只不允许 从库52 同步本机的 gamedb 库数据

]# vim  /etc/my.cnf
   [mysqld]
   binlog_ignore_db=gamedb
    :wq
  ]# systemctl restart  mysqld
   ]# mysql -uroot -p密码
      mysql> show master status\G
        Binlog_Ignore_DB:gamedb

主从或主从从配置过程中可能出现的问题

一、数据库没有授权

对于mysql数据库没有授权,只需要用一条命令就可以了。

		mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;

指点ip:%代表所有Ip,此处也可以输入Ip来指定Ip

输入后使修改生效还需要下面的语句

 mysql>FLUSH PRIVILEGES;

二、服务器防火墙没有开放3306端口
centos 有两种防火墙 FirewallD和iptables防火墙

centos7 使用的是FirewallD防火墙。

FirewallD 是 iptables 的前端控制器,用于实现持久的网络流量规则。它提供命令行和图形界面,在大多数 Linux 发行版的仓库中都有。与直接控制 iptables 相比,使用 FirewallD 有两个主要区别:
1.FirewallD 使用区域和服务而不是链式规则。
2.它动态管理规则集,允许更新规则而不破坏现有会话和连接。

FirewallD 是 iptables 的一个封装,可以让你更容易地管理 iptables 规则 - 它并不是 iptables 的替代品。虽然 iptables 命令仍可用于 FirewallD,但建议使用 FirewallD 时仅使用 FirewallD 命令。
1.FirewallD防火墙开放3306端口

			firewall-cmd --zone=public --add-port=3306/tcp --permanent

命令含义:

–zone #作用域

–add-port=3306/tcp #添加端口,格式为:端口/通讯协议

–permanent #永久生效,没有此参数重启后失效
重启防火墙
systemctl restart firewalld.service
2.iptables 开发3306端口

			/sbin/iptables -I INPUT -p tcp -dport 3306 -j ACCEPT

			/etc/rc.d/init.d/iptables save
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MySQL主从同步是一种数据复制机制,用于将一个MySQL数据库实例中的数据自动复制到其他MySQL数据库实例,从而实现数据的备份、负载均衡和故障恢复等功能。 在主从同步中,一个MySQL实例被配置为主服务器(Master),而其他实例被配置为从服务器(Slave)。主服务器负责接收和处理客户端的写操作,然后将这些操作记录到二进制日志(Binary Log)。从服务器连接到主服务器,并通过读取主服务器的二进制日志来复制这些操作。从服务器将这些操作应用到自己的数据上,以保持与主服务器数据的一致性。 配置MySQL主从同步需要进行以下步骤: 1. 确保主服务器和从服务器之间可以互相通信。 2. 在主服务器上开启二进制日志功能,并配置二进制日志文件的位置和名称。 3. 在主服务器上创建一个用于复制的用户,并为该用户授予复制权限。 4. 在从服务器上配置复制参数,包括指定主服务器的IP地址、连接用户名和密码等。 5. 启动从服务器,并连接到主服务器进行复制。 6. 监控主从同步过程,确保数据的一致性和同步性。 需要注意的是,在配置主从同步时,需要考虑网络延迟、带宽和硬件性能等因素,以确保同步过程的效率和稳定性。另外,主从同步只能复制数据更改操作(如插入、更新、删除),而不能复制结构变更操作(如创建表、修改表结构)。如果需要同步结构变更,可以使用其他工具或方法来实现。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值