MySQL双机互备的实现
要配置MySQL双机互备,首先要有两个用来做备份的MySQL服务器,要实现同步更新数据,首先要知道对方的IP。
在安装有MySQL的两个服务器上进入命令行模式获得主从机两台服务器的IP地址,假设主机IP为192.168.1 .100,从机IP为192.168.1.200。
获得了两台MySQL服务器的IP地址还需要验证这两台服务器之间是否能够互相ping通,即要了解网络连接状态。在命令行中执行ping命令,如果可以互相ping通则可以继续下面的操作,如果出现一个ping不通的情况,需检查网络设置和防火墙设置,最佳是关闭防火墙,直到网络畅通。
创建需要同步的数据库,在主机和从机中分别使用帐号root登录MySQL 服务器,如:Mysql> create database tablename
在主机和从机上分别执行下面的命令创建用于同步操作数据库的帐号,并赋予其操作同步数据库的权限。执行命令如下:
Mysql> grant all privileges on *.* to account@’%’ identified by‘password’;
语句解释:
grant是赋予权限的关键字。
all privileges是指对数据库操作的所有权限,这里主要功能是同步数据库即互相复制的权限,可将其修改为replication。
*.*指的是MySQL服务器中所有的数据库下所有数据表,在此如果只需要同步数据库tablename下的所有表,可将其修改为tablename.*。
account是用于同步的帐号,其密码为password。
%表示的是所有IP地址,为了安全也可以指定某个IP地址,主机上写从机的IP:192.168.1.200,从机上写主机为IP地址:192.168.1.100。
整句的意思就是:赋予密码为password的帐号account访问操作%上MySQL 服务中所有数据库的数据的权限。
Mysql> flush privileges ;
刷新权限,必须设置。否则在使用过程中使用的是修改之前的权限。
测试同步帐号,在“运行” ->cmd中测试。
主机master上:
mysql –h 192.168.1.200 –u account –p
输入帐号account对应的密码password
从机slave上 :