MySQL数据库同步实现方法

MySQL数据库同步实现方法,第1张

MySQL数据库同步实现方法,第2张

开发时要做好MySQL的数据库同步。安装相同的两个系统都是FreeBSD5.4,安装了Apache 2.0.55和PHP 4.4.0。MySQL的版本是4.1.15,是目前最新的版本。
1。安装并配置
两台服务器,每台服务器都安装了MySQL,并且都安装在/usr/local/MySQL目录下(省略的安装步骤请参考相关文档)。两台服务器的IP分别是192.168.0.1和192.168.0.2。我们把192.168.0.2取192.168.0.2作为从服务器,我们采用单向同步,即主数据为主数据,然后从主动去主同步回数据。
两台服务器的配置相同。我们复制关键的配置文件。默认配置文件在/usr/local/MySQL/share/MySQL目录下,分别有my-large.cnf、my-medium.cnf、my-small.cnf等几个编写器。我们只是在测试和使用my-medium.cnf,MySQL安装后,默认的配置文件是在数据库目录中指定的。我们用的是4.1.X,所以配置文件应该在/usr/local/MySQL/var目录下,所以复制配置文件:
CP/usr/local/MySQL/share/MySQL/my-medium . CNF/usr/local。
2。配置主服务器
我们要将192.168.0.1配置为主MySQL服务器,所以要考虑需要同步哪个数据库,用那个用户来同步。为了简单起见,我们这里用root来同步,只需要同步数据库abc。
打开配置文件:
VI/usr/local/MySQL/var/my . CNF
并查找信息:
# requireunique id介于1和2之间32-1 #如果未设置master-host,则默认为1 #但如果静音的server-id = 1//1为主服务器,2为从服务器,则不会充当主服务器。

添加两行:
sql-bin-update-same //同步表单binlog-do-db = abc //要同步的数据库
重启192.168.0.1的MySQL服务器:
/Usr/local/MySQL/bin/MySQL admin shut Usr/local/MySQL/bin/mysqld _ safe-user = MySQL &
3 .配置从服务器
我们的从服务器主要是主动去主服务器同步回数据,我们编辑配置文件:
VI/usr/local/MySQL/var/my . CNF
并找到以下类似信息:
# required unique id between 1 and 2 32-1 #如果未设置master-host,则默认为1 #但如果省略server-id = 1,则不会充当主服务器
在 补充一些信息:
server-id = 2 //这个MySQL是从服务器
Master-host = 192 . 168 . 0 . 1//IP Master-user = root//l主服务器
Master-password= '' //连接到主服务器的密码
master-port= 3306//连接端口
Master-connect-retry = 10//重试次数
replicate-do-db = abc//要同步的数据库[/br

重启192.168.0.2的MySQL服务器:
/usr/local/MySQL/bin/MySQL admin shut down/usr/local/mysqld _ safe-user = MySQL &
4。测试安装
首先检查slave的主机日志:
cat/usr/local/MySQL/var/xxxxx _ err(XXX是主机名)

检查连接是否正常,看到这样的消息就成功了
051031 11:42:40 mysqld started 051031 11:42:41 innodb:started;日志序列号0 43634/usr/local/MySQL/libexec/MySQLd:准备连接。版本:“4.1.15-log”套接字:“/tmp/ MySQL.sock”端口:3306源分布051031 11:42:41[注意]从属SQL线程已初始化,正在日志“第一个”的位置0处开始复制,中继日志。/new4-relay-bin.000001 '位置:4051031 11:43:21[注意]从I/O线程:连接到主I/O线程' root@192.168.0.1:3306 ',在日志' first '中的位置4处开始
查看主中的信息
/usr/local/MySQL/bin/MySQL-u root
查看主状态:
mysql >显示主状态
查看Master下的MySQL进程信息:
MySQL >显示进程列表;
查看从站信息:
/usr/local/MySQL/bin/MySQL-urut
查看从站状态:
mysql >显示从站状态;
在slave下查看MySQL进程信息:
MySQL >显示进程列表;
您可以在master的abc数据库中设置表结构并插入数据,然后检查slave是否同步了这些数据,您可以检查设置是否成功。
最后,有兴趣可以研究一下双击热备份,或者一主多从的同步实现。

位律师回复
DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
白度搜_经验知识百科全书 » MySQL数据库同步实现方法

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情