C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Windowsでのpostgresのwarm standby


(過去ログ 74 を表示中)

[トピック内 1 記事 (1 - 1 表示)]  << 0 >>

■43082 / inTopicNo.1)  Windowsでのpostgresのwarm standby
  
□投稿者/ たんたん (1回)-(2009/10/28(Wed) 16:52:15)

分類:[データベース全般] 

2009/10/30(Fri) 08:50:06 編集(投稿者)

DB:PostgreSQL8.3
OS:WindowsXP同士(テスト)
  WindowsServer2008(本番)

はじめまして。

現在Windows環境でPostgreSQL8.3を使用してwarm standbyを実装したいと思っています。
参考文献として「PostgreSQL徹底入門第2版」を使用していますが、Windows環境ではないことと、実装が1台のマシンで2つのデータベースインスタンスを作成しているため、良く分かりません。
2台のマシンでの実装を予定しています。

テストでは主系のログを吐き出すところまでは出来ました。

テキストには主系の完全バックアップを作るとありますが、作り方がわかりません。
待機系に主系のdataディレクトリをあらかじめコピーしておき、PostgresSQLをインストールするときに「データベースクラスタの初期化」のチェックボックスをはずしたのですが、インストールには成功しましたが、サービスが開始できません。
そこで、主系のpostgres以外のデータベース(現在3つあります)のバックアップを作成し、待機系にリストアしました。
環境の作り方がこれでいいのか、他に完全バックアップの方法があるのか、改善策があったら教えてください。

また、recovery.confに下記のように記してサービスを再起動すると、「pg_stanby: archiveLocation "\\IPアドレス\共有フォルダ\archivedir" does not exist」とメッセージが表示されました(storeは半角では投稿できなかったため、全角としています)。
restore_command = 'pg_stanby-l -t \\IPアドレス\共有フォルダ\trigger \\IPアドレス\共有フォルダ\archivedir %f %p %r 2>>stanby.log'

ネットワークの状態がおかしいのかと思い、下記のように書き換えローカルでテストしようとしたら、うまくいきました。
restore_command = 'pg_stanby-l -t C:\trigger C:\archivedir %f %p %r 2>>stanby.log'

しかし、triggerファイルを置くと、「could not remove "C:\trigger":Permission denied」とエラーが表示され、サービスが開始されません。
postgresSQLのユーザと同じユーザでログインすると削除は行われましたが、サービスが開始されません。
また、リストアにも失敗します。完全バックアップが必要なのでしょうか?

解決策を知っている方、よろしくお願いします。
また、全体的に手順を詳しく知っている方がいらっしゃいましたら、詳細な手順も教えていただけると助かります。

よろしくお願いします。
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -