MySQL设置主从复制_MySQL, Oracle及数据库讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  MySQL, Oracle及数据库讨论区 »
总帖数
1
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 1951 | 回复: 0   主题: MySQL设置主从复制        下一篇 
d87025284
注册用户
等级:新兵
经验:62
发帖:59
精华:0
注册:2011-10-31
状态:离线
发送短消息息给d87025284 加好友    发送短消息息给d87025284 发消息
发表于: IP:您无权察看 2014-12-31 9:49:17 | [全部帖] [楼主帖] 楼主

在实际企业应用环境当中,单台mysql数据库是不足以满足日后业务需求的。譬如服务器发生故障,没有备份服务器来提供服务的话,业务就得停止。介于这种情况,我们来学习一下mysql主从复制。

使用mysql主从复制的好处有:
1、采用主从服务器这种架构,稳定性得以提升。如果主服务器发生故障,我们可以使用从服务器来提供服务。
2、在主从服务器上分开处理用户的请求,可以提升数据处理效率。
3、将主服务器上的数据复制到从服务器上,保护数据免受意外的损失。
环境描述:
新企业要搭建架构为主从复制的mysql数据库。
主服务器(mysql-master):IP地址:192.168.133.128,mysql已安装,没有用户数据。
从服务器(mysql-slave):IP地址:192.168.133.129,mysql已安装,没有用户数据。

1、修改 主服务器(mysql-master)配置文件

vi /etc/mysql/my.cnf


找到 bind-address = 127.0.0.1
改为 bind-address = 服务器IP
找到

#server-id               = 1
#log_bin                 = /var/log/mysql/mysql-bin.log


去掉 注释符号

server-id               = 1
log_bin                 = /var/log/mysql/mysql-bin.log


重启MySql

sudo /etc/init.d/mysql restart


2、在主服务器上为从服务器建立一个用户:

grant replication slave on *.* to 'slave'@'192.168.196.88' identified by '111321';
#grant replication slave on *.* to '用户名'@'从服务器地址' identified by '密码';


刷新权限 flush privileges;
查看master是否建立完成: show master status;MySQL设置主从复制

记下File和Position的值

3、修改从从服务器(mysql-slave)配置
找到

#server-id               = 1
#log_bin                 = /var/log/mysql/mysql-bin.log


去掉 注释符号

server-id               = 10
log_bin                 = /var/log/mysql/mysql-bin.log


重启MySQL

4、在从服务器MySQL进行操作

mysql> change master to master_host='192.168.48.128',master_user='backup',master_password='backup',master_log_file='mysql-bin.000003',master_log_pos=299;


5、启动slave

mysql> start slave;


6、查看主从状态

mysql> show slave status\G


下面属性为yes说明主从正常

Slave_IO_Running: Yes
Slave_SQL_Running: Yes
mysql> show slave status\G        //用这个命令查看MySQL主从状态
*************************** 1. row ***************************
Slave_IO_State: Waiting for master to send event
Master_Host: 172.17.2.40
Master_User: photorepl
Master_Port: 4331
Connect_Retry: 60
Master_Log_File: mysql-bin.005502
Read_Master_Log_Pos: 64401238
Relay_Log_File: mysqld-relay-bin.015418
Relay_Log_Pos: 13456757
Relay_Master_Log_File: mysql-bin.005152
Slave_IO_Running: Yes        //为 Yes 说明主从正常
Slave_SQL_Running: Yes        //为 Yes 说明主从正常
Replicate_Do_DB:
Replicate_Ignore_DB: mysql
Replicate_Do_Table:
Replicate_Ignore_Table:
Replicate_Wild_Do_Table: photo.%
Replicate_Wild_Ignore_Table: mysql.%
Last_Errno: 0
Last_Error:
Skip_Counter: 0
Exec_Master_Log_Pos: 13456620
Relay_Log_Space: 36764898503
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: 249904
×××××××××××××××××××××××××××××××××××××××××


MySQL设置主从复制

下面在主服务器上做些操作。

mysql> create database mysqltest;
mysql> use mysqltest;
mysql> create table user(id int(5),name char(10));
mysql> insert into user values (00001,'zhangsan');


在从服务器上查看那

mysql> show databases;
mysql> use mysqltest;
mysql> select * from user;


就可以查看到相同的内容。

--转自 北京联动北方科技有限公司




赞(0)    操作        顶端 
总帖数
1
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论