主机MySQL数据库两台主机同步实战--.doc

mysql主机  时间:2021-01-04  阅读:()

MySQL数据库两台主机同步实战>>

MySQL支持单向、异步复制复制过程中一个服务器充当主服务器而一个或多个其它服务器充当从服务器。主服务器将更新写入二进制日志文件并维护日志文件的一个索引以跟踪日志循环。

当一个从服务器连接到主服务器时它通知主服务器从服务器在日志中读取的最后一次成功更新的位置。从服务器接收从那时起发生的任何更新然后封锁并等待主服务器通知下一次更新。

在实际项目中两台分布于异地的主机上安装有MySQL数据库两台服务器互为主备客户要求当其中一台机器出现故障时另外一台能够接管服务器上的应用这就需要两台数据库的数据要实时保持一致在这里使用MySQL的同步功能实现双机的同步复制。

以下是操作实例

1、数据库同步设置

主机操作系统 RedHat Enterprise Linux 5

数据库版本MySQL Ver 14.12 Distrib 5.0.22

前提MySQL数据库正常启动

假设两台主机地址分别为

S ervA 10.240.136.9

S ervB 10.240.136.149

1.1配置同步账号

在S ervA上增加一个S ervB可以登录的帐号

MySQL>GRANT all privileges ON *.* TO tongbu'10.240.136.149' IDENTIFIED BY '123456';

在S ervB上增加一个S ervA可以登录的帐号

MySQL>GRANT all privileges ON *.* TO tongbu'10.240.136.9' IDENTIFIED BY '123456';

1.2配置数据库参数

1、 以ro ot用户登录S ervA修改S ervA的my.f文件v i /etc/my.f

在[MyS QLd]的配置项中增加如下配置

1 default-character-set=utf8

2

3 log-bin=MySQL-bin

4

5 relay-log=relay-bin

6

7 relay-log-index=relay-bin-index

8

9 server-id=1

10

11 master-host=10.240.136.149

12

13 master-user=tongbu

14

15 master-passaster-port=3306

18

19 master-connect-retry=30

20

21 binlog-do-db=umsdb

22

23 replicate-do-db=umsdb

24

25 replicate-ignore-tab le=umsdb.boco_tb_menu

26

27 replicate-ignore-table=umsdb.boco_tb_connect_log

28

29 replicate-ignore-tab le=umsdb.boco_tb_data_stat

30

31 replicate-ignore-table=umsdb.boco_tb_log_record

32

33 replicate-ignore-table=umsdb.boco_tb_y.f文件v i /etc/my.f

在[MyS QLd]的配置项中增加如下配置

1 default-character-set=utf8

2

3 log-bin=MySQL-bin

4

5 relay-log=relay-bin

6

7 relay-log-index=relay-bin-index

8

9 server-id=2

10

11 master-host=10.240.136.9

12

13 master-user=tongbu

14

15 master-passaster-port=3306

18

19 master-connect-retry=30

20

21 binlog-do-db=umsdb

22

23 replicate-do-db=umsdb

24

25 replicate-ignore-tab le=umsdb.boco_tb_menu

26

27 replicate-ignore-table=umsdb.boco_tb_connect_log

28

29 replicate-ignore-tab le=umsdb.boco_tb_data_stat

30

31 replicate-ignore-table=umsdb.boco_tb_log_record

32

33 replicate-ignore-tab le=umsdb.boco_tb_ master;

MySQL> start slave;

在S ervA上重启MyS QL

123下一页>>>>这篇文章来自. .  。 service MySQLd restart

1.4查看数据库同步状态

在MySQL命令提示符下执行

MySQL> shoaster to send event

4

5 Master_Host: 10.21.2.90

6

7 Master_User: tongbu

8

9 Master_Port: 3306

10

11 Connect_Retry: 30

12

13 Master_Log_File: localhost-bin.000005

14

15 Read_Master_Log_Pos: 39753882

16

17 Relay_Log_File: localhost-relay-bin.000062

18

19 Relay_Log_Pos: 9826663

20

21 Relay_Master_Log_File: localhost-bin.000005

22

23 Slave_IO_Running: Yes

24

25 Slave_SQL_Running: Yes

26

27 Replicate_Do_DB: bak,umsdb

28

29 Replicate_Ignore_DB:

30

31 Replicate_Do_Table:

32

33 Replicate_Ignore_Table:umsdb.boco_tb_connect_log,umsdb.boco_tb_menu,umsdb.boco_tb_sdb.b oco_tb_data_stat,umsdb.boco_tb_log_record

34

35 Replicate_aster_Log_Pos: 39753882

46

47 Relay_Log_Space: 9826663

48

49 Until_Condition: None

50

51 Until_Log_File:

52

53 Until_Log_Pos: 0

54

55 Master_SSL_Alloeout=seconds

参数含义 当s lave从主数据库读取lo g数据失败后等待多久重新建立连接并获取数据。

于是在配置文件中增加该参数设置为60秒s lave--timeout=60

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

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

当数据同步进程失效后首先手工检查s lave主机当前备份的数据库日志文件在master主机上是否存在在s lave主机上运行MySQL> shoaster to send event

4

5 Master_Host: 10.21.3.240

6

7 Master_User: tongbu

8

9 Master_Port: 3306

10

11 Connect_Retry: 30

12

13 Master_Log_File: MySQL-bin.000001

14

15 Read_Master_Log_Pos: 360

16

17 Relay_Log_File: localhost-relay-bin.000003

18

19 Relay_Log_Pos: 497

20

21 Relay_Master_Log_File:

上一页123下一页>>>>这篇文章来自..  。MySQL-bin.000001

22

23 Slave_IO_Running: Yes

24

25 Slave_SQL_Running: Yes

26

27 Replicate_Do_DB: bak

28

29 Replicate_Ignore_DB:

30

31 Replicate_Do_Table:

32

33 Replicate_Ignore_Table:

34

35 Replicate_aster_Log_Pos: 360

46

47 Relay_Log_Space: 497

48

49 Until_Condition: None

51 Until_Log_File:

52

53 Until_Log_Pos: 0

54

55 Master_SSL_Alloaster主机上的日志文件。

在mas ter上检查当前的数据库列表

MySQL> shoaster logs;

得到的日志列表如下

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

|Lo g_name|F ile_s ize |

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

| lo c alho s t-b in.000001 |495|

| lo c alho s t-b in.000002|3394|

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

如果s lave主机上使用的的Mas ter_Lo g_F ile对应的文件在mas ter的日志列表中存在在s lave主机上开启从属服务器线程后可以自动同步

MySQL> start slave;

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

在s lave主机上运行

MySQL> stop slave;

在mas ter主机上运行

MySQL> stop slave;

在s lave主机上运行

MySQL> load data from master;

MySQL> reset master;

MySQL> start slave;

在mas ter主机上运行

MySQL> reset slave;

MySQL>start slave;

注意 LOAD DATA FROM MASTER 目前只在所有表使用MyI S AM存储引擎的数据库上有效。

上一页123>>>>这篇文章来自..  。

DiyVM:香港VPS五折月付50元起,2核/2G内存/50G硬盘/2M带宽/CN2线路

diyvm怎么样?diyvm这是一家低调国人VPS主机商,成立于2009年,提供的产品包括VPS主机和独立服务器租用等,数据中心包括香港沙田、美国洛杉矶、日本大阪等,VPS主机基于XEN架构,均为国内直连线路,主机支持异地备份与自定义镜像,可提供内网IP。最近,DiyVM商家对香港机房VPS提供5折优惠码,最低2GB内存起优惠后仅需50元/月。点击进入:diyvm官方网站地址DiyVM香港机房CN...

sharktech:洛杉矶/丹佛/荷兰高防服务器;1G独享$70/10G共享$240/10G独享$800

sharktech怎么样?sharktech (鲨鱼机房)是一家成立于 2003 年的知名美国老牌主机商,又称鲨鱼机房或者SK 机房,一直主打高防系列产品,提供独立服务器租用业务和 VPS 主机,自营机房在美国洛杉矶、丹佛、芝加哥和荷兰阿姆斯特丹,所有产品均提供 DDoS 防护。不知道大家是否注意到sharktech的所有服务器的带宽价格全部跳楼跳水,降幅简直不忍直视了,还没有见过这么便宜的独立服...

VirMach:$7.2/年KVM-美元512MB/$7.2/年MB多个机房个机房可选_双线服务器租赁

Virmach对资源限制比较严格,建议查看TOS,自己做好限制,优点是稳定。 vCPU 内存 空间 流量 带宽 IPv4 价格 购买 1 512MB 15GB SSD 500GB 1Gbps 1 $7/VirMach:$7/年/512MB内存/15GB SSD空间/500GB流量/1Gbps端口/KVM/洛杉矶/西雅图/芝加哥/纽约等 发布于 5个月前 (01-05) VirMach,美国老牌、稳...

mysql主机为你推荐
企业虚拟主机企业虚拟主机现在具体是多少价位?域名注册网网站域名申请,在那备案?空间域名空间域名什么意思什么是虚拟主机虚拟主机是什么?apache虚拟主机用的apache配置的虚拟主机,只有第一个能打开,别的是一直等待到超时,但是在服务器能正常打开。虚拟主机mysql在虚拟主机如何打开数据库?深圳虚拟主机深圳市虚拟主机深圳双线虚拟主机深圳主机合租深圳合租主机空推荐有哪?美国免费虚拟主机哪有便宜的美国虚拟主机?246数据美国虚拟主机一年才40元http://246idc.com/host/虚拟主机试用30天虚拟主机返佣是怎么回事?域名网怎样申请域名网站?
买域名 购买域名 php主机租用 网通vps 提供香港vps 鲁诺vps wordpress主机 本网站服务器在美国维护 naning9韩国官网 jsp主机 国外php主机 godaddy续费优惠码 表格样式 个人免费空间 工作站服务器 asp免费空间申请 qq云端 爱奇艺vip免费领取 33456 支付宝扫码领红包 更多