[pgcluster: 531] FreeBSD 5.2.1 + PGCluster 1.0.7 createdb 失敗
me477494 @ members.interq.or.jp
me477494 @ members.interq.or.jp
2004年 9月 12日 (日) 00:08:38 JST
幾田と申します。
始めまして。
実は、pgcluster をインストールしたのですが
マスタDB上で createdb を実行すると
下記のエラーメッセージが出力されてしまい
困っております。
=====================================================================
./createdb -E EUC_JP -U postgres xxxxx
ERROR: CREATE DATABASE: source database "template1" is being accessed by other users
ERROR: CREATE DATABASE: source database "template1" is being accessed by other users
createdb: database creation failed
=====================================================================
本メーリングリスト過去ログの
2004年6月頃の黄川田様のメールログが
同様の症状だとは思うのですが…
(http://ml.postgresql.jp/pipermail/pgcluster/2004-June/000322.html)
見落としかもしれませんが
解決策が記載されておりませんでした。
誠に恐縮ではございますが
お手隙の際で構いませんので
ご解答を宜しくお願い申し上げます。
具体的な環境は下記の通りです。
▼PGCluster
下記URLから、1.0.7 を取得しました。
http://www.csra.co.jp/~mitani/jpug/pgcluster/stable/pgcluster-1.0.7.tar.gz
▼サーバ構成
◎ロードバランサ
OS :FreeBSD 5.2.1
IP :192.168.0.21
HostName:lb1
◎クラスタ1
OS :FreeBSD 5.2.1
IP :192.168.0.31
HostName:cl1
◎クラスタ2
OS :FreeBSD 5.2.1
IP :192.168.0.32
HostName:cl2
◎クラスタ3
OS :FreeBSD 5.2.1
IP :192.168.0.33
HostName:cl3
◎レプリケーション
OS :FreeBSD 5.2.1
IP :192.168.0.41
HostName:rp1
▼設定ファイル
#============================================================
# Load Balance Server configuration file
#-------------------------------------------------------------
# file: pglb.conf
#============================================================
<Cluster_Server_Info>
<Host_Name> cl1 </Host_Name>
<Port> 5432 </Port>
<Max_Connect> 125 </Max_Connect>
</Cluster_Server_Info>
<Cluster_Server_Info>
<Host_Name> cl2 </Host_Name>
<Port> 5432 </Port>
<Max_Connect> 125 </Max_Connect>
</Cluster_Server_Info>
<Cluster_Server_Info>
<Host_Name> cl3 </Host_Name>
<Port> 5432 </Port>
<Max_Connect> 125 </Max_Connect>
</Cluster_Server_Info>
<Backend_Socket_Dir> /tmp </Backend_Socket_Dir>
<Receive_Port> 5432 </Receive_Port>
<Recovery_Port> 7780 </Recovery_Port>
<Max_Cluster_Num> 350 </Max_Cluster_Num>
<Use_Connection_Pooling> no </Use_Connection_Pooling>
#============================================================
#============================================================
# Cluster DB Server configuration file
#------------------------------------------------------------
# file: cluster.conf
#============================================================
<Replicate_Server_Info>
<Host_Name> rp1 </Host_Name>
<Port> 8777 </Port>
<Recovery_Port> 7778 </Recovery_Port>
</Replicate_Server_Info>
<Recovery_Port> 7779 </Recovery_Port>
<Rsync_Path> /usr/local/bin/rsync </Rsync_Path>
<Rsync_Option> ssh -1 </Rsync_Option>
<When_Stand_Alone> read_only </When_Stand_Alone>
#============================================================
#============================================================
# pg_hba.conf
#============================================================
# TYPE DATABASE USER IP-ADDRESS IP-MASK METHOD
local all all trust
host all all 127.0.0.1 255.255.255.255 trust
host all all 192.168.0.0 255.255.255.0 trust
#============================================================
#============================================================
# postgresql.conf
#============================================================
# デフォルトの設定から変更した個所だけ抜粋しました
tcpip_socket = true
max_connections = 128
shared_buffers = 2048
sort_mem = 2048
wal_sync_method = open_sync
#============================================================
#=============================================================
# PGReplicate configuration file
#-------------------------------------------------------------
# file: pgreplicate.conf
#=============================================================
<Cluster_Server_Info>
<Host_Name> cl1 </Host_Name>
<Port> 5432 </Port>
<Recovery_Port> 7779 </Recovery_Port>
</Cluster_Server_Info>
<Cluster_Server_Info>
<Host_Name> cl2 </Host_Name>
<Port> 5432 </Port>
<Recovery_Port> 7779 </Recovery_Port>
</Cluster_Server_Info>
<Cluster_Server_Info>
<Host_Name> cl3 </Host_Name>
<Port> 5432 </Port>
<Recovery_Port> 7779 </Recovery_Port>
</Cluster_Server_Info>
<LoadBalance_Server_Info>
<Host_Name> lb1 </Host_Name>
<Recovery_Port> 7780 </Recovery_Port>
</LoadBalance_Server_Info>
<Replication_Port> 8777 </Replication_Port>
<Recovery_Port> 7778 </Recovery_Port>
#=============================================================
▼その他
◎起動手順
各サーバに postgres ユーザを作成し
下記、環境変数を設定しております。
setenv PG /usr/local/pgsql
setenv PGPORT 5432
setenv PGLIB $PG/lib
setenv PGDATA $PG/data
setenv LD_LIBRARY_PATH $PG/lib
setenv PATH $PG/bin:"$PATH"
setenv PGCLIENTENCODING SJIS
1.レプリケーションサーバを起動
postgres @ rp1>/usr/local/pgsql/bin/pgreplicate
(設定ファイルを $PGDATA 配下に配置しておりますので
-D オプションは付けておりません)
2.クラスタサーバ起動
postgres @ cl1>/usr/local/pgsql/bin/pg_ctl start -o "-i"
postgres @ cl2>/usr/local/pgsql/bin/pg_ctl start -o "-i"
postgres @ cl3>/usr/local/pgsql/bin/pg_ctl start -o "-i"
3.ロードバランサ起動
postgres @ lb1>/usr/local/pgsql/bin/pglb
◎rsync
下記のPATHにインストールされております。
/usr/local/bin/rsync
postgres ユーザ利用時に限り
各サーバから各サーバへパスフレーズの入力無しに
ログインする事ができるよう設定しております。
(rsync コマンドを実際に実行する事で確認を行いました)
◎ログファイル
============================================================
# pgreplicate.sts
============================================================
Sat Sep 11 17:15:20 2004 port(5432) host:cl1 start use
Sat Sep 11 17:15:20 2004 port(5432) host:cl2 start use
Sat Sep 11 17:15:20 2004 port(5432) host:cl3 start use
Sat Sep 11 17:15:20 2004 cascade(rp1) port(8777) start use
Sat Sep 11 17:15:20 2004 cascade(rp1) port(8777) become top
デバックモードでの確認は
まだ行っておりません。
以上です。
他に必要な情報がございましたら
お教え頂けますでしょうか?
では、お手数で誠に申し訳ございませんが
宜しくお願い申し上げます。
pgcluster メーリングリストの案内