码迷,mamicode.com
首页 > 数据库 > 详细

mysql主从复制-linux版本

时间:2016-07-18 03:11:59      阅读:257      评论:0      收藏:0      [点我收藏+]

标签:

来自:http://www.osyunwei.com/archives/7269.html,改版

mysql主从复制
本文采用的是
centos6.5+mysql-5.6.23版本
之前在 windows7安装过主从复制,现在在linux实现主从复制
mysql安装方法:
http://www.cnblogs.com/lin3615/p/4376224.html
配置:
配置MySQL主服务器(192.168.179.142)
从服务器两台(192.168.179.146,192.168.179.147)
数据库就以 test为例,
// 从这里开始配置第一台从服务器
#建立一个MySQL主从数据库同步用户 lin3615,密码123456,并授予给192.168.179.146

登陆数据库,进入控制台

insert into mysql.user(Host,User,Password,ssl_cipher,x509_issuer,x509_subject) values(localhost,lin3615,password(123456),‘‘,‘‘,‘‘);

#刷新系统授权表

flush privileges;  

 #授权用户lin3615 只能从 192.168.179.146 这个IP访问主服务器192.168.179.142上面的数据库

grant replication slave  on *.* to lin3615@192.168.179.146 identified by 123456;

先把 主服务器的数据库复制到 从服务器,具体方法可参考:
http://www.cnblogs.com/lin3615/p/3749438.html

配置MySQL主服务器(192.168.179.142)的my.cnf文件

vim /etc/my.cnf  

#编辑配置文件,在[mysqld]部分添加下面内容

server-id=1   #设置服务器id,为1表示主服务器,一般用IP地址接替
log-bin=mysql-bin  #启动MySQ二进制日志系统
binlog-do-db=test  #需要同步的数据库名,如果有多个数据库,可重复此参数,每个数据库一行
binlog-ignore-db=mysql   #不同步mysql系统数据库
#保存退出
service mysqld  restart  #重启MySQL
mysql -h localhost -u root -p   #登陆
show variables like server_id;  #查看server-id的值是否为1
mysql> show variables like server_id;
show master status;  #查看主服务器,出现以下类似信息

+------------------+----------+--------------+------------------+

| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB |

+------------------+----------+--------------+------------------+

| mysql-bin.000011 |      107 | osyunweidb   | mysql            |

+------------------+----------+--------------+------------------+

1 row in set (0.00 sec)

注意:这里记住File的值:mysql-bin.000011和Position的值:107,后面会用到。

配置MySQL从服务器(192.168.179.146)的my.cnf文件

vim /etc/my.cnf   #编辑配置文件,在[mysqld]部分添加下面内容
server-id=2   #设置服务器id,修改其值为2,表示为从数据库
log-bin=mysql-bin  #启动MySQ二进制日志系统
replicate-do-db=test   #需要同步的数据库名,如果有多个数据库,可重复此参数,每个数据库一行
replicate-ignore-db=mysql   #不同步mysql系统数据库
read_only  #设置数据库只读
service mysqld restart   #重启MySQL

#进入MySQL控制台
#查看server-id的值,必须为上面设置的2,否则请返回修改配置文件

show variables like server_id;  

+---------------+-------+

| Variable_name | Value |

+---------------+-------+

| server_id     | 2     |

+---------------+-------+

1 row in set (0.01 sec)

#停止slave同步进程
stop slave; #此选项,之前测试时用 slave stop/slave start(启动),现在测试一直报错,日志无法查看,原来是命令不对,搞了半天才知道
#执行同步语句
change master to master_host=192.168.179.142,master_user=lin3615,master_password=123456,master_log_file=mysql-bin.000001 ,master_log_pos=107;
#开启slave同步进程
start slave; 
#查看slave同步信息
SHOW SLAVE STATUS\G 
出现以下内容

*************************** 1. row ***************************

Slave_IO_State: Waiting for master to send event

Master_Host: 192.168.21.128

Master_User: osyunweidbbak

Master_Port: 3306

Connect_Retry: 60

Master_Log_File: mysql-bin.000011

Read_Master_Log_Pos: 107

Relay_Log_File: mysqlslave-relay-bin.000004

Relay_Log_Pos: 253

Relay_Master_Log_File: mysql-bin.000011

Slave_IO_Running: Yes

Slave_SQL_Running: Yes

Replicate_Do_DB: osyunweidb

Replicate_Ignore_DB: mysql

Replicate_Do_Table:

Replicate_Ignore_Table:

Replicate_Wild_Do_Table:

Replicate_Wild_Ignore_Table:

Last_Errno: 0

Last_Error:

Skip_Counter: 0

Exec_Master_Log_Pos: 107

Relay_Log_Space: 560

Until_Condition: None

Until_Log_File:

Until_Log_Pos: 0

Master_SSL_Allowed: No

Master_SSL_CA_File:

Master_SSL_CA_Path:

Master_SSL_Cert:

Master_SSL_Cipher:

Master_SSL_Key:

Seconds_Behind_Master: 0

Master_SSL_Verify_Server_Cert: No

Last_IO_Errno: 0

Last_IO_Error:

Last_SQL_Errno: 0

Last_SQL_Error:

Replicate_Ignore_Server_Ids:

Master_Server_Id: 1

1 row in set (0.00 sec)

mysql>

注意查看:

Slave_IO_Running: Yes

Slave_SQL_Running: Yes

以上这两个参数的值为Yes,即说明配置成功!

// 结束配置第一台从服务器
同理,配置第二台,从从服务器开始,重新设置一个新的用户名
即:
#建立一个MySQL主从数据库同步用户 lin3615_1,密码123456,并授予给192.168.179.147

insert into mysql.user(Host,User,Password,ssl_cipher,x509_issuer,x509_subject) values(localhost,lin3615_1,password(123456),‘‘,‘‘,‘‘);

重复第一台从库的设置即可

接着可以测试,在主库上进行 curd

 

 

mysql主从复制-linux版本

标签:

原文地址:http://www.cnblogs.com/lin3615/p/5679828.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!