PostgreSQL 与 Slony-I 的安装配置
Thursday, April 22nd, 2010 @ 11:31 am
SlonyI 的同步测试
~~~~~~~~~~~~~~~
假设前面的操作都已经完成,两个数据库已经开始同步,下面开始测试同步是否正确。
在master库上插入数据
$ psql --username contactuser --dbname contactdb
contactdb=> insert into contact (cid, name, address,phone)
values ((select nextval('contact_seq')),'sync', '3 Street', '(10) 7777777');
contactdb=> \q
在slave库上查看数据是否已经同步过来
$ psql --username contactuser --dbname contactdb_slave contactdb=> select * from contact where name = 'sync'; contactdb=> \q
也可以通过一个脚本来比较两个库
$ vi compare.sh
#!/bin/sh
CLUSTER=contact_cluster
DB1=contactdb
DB2=contactdb_slave
H1=192.168.0.194
H2=192.168.0.199
U=postgres
echo -n "Comparing the databases..."
pg_dump -U $U -h $H1 $DB1 >dump.tmp.1.$$
pg_dump -U $U -h $H2 $DB2 >dump.tmp.2.$$
if diff dump.tmp.1.$$ dump.tmp.2.$$ >dump.diff ; then
echo -e "\nSuccess! Databases are identical."
rm dump.diff
else
echo -e "\nFAILED - see dump.diff."
fi
rm dump.tmp.?.$$
$ ./compare.sh
注意:slave库这时候是只读的,不能做任何修改。
Tags: postgresql, slony
Posted in Technology | No Comments »