MySQL数据库主从同步的配置过程文档格式.docx

上传人:b****5 文档编号:17599085 上传时间:2022-12-07 格式:DOCX 页数:8 大小:68.11KB
下载 相关 举报
MySQL数据库主从同步的配置过程文档格式.docx_第1页
第1页 / 共8页
MySQL数据库主从同步的配置过程文档格式.docx_第2页
第2页 / 共8页
MySQL数据库主从同步的配置过程文档格式.docx_第3页
第3页 / 共8页
MySQL数据库主从同步的配置过程文档格式.docx_第4页
第4页 / 共8页
MySQL数据库主从同步的配置过程文档格式.docx_第5页
第5页 / 共8页
点击查看更多>>
下载资源
资源描述

MySQL数据库主从同步的配置过程文档格式.docx

《MySQL数据库主从同步的配置过程文档格式.docx》由会员分享,可在线阅读,更多相关《MySQL数据库主从同步的配置过程文档格式.docx(8页珍藏版)》请在冰豆网上搜索。

MySQL数据库主从同步的配置过程文档格式.docx

在ServA上增加一个ServB可以登录的帐号:

MySQL>

GRANT 

all 

privileges 

ON 

*.* 

TO 

tongbu@'

10.240.136.149'

IDENTIFIED 

BY 

'

123456'

;

在ServB上增加一个ServA可以登录的帐号:

10.240.136.9'

1.2配置数据库参数

1、以root用户登录ServA,修改ServA的f文件

在[MySQLd]的配置项中增加如下配置:

default-character-set=utf8

log-bin=MySQL-bin

relay-log=relay-bin

relay-log-index=relay-bin-index

server-id=1

10 

11 

master-host=10.240.136.149

12 

13 

master-user=tongbu

14 

15 

master-password=123456

16 

17 

master-port=3306

18 

19 

master-connect-retry=30

20 

21 

binlog-do-db=umsdb

22 

23 

replicate-do-db=umsdb

24 

25 

replicate-ignore-table=umsdb.boco_tb_menu

26 

27 

replicate-ignore-table=umsdb.boco_tb_connect_log

28 

29 

replicate-ignore-table=umsdb.boco_tb_data_stat

30 

31 

replicate-ignore-table=umsdb.boco_tb_log_record

32 

33 

replicate-ignore-table=umsdb.boco_tb_workorder_record

2、以root用户登录ServB,修改ServB的f文件

server-id=2

master-host=10.240.136.9

1.3手工执行数据库同步

假设以ServA为主服务器,在ServB上重启MySQL:

在ServB上用root用户登录MySQL,执行:

stop 

slave;

load 

data 

from 

master;

start 

在ServA上重启MySQL:

1.4查看数据库同步状态

在MySQL命令提示符下执行:

show 

slave 

status\G

将显示同步进程的状态,如下所示,两行蓝色字体为slave进程状态,如果都为yes表示正常;

红色字体表示同步错误指示,如果有问题会有错误提示:

*************************** 

1. 

row 

***************************

Slave_IO_State:

Waiting 

for 

master 

to 

send 

event

Master_Host:

10.21.2.90

Master_User:

tongbu

Master_Port:

3306

Connect_Retry:

30

Master_Log_File:

localhost-bin.000005

Read_Master_Log_Pos:

39753882

Relay_Log_File:

localhost-relay-bin.000062

Relay_Log_Pos:

9826663

Relay_Master_Log_File:

Slave_IO_Running:

Yes

Slave_SQL_Running:

Replicate_Do_DB:

bak,umsdb

Replicate_Ignore_DB:

Replicate_Do_Table:

Replicate_Ignore_Table:

umsdb.boco_tb_connect_log,umsdb.boco_tb_menu,umsdb.boco_tb_workorder_record,

umsdb.boco_tb_data_stat,umsdb.boco_tb_log_record

34 

35 

Replicate_Wild_Do_Table:

36 

37 

Replicate_Wild_Ignore_Table:

38 

39 

Last_Errno:

40 

41 

Last_Error:

42 

43 

Skip_Counter:

44 

45 

Exec_Master_Log_Pos:

46 

47 

Relay_Log_Space:

48 

49 

Until_Condition:

None

50 

51 

Until_Log_File:

52 

53 

Until_Log_Pos:

54 

55 

Master_SSL_Allowed:

No

56 

57 

Master_SSL_CA_File:

58 

59 

Master_SSL_CA_Path:

60 

61 

Master_SSL_Cert:

62 

63 

Master_SSL_Cipher:

64 

65 

Master_SSL_Key:

66 

67 

Seconds_Behind_Master:

3、数据库同步测试

配置完数据库后进行测试,首先在网络正常情况下测试,在ServA上进行数据库操作,和在ServB上进行数据库操作,数据都能够同步过去。

拔掉ServB主机上的网线,然后在ServA上做一些数据库操作,之后再恢复ServB的网络环境,但是在ServB上却看不到同步的数据,通过命令showslavestatus\G查看发现Slave_IO_Running的状态是No,这种状态持续很长一段时间,数据才能同步到ServB上去。

这是什么问题呢?

同步延迟不会这么大吧。

后来通过网上查找相关资料,找到一个同步延迟相关的参数:

--slave-net-timeout=seconds

参数含义:

当slave从主数据库读取log数据失败后,等待多久重新建立连接并获取数据。

于是在配置文件中增加该参数,设置为60秒

重启MySQL数据库后测试,该问题解决。

4、数据库同步失效的解决

当数据同步进程失效后,首先手工检查slave主机当前备份的数据库日志文件在master主机上是否存在,在slave主机上运行:

一般获得如下的信息:

10.21.3.240

MySQL-bin.000001

360

localhost-relay-bin.000003

497

bak

其中Master_Log_File描述的是master主机上的日志文件。

在master上检查当前的数据库列表:

得到的日志列表如下:

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

|Log_name|File_size|

|localhost-bin.000001|495|

|localhost-bin.000002|3394|

如果slave主机上使用的的Master_Log_File对应的文件在master的日志列表中存在,在slave主机上开启从属服务器线程后可以自动同步:

如果master主机上的日志文件已经不存在,则需要首先从master主机上恢复全部数据,再开启同步机制。

在slave主机上运行:

在master主机上运行:

reset 

注意:

LOADDATAFROMMASTER目前只在所有表使用MyISAM存储引擎的数据库上有效。

-全文完-

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 农林牧渔 > 农学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1