読者です 読者をやめる 読者になる 読者になる

CentOS 5.3: Slony-I 2.0を使ってみた (2.1)

2. レプリケーションを一時的に止める方法
3. テーブル追加の方法
については、 slonのデーモンが起動しており、 既に特定のset (idは1とする。) でレプリケーションが行われている状態とする。

2. については、

$ slonik_unsubscribe_set 1 2 | slonik

レプリケーションが停止する。 1 2 はそれぞれ、set の番号と、スレーブのノード番号である。 slonik_subscribe_set でレプリケーションが再開される。

3. については、レプリケーションを実施したまま、 両ノードに create table コマンドで実際にテーブルを追加し、 slon_tool.conf にテーブル名を追加しておく。ただし、新しいテーブルも、既存のset 1 に追加するものとする。 この後、(実は、unsubscribe, subscribe は要らないかもしれないのだが。。)

$ slonik_unsubscribe_set 1 2 | slonik
$ slonik_drop_set 1 | slonik
$ slonik_create_set 1 | slonik
$ slonik_subscribe_set 1 2 | slonik

を実施し、set を設定し直すことで、新たに追加したテーブルがレプリケートされるようになった。slonの再起動等は筆者が試した限りでは不要なようである。また、レプリケーションは作業中に停止するが、DBのサービスへの影響は生じないようだ。。

次回以降、他の項目を試した後、順調なら、TakeOver, FailOver に移ることにする 。。