Slony-I(http://www.slony.info/ )是基于PostgreSQL的异步机制做的复制技术 , 其同步速度非常快。是主从架构。在在 线备 份方面用的比 较 广泛。 |
主要部件: ・Cluster ・Node ・Replication Set ・Origin, Providers and Subscribers ・slon daemons ・slonik configuration processor |
没事稍微学习了一下,自己没有去配置实践,完全是纸上谈兵。下面是学习的流水帐。凑字凑字!!!
下载 安装后,先建立主从 测试 数据 库 。 |
$ createdb -h 192.168.1.5 testdb1 |
$ createdb -h 192.168.1.6 testdb2 |
配置配置文件slon_tools.conf设定例子 |
# 设 置 replication名。任意写 |
$CLUSTER_NAME = 'hogehoge_replication'; |
# 各个节点的连接设定 |
add_node(node => 1, |
host => '192.168.1.5', |
dbname => 'testdb1', |
port => 5432, |
user => 'postgres', |
password => 'hogepass'); |
add_node(node => 2, |
host => '192.168.1.6', |
dbname => 'testdb2', |
port => 5432, |
user => 'postgres', |
password => 'hogepass'); |
#replication关联设 置 |
# set名。任意都可以,但不能和其他的set名重复 |
"set1" => { |
# set ID。也是不要重复就可 |
"set_id" => 1, |
# 设置表,序列的 各个ID的开始 值。 |
"table_id" => 1, |
"sequence_id" => 1, |
# replication表 |
#有主键的表列 |
"pkeyedtables" => [ |
'test_table1', |
'test_table2', |
], |
# 设 置 没有主 键 但 设 置了唯一性 check的表和索引。 |
"keyedtables" => { |
'test_table3' => 'index_on_table3', |
'test_table4' => 'index_on_table4', |
}, |
# 设置既没有主键也没有唯一性 check的表 |
"serialtables" => [ |
'test_table5', |
], |
#replication序列 |
"sequences" => [ |
'test1_id_seq', |
], |
设定好后,执行$ slonik_init_cluster如果没有问题就是安装好了。 |
启动daemon |
$ slon_start 1 |
$ slon_start 2 |
创建set |
$ slonik_create_set set1 | slonik $ slonik_subscrible_set 1 2 | slonik |
设定解除 |
$ slonik_uninstall_nodes | slonik |
解除set |
$ slonik_drop_set 1 | slonik |
恢复处理 |
$ slonik_unsubscribe_set 1 2 | slonik |
$ slonik_subscribe_set 1 2 | slonik |
主从换位 |
$ slonik_move_set set1 node1 node2 | slonik |
failover |
$ slonik_failover node1 node2 | slonik |