说明:
192.168.1.181 的synctest同步到192.168.1.182的synctest
提醒:数据库同步和mysql master/slave不相同,具体一点:当master和slave同步数据后,在slave上手动删除几条记录,master上是不会将删除的记录同步过来的,但数据库中的同步就可以将删除的记录同步过来!
步骤如下:
1:安装mysql、启动mysql省略
2:在181 和 182上分别创建数据库
见附件!
3:在库中创建表,分别导入不同的数据,然后使用sja测试同步结果,为了简单,我使用tpcc load数据!在两台机器上都安装tpcc
tar zxvf \~percona-dev_perconatools_tpcc-mysql-r48.tgz
cd \~percona-dev
cd perconatools/
mv tpcc-mysql/ /root/
cd /root/tpcc-mysql/
cd src/
make
即可生成tpcc_load 和 tpcc_start,见附件
生成表,并生成索引,步骤如下:
另一台机器上如下:
4:下面分别使用tpcc_load 在181 和 182 上load数据,为了测试方便, 在181 和 182 上load如下:
和
5:下载sja,并移动到/usr/local目录下!
解压
6:同步测试:
在182机器上创建user用于数据同步用
修改配置文件:
执行[root@master sja]# ./sja datasync-alltables.xml 报错,见附件!
解决方法:
[root@master var]# cd /tmp
[root@master tmp]# ln -s /var/lib/mysql/mysql.sock mysql.sock
[root@master tmp]# ll mysql.sock
lrwxrwxrwx 1 root root 25 Jul 28 16:10 mysql.sock -> /var/lib/mysql/mysql.sock
-
[root@master sja]# cat sja-sample1.xml.right
-
<job version="8.21">
-
<syncjob>
-
<abortonerror abort="no" />
-
<fkcheck check="no" />
-
<twowaysync twoway="no" />
-
<source>
-
<host>localhost</host>
-
<user>root</user>
-
<pwd></pwd>
-
<port>3306</port>
-
<database>synctest</database>
-
<compressed>1</compressed>
-
</source>
-
<target>
-
<host>192.168.1.182</host>
-
<user>synctestuser</user>
-
<pwd>synctestuser</pwd>
-
<port>3306</port>
-
<database>synctest</database>
-
<compressed>1</compressed>
-
</target>
-
<tables all="yes" />
-
</syncjob>
-
</job>
同步到过程见附件!
......
.......
阅读(1190) | 评论(0) | 转发(0) |