欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

mysql主从服务器同步心得体会第1/2页

程序员文章站 2023-12-01 23:24:04
原来看过mysql同步数据的实现,可是自己还没有动过手,今天没什么事就玩一玩,正好在旁边有另一台空电脑,都在同一个路由器下。哈哈,正好。 不过首先在找配置文件上就把我卡了好...

原来看过mysql同步数据的实现,可是自己还没有动过手,今天没什么事就玩一玩,正好在旁边有另一台空电脑,都在同一个路由器下。哈哈,正好。

不过首先在找配置文件上就把我卡了好久,由于我用的是xampp安装包,在xampp/mysql/bin目录下看始终没有找到my.cnf,在c:windows目录下也没有发现,



如上图,看到的只有一个”my”的快速拨号的东西,又不是文件,怎么都打不开。后来找了好久才在网上看到说遇到这种情况需要先打开editplus,然后再从editplus里面打开这个文件,果然。。。

配置就不详说了,网上有很多,我原来也转过一篇。

今天主要是讲一下配置主从服务器需要注意的地方:

首先需要做主从的数据库必须一模一样,如果你的数据库已经运行过一段时间,建议你先删除所有的二进制日志文件,包括索引xxx.index这个文件,否则重启mysql会出错。

从服务器上已经删除掉所有的二进制日志文件,当然包括一个master.info这个文件。这个文件是用来记录主服务器上过来的日志文件和记录位置的。如果你不删除它,它还会按照之前的记录来做,所以会出问题,我在这里浪费了很多时间了。

主服务器诊断:

show processlist;显示所有的进程。

show master status;显示主服务器的日志文件和指针位置。

mysql> show master status;
+——————+———-+—————-+——————+
file position binlog_do_db binlog_ignore_db
+——————+———-+—————-+——————+
mysql-bin.000001 603 videocommunity
+——————+———-+—————-+——————+
1 row in set (0.00 sec)

mysql> show master status\g
*************************** 1. row ***************************
file: mysql-bin.000001
position: 603
binlog_do_db: videocommunity
binlog_ignore_db:
1 row in set (0.00 sec)

如上图,mysql-bin.000001是日志记录文件,603是指针位置。

从服务器(slave)上诊断:

mysql> show slave status\g
*************************** 1. row ***************************
slave_io_state: waiting for master to send event
master_host: master1
master_user: root
master_port: 3306
connect_retry: 60
master_log_file: mysql-bin.000001
read_master_log_pos: 603
relay_log_file: master2-relay-bin.000053
relay_log_pos: 740
relay_master_log_file: mysql-bin.000001
slave_io_running: yes
slave_sql_running: yes
replicate_do_db: videocommunity
replicate_ignore_db:
replicate_do_table:
replicate_ignore_table:
replicate_wild_do_table:
replicate_wild_ignore_table:
last_errno: 0
last_error:
skip_counter: 0
exec_master_log_pos: 603
relay_log_space: 740
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: 0
1 row in set (0.00 sec)

确认以上信息和主服务器是否一致。

1