以下内容是个人的随手记录,就是介绍了下简单的使用;
欢迎大家吐槽,接下来就是激情的时刻,准备好啤酒饮料矿泉水,开整!!!
环境: vmvare12.0,ubuntu14.04
主从配置:两台ubuntu服务器,一台主服务器mysql,一台从服务器mysql
第一步:将vmvare虚拟机安装的两台ubuntu14.04服务器ip设定为固定ip地址,为了让两台服务器ip在同一个段内
第一步配置:
----------------------- 设置固定ip地址,主从服务器都是这种方法设置 -------------------------------
sudo vim /etc/network/interfaces # 如果未安装vim 也可以使用vi
例如:# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback
auto eth0 # 这个要查看一下ifconfig配置的是etc0还是其他
iface eth0 inet static
address 192.168.1.116
netmask 255.255.255.0 # 子网掩码
gateway 192.168.2.1 # 默认网关
配置完成后重启网络:
sudo service network restart 或 sudo /etc/init.d/networking restart
注意:重启网络后要看两个服务器相互之间是否能够ping通,如果不同查找网络问题;
第二步:配置主从服务器的mysql;
第二步主mysql服务器配置: 我本地两个服务器都已经安装完成mysql,略过安装mysql, 如果没有安装mysql则此步骤需要先安装mysql
-------------------------- 主mysql主服务器配置(192.168.2.116) ---------------------------
2.1 编辑mysql配置文件
sudo vim /etc/mysql/my.cnf
例:在[mysqld]中添加
server-id = 1 # 唯一标识
log_bin = master-bin # 启动mysql二进制入职
log_bin_index = master-bin.index
binlog_do_db = myslave #指定记录二进制日志的数据库
binlog_ignore_db = mysql # 指定不记录二进制日志的数据库
2.2 /// 重启mysql
sudo service mysql restart 或 sudo /etc/init.d/mysql restart
2.3 /// 启动mysql配置从服务器登陆的账户和权限
mysql > grant replication slave, reload, super on *.* to myslave @192.168.2.66 identified by 'admin@123';
注意:这里对从服务器授权ip地址一定要写成从服务器的ip地址而不是主服务器的ip地址
mysql > show master status;
-------------------------- 主mysql从服务器配置(192.168.2.66) ---------------------------
2.4 编辑mysql配置文件
sudo vim /etc/mysql/my.cnf
例:在[mysqld]中添加
server-id = 2
relay-log = slave-relay-bin
relay-log-index = slave-relay-bin.index
2.5 /// 重启mysql并进入mysql;
mysql > change master to master_host='192.168.1.116',master_port=3306,master_user='slave',master_password='admin@123',master_log_file='master-bin.000001',master_log_pos=2403;
备注:master_log_file对应show master status显示的File列:master-bin.000001;master_log_pos对应Position列:2403,否则有可能出现同步失败。
2.7 / 启动slave数据同步;
mysql > start slave;
2.5 查看slave信息;
mysql > show slave status\G
备注:Slave_IO_Running和Slave_SQL_Running都为yes才表示同步成功,以及注意:Master_Host、Maseter_User、Master_Port的地址是不是与主服务配置的IP、用户名、端口号统一,如果以上信息都正确则配置主从数据同步成功
主从服务器mysql数据库同步测试:
在从服务器上登录主服务器的mysql:
mysql –u username –p –h 192.168.2.116 # username为登录的用户名,我是用的是root
这是就可以在主服务器对数据库进行操作,然后从服务器连接到主服务器的mysql查看数据是否同步了;
注意:
主从同步出现以下错误:
Slave_IO_Running: Connecting
Slave_SQL_Running: Yes
解决方法:
导致lave_IO_Running 为connecting 的原因主要有以下 3 个方面:
1、网络不通
2、密码不对
3、pos不对
这里就需要对三个方面进行逐一排查,我当时出现这个问题的时候错误实在对从服务器的mysql进行授权的时候我的ip写成主服务器的ip地址了所以出错
注意:以上内容是个人使用的随手记录, 就是介绍了下简单的使用
欢迎大家来吐槽,准备好瓜子饮料矿泉水,开整!!!
---------------------------------------------------------------------------------------
搞笑一则:能动手尽量别吵吵