Mysql数据库同步.docx
- 文档编号:6517459
- 上传时间:2023-01-07
- 格式:DOCX
- 页数:7
- 大小:16.62KB
Mysql数据库同步.docx
《Mysql数据库同步.docx》由会员分享,可在线阅读,更多相关《Mysql数据库同步.docx(7页珍藏版)》请在冰豆网上搜索。
Mysql数据库同步
mysql同步
一、准备服务器
由于MySQL不同版本之间的(二进制日志)binlog格式可能会不一样,因此最好的搭配组合是Master的MySQL版本和Slave的版本相同或者更低,Master的版本肯定不能高于Slave版本。
我们假设主服务器(以下简称Master)和从服务器(以下简称Slave)的版本都是5.1.51。
假设同步Master的主机名为A:
monitor6(IP:
10.20.103.107),Slave主机名为B:
monitor7(IP:
10.20.101.43),2个MySQL的basedir目录都是/usr/bin,datadir都是:
/home1/mysql;需要同步monitor6中UCMO库中的:
servicegroup_available,servicegroup_status_day,servicegroup_status_hour,status_day,status_hour,user,user_service等7个表到monitor7的UCMO库中。
二、设置同步服务器
1、设置同步Master
修改MASTER数据库配置文件;
viewplaincopytoclipboardprint?
1.[nagios@monitor6~]$vi/etc/f
2.#ThefollowingoptionswillbepassedtoallMySQLclients
3.[client]
4.#password=your_password
5.port=3306
6.socket=/var/lib/mysql/mysql.sock
7.default-character-set=utf8
8.#Herefollowsentriesforsomespecificprograms
9.#TheMySQLserver
10.[mysqld]
11.datadir=/home1/mysql
12.port=3306
13.socket=/var/lib/mysql/mysql.sock
14.#msyql默认的bind-address是127.0.0.1,这样的话就算你创建的用户有可以remote访问
的话也不能通过-h来访问。
mysql只接受localhost。
15.#需要将bind-address修改为本机IP(默认为127.0.0.1)
16.bind-address=10.20.103.107
17.#log-bin=mysql-bin选项必须开启(去掉注释)
18.log-bin=mysql-bin
19.#server-id可设为1(去掉注释),从库有同样选项,设置时必须不能与主库相同
20.server-id=1
21.#由于只需同步7个表,因此可通过replicate-do-table指定需同步的表名
22.replicate-do-table=ucmo.servicegroup_available
23.replicate-do-table=ucmo.servicegroup_status_day
24.replicate-do-table=ucmo.servicegroup_status_hour
25.replicate-do-table=ucmo.status_day
26.replicate-do-table=ucmo.status_hour
27.replicate-do-table=ucmo.user
28.replicate-do-table=ucmo.user_service
29.
30.#如需同步数据库,则需有以下配置:
31.binlog-do-db=mytest
32.binlog-ignore-db=mysql
33.#binlog-do-db=需要备份的数据库名,可写多行
34.#binlog-ignore-db=不需要备份的数据库名,可写多行
重启MySQL,创建一个MySQL帐号为同步专用
viewplaincopytoclipboardprint?
1.mysql>grantreplicationslaveon*.*to'nagios'@'10.20.101.43'identified
by'nagios';
2.mysql>Flushprivileges;
3.mysql>useucmo;
4.mysql>showtables;
5.+--------------------------+
6.|Tables_in_ucmo|
7.+--------------------------+
8.|cacti_status|
9.|command|
10.|contact|
11.|contactgroup|
12.|contactgroup_contact|
13.|current_status|
14.|host|
15.|host_contactgroup|
16.|hostgroup|
17.|hostgroup_host|
18.|instance|
19.|service|
20.|service_contactgroup|
21.|servicegroup|
22.|servicegroup_available|
23.|servicegroup_members|
24.|servicegroup_status_day|
25.|servicegroup_status_hour|
26.|status|
27.|status_day|
28.|status_hour|
29.|timeperiod|
30.|tracker|
31.|user|
32.|user_service|
33.+--------------------------+
34.25rowsinset(0.00sec)
35.mysql>showmasterstatus;
36.+------------------+----------+--------------+------------------+
37.|File|Position|Binlog_Do_DB|Binlog_Ignore_DB|
38.+------------------+----------+--------------+------------------+
39.|mysql-bin.000010|92975924|||
40.+------------------+----------+--------------+------------------+
41.1rowinset(0.00sec)
将主数据库中需要作同步的数据导出并以数据库文件(ucmo.sql)的方式存放(以下为7个表的数据)
1.[root@monitor6bin]#/usr/bin/mysqldump-uroot--master-data=2ucmoserviceg
roup_availableservicegroup_status_dayservicegroup_status_hourstatus_daystatus_houruseruser_service>ucmo.sql
将导出的数据库文件传到从库上
viewplaincopytoclipboardprint?
1.[root@monitor6bin]#scp-P9922ucmo.sqlobserver@10.20.101.43:
/home/nagios
/tmp/
2、设置同步Slave
修改Slave数据库配置文件;
viewplaincopytoclipboardprint?
1.[nagios@monitor7~]$vi/etc/f
2.#log-bin=mysql-bin选项必须开启(去掉注释)
3.log-bin=mysql-bin
4.#server-id不能与master相同,由于前面master的server-id为1,这里可设为2
5.server-id=2
6.#填写主数据库牌配置
7.master-password=123456
8.master-port=3306
9.replicate-do-db=mytest
10.#可选项如下:
11.#replicate-do-db=test需要备份的数据库名
12.#replicate-ignore-db=mysql忽略的数据库
13.#master-connect-retry=60如果从服务器发现主服务器断掉,重新连接的时间
差(秒)
在从库上创建一新库,建议库名与主库名一致
1.mysql>createdatabaseUCMO;
2.mysql>useucmo;
将主库传过来的文件导入从库
viewplaincopytoclipboardprint?
1.[root@monitor7bin]#source/home/nagios/tmp/ucmo.sql
查看ucmo.sql文件,注意CHANGEMASTERTOMASTER_LOG_FILE选项的参数并记下
viewplaincopytoclipboardprint?
1.[root@monitor7bin]#vi/home/nagios/tmp/ucmo.pl
2.--CHANGEMASTERTOMASTER_LOG_FILE='mysql-bin.000007',MASTER_LOG_POS=59773
3986;
在线设置从库参数,并启动SLAVE同步
viewplaincopytoclipboardprint?
1.mysql>slavestop;
2.mysql>changemasterto
3.master_host='10.20.103.107',
4.master_user='nagios',
5.master_password='nagios',
6.master_log_file='mysql-bin.000007',
7.master_log_pos=597733986;
8.mysql>slavestart;
通过showslavestatus\G命令,查看相关信息:
viewplaincopytoclipboardprint?
1.mysql>showslavestatus\G
2.***************************1.row***************************
3.Slave_IO_State:
Waitingformastertosendevent
4.Master_Host:
10.20.103.107
5.Master_User:
nagios
6.Master_Port:
3306
7.Connect_Retry:
60
8.Master_Log_File:
mysql-bin.000138
9.Read_Master_Log_Pos:
332502310
10.Relay_Log_File:
monitor7-relay-bin.000016
11.Relay_Log_Pos:
332502455
12.Relay_Master_Log_File:
mysql-bin.000138
13.Slave_IO_Running:
Yes
14.Slave_SQL_Running:
Yes
15.Replicate_Do_DB:
16.Replicate_Ignore_DB:
17.Replicate_Do_Table:
18.Replicate_Ignore_Table:
19.Replicate_Wild_Do_Table:
20.Replicate_Wild_Ignore_Table:
21.Last_Errno:
0
22.Last_Error:
23.Skip_Counter:
0
24.Exec_Master_Log_Pos:
332502310
25.Relay_Log_Space:
332502656
26.Until_Condition:
None
27.Until_Log_File:
28.Until_Log_Pos:
0
29.Master_SSL_Allowed:
No
30.Master_SSL_CA_File:
31.Master_SSL_CA_Path:
32.Master_SSL_Cert:
33.Master_SSL_Cipher:
34.Master_SSL_Key:
35.Seconds_Behind_Master:
0
36.Master_SSL_Verify_Server_Cert:
No
37.Last_IO_Errno:
0
38.Last_IO_Error:
39.Last_SQL_Errno:
0
40.Last_SQL_Error:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Mysql 数据库 同步
![提示](https://static.bdocx.com/images/bang_tan.gif)