**********************************************************************************************************************
mysql
简要:sql
操做系统 mac数据库
虚拟机系统 centos
centos
MySQL版本 5.1服务器
**********************************************************************************************************************ssh
第一步:ide
1)在虚拟机上创建master,slave两个虚拟机器,ip分别为测试
192.168.1.131ui
192.168.1.132操作系统
2)两台机器上所有安装上mysql-server服务器
yum install mysql-server
3)使用本机termail,SSH链接上两台虚拟主机
ssh root@192.168.1.131
ssh root@192.168.1.132
继而在两台mysql中的test数据库中创建测试表menber
CREATE TABLE `menber` (`name` varchar(255) DEFAULT NULL default '',`id` int(11) NOT NULL AUTO_INCREMENT,PRIMARY KEY (`id`) ) ENGINE=MyISAM AUTO_INCREMENT=1 DEFAULT CHARSET=latin1; insert into `menber` (`name`, `id`) values('zhangsan','1'); insert into `menber` (`name`, `id`) values('lisi','2'); insert into `menber` (`name`, `id`) values('王五','3');
**********************************************************************************************************************
第二步:
在192.168.1.131,也就是master库上关闭iptables防火墙
service iptables stop;
**********************************************************************************************************************
第三步:
在主从两台服务器上分别添加一个共有的,而且拥有较高权限的统一用户
1)在master上执行
grant replication slave on *.* to 'repl'@'192.168.1.132' identified by '123456'; flush privileges; 建立成功一个叫repl的,密码为123456的用户 2)在slave上执行 grant replication slave on *.* to 'repl'@'192.168.1.131' identified by '123456'; flush privileges; 建立成功一个叫repl的,密码为123456的用户
**********************************************************************************************************************
第四步:
1)配置master服务器的my.cnf
在[mysqld]的下面添加以下,注意:不是[mysqld_safe]下面,这里有一个大坑!!!!!!
log-bin=mysql-bin
binlog_format=mixed
server-id=131
binlog-do-db=test #须要备份的数据库,多个能够使用分号隔开
binlog-ignore-db=mysql #会忽略的数据库
log-slave-updates=1
2)配置slave服务器的my.cnf
server-id=132
log-bin=mysql-bin
binlog_format=mixed
3)分别在两个服务器上给与mysql目录文件权限
chown -R mysql:mysql /var/lib/mysql
**********************************************************************************************************************
第五步:
1 )重启两台mysql
2 )master操做
进入mysql
flush tables with read lock; show master status; #能够获得position,以及二进制文件名连个有用信息 unlock tables; 3)slave操做 进入mysql change master to master_host='192.168.1.131' #master的ip master_user='repl', master_password='123456', master_log_file='mysql-bin.000001', #查看2)的两个信息 master_log_pos=713; #查看2)的两个信息 start slave便可。 ********************************************************************************************************************** 第六步:(测试) 1)slave的mysql中执行 show slave status\G;没有异常便可 2)在master的MySQL中执行 insert into `menber` (`name`) values('1229008098'); 查看slave中的数据无异常便可
********************************************************************************************************************** 说明:(master_slave_salve_slave形式的主从实现) 参照前六步便可。master基本只须要再次执行第三步的第一个操做便可,添加一个对应新的ip地址的用户。 slave基本能够复制前面的slave
虚拟器重启以后,须要重启slave,start slave才行
文档参考:http://www.tuicool.com/articles/2ENzY3