设为首页 收藏本站
查看: 617|回复: 6

[经验分享] MySQL的主从复制配置

[复制链接]

尚未签到

发表于 2013-6-14 09:04:42 | 显示全部楼层 |阅读模式
在这里分两个情况:1、两台服务器中都没有数据 2、主服务器上已经有数据,此时再开启从服务器
一、两台服务器中都没有数据
  在复制结构中从服务器的mysql的版本要比主服务器的一样或者高也行。
主mysql的ip是192.168.0.1
从mysql的ip是192.168.0.2
端口都是:3306
mysql的版本5.1.61源码编译安装

1.主服务器执行如下
修改配置文件:
在/etc/my.cnf中添加启动二进制文件
[client]
port            = 3306
socket          = /tmp/mysql.sock

[mysqld]
port            = 3306
socket          = /tmp/mysql.sock
datadir         = /usr/local/mysql/var
skip-locking
wait_timeout = 30
table_lock_wait_timeout = 30
#skip-grant-tables
key_buffer = 384M
max_allowed_packet = 32M
table_cache = 128M
sort_buffer_size = 8M
net_buffer_length = 8K
read_buffer_size = 8M
read_rnd_buffer_size = 32M
myisam_sort_buffer_size = 16M
thread_cache_size = 64
thread_stack = 512k
query_cache_size = 64M
tmp_table_size = 256M
log-error=log-error.log

log-bin=mysql-bin  #二进制日志,主库必须开启


#哪个数据库不需要复制
binlog-ignore-db=test
binlog-ignore-db=mysql
binlog-ignore-db=information_schema

server-id=100  #默认是1,服务器ID号,整数值,保证唯一标识一台服务器就可以

进入主mysql执行如下语句
在主服务器上创建复制帐号,授予相应的权限。注意,复制帐号的口令最好不要超过6位,而且不要带"#"等特

殊字符。
mysql>create user backup;
mysql>grant replication slave on *.* to 'backup'@'192.168.0.2' identified by '123456';
mysql>FLUSH PRIVILEGES;
创建backup用户,并授权给192.168.0.2使用
查询主数据库状态,并记下FILE及Position的值
show master status;
修改完成后重新启动mysql服务

2.从服务器执行如下
在/etc/my.cnf的mysqld下添加
[client]
port=3306
socket=/tmp/mysql.sock
[mysqld]
port=3306
socket=/tmp/mysql.sock
datadir=/usr/local/mysql/var

master-host=192.168.0.1  #主库地址,必须使用IP,不能使用域名
master-user=backup  #从库连接主库使用该用户名
master-password=123456
master-connect-retry  #选项控制重试间隔。默认为60秒。

table_lock_wait_timeout=30
wait_timeout=30
skip-locking

key_buffer = 384M
table_cache = 128M
sort_buffer_size = 8M
read_buffer_size = 8M
read_rnd_buffer_size = 32M
myisam_sort_buffer_size = 16M
thread_cache_size = 64
thread_stack = 512K
query_cache_size = 64M
tmp_table_size = 256M
max_allowed_packet = 32M  #任何生成的中间字符串的最大大小。默认为16M,最低配置32M,且不能小于主

库该项的值
read-only  #设置从服务器为只读的,避免在从库上进行写操作,导致主从数据不一致
skip-slave-start  #启动数据库后,需手动开启同步进程

log-error=log-error.log

#log-bin=mysql-bin  #关掉二进制日志
server-id=200  ##id号一定不能与主服务器的id号相同
添加如下内容:   ##这些是开启中继日志的
relay-log=relay-bin  #中继日志,从库开启
relay-log-index=relay-bin.index

设置忽略复制系统数据库
#replicate-do-db=   #需要同步的表,多个表需要多次指定,如果不明确指定禁止复制,默认就是允许复制
replicate-ignore-db=test  #不需要同步的表,多个需要多次指定
replicate-ignore-db=mysql
replicate-ignore-db=information_schema
replicate-wild-do-table = example1.%  #需要同步的表,支持正则表达式,数据库example1下的所有表
replicate-do-table = example1.table1  #需要同步的表,多个表需多次指定,数据库example1下的table1
replicate-wild-ignore-table = mysql.%   #不需要同的表,多个表需要多次指定
replicate-wild-ignore-table = test.%
replicate-rewrite-db = from_name->to_name  #同步库重命名
slave-net-timeout = 3600  #在所设置的时间内如果没有接收到来自主库的更新,从库则认为和主库的连接断开或失效,重新建立和主库的连接,默认为3600秒,可根据实际需求调整

退出从新启动从服务器/etc/init.d/mysqld restart or service mysqld restart
登陆从服务器执行如下语句
mysql>change master to
mysql>master_host='192.168.0.1',master_user='backup',master_password='123456',master_log_file='m

ysql-bin.000001',master_log_pos=98;
注意:mysql-bin.00001和master_log_pos是在主服务器上查询的 mysql>show master status;
启动同步
mysql>start slave;
mysql>show slave status\G;
如果出现以下结果表明连接成功,则连接失败。
Slave_IO_Running: Yes
Slave_SQL_Running: Yes


二、主服务器上已经有数据,此时再开启从服务器

1、 在开启从服务器之前要先把主服务器上的数据导入从服务器中。所以要先备份一下主服务器上的数据
# mysqldump -uroot -p --all-database > /tmp/all.sql

2、将备份复制到从服务器中
# scp /tmp/all.sql 192.168.0.2:/tmp/

3、在从服务器上,把备份导入服务器中
# mysql -uroot -p < /tmp/all.sql
Enter password:

4、下面就可以连接了,但是在连接之前要先查看备份的文件
用命令head来查看
# head -30 /tmp/all.sql ##查看前30行的
有一行是:
CHANGE MASTER TO MASTER_LOG_FILE='mysql-bin.000001', MASTER_LOG_POS=98;
说明要备份的位置是:MASTER_LOG_FILE='mysql-bin.000001', MASTER_LOG_POS=98
所以在连接之前一定要说明这个位置

5、下面来开始备份
mysql>CHANGE MASTER TO MASTER_HOST='192.168.0.1',MASTER_USER='backup',MASTER_PASSWORD='123456',MASTER_LOG_FILE='mysql-bin.000001', MASTER_LOG_POS=98;
返回的结果:Query OK, 0 rows affected (0.02 sec)
说明备份成功

6、下面就可以启动从服务器了
mysql>start slave;
mysql>show slave status\G     ##查看从服务器的状态是否连接成功
如下所示说明成功连接:
Slave_IO_Running: Yes
Slave_SQL_Running: Yes

最后再来测试一下。 在主服务器上创建或者删除数据库、表,就可以同步到从服务器上了。
mysql>create database aa;
mysql>use aa;
mysql>create table t1 (id int,name char(10));
mysql>insert t1 values (1,'han');
在从服务器上查看是否同步成功
mysql>show databases;
mysql>use aa;
mysql>select * from t1;

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-6438-1-1.html 上篇帖子: CentOS6.3安装MySQL5.6.10包冲突问题 下篇帖子: mysql存储引擎

尚未签到

发表于 2013-6-16 08:14:21 | 显示全部楼层
小手一抖,钱钱到手!

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

尚未签到

发表于 2013-6-16 22:35:30 | 显示全部楼层
我身在江湖,江湖里却没有我得传说。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

尚未签到

发表于 2013-6-17 10:49:22 | 显示全部楼层
写的真的很不错

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

尚未签到

发表于 2013-6-17 20:55:04 | 显示全部楼层
勃起不是万能的,但不能勃起却是万万都不能的!

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

尚未签到

发表于 2013-6-18 03:29:18 | 显示全部楼层
学习了,不错,讲的太有道理了

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

尚未签到

发表于 2013-6-18 08:03:08 | 显示全部楼层
天塌下来你顶着,我垫着!

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表