アルプスシステムインテグレーション株式会社[ALSI(アルシー)]
キーワード検索
キーワード
製品名
カテゴリ
含まないキーワード
よく検索されるキーワード
カテゴリ検索
FAQ
タイトル
[ILP共通]データベースのバックアップ/リストア手順
No.3685  日付:2017-01-24 17:00:00

回答

1.データベースのバックアップ手順


※ 手動で行う場合は、1-2のpg_dump.exeが含まれる行をコマンドプロンプトから実行するだけで結構です。

1-1. C:\Users\<ユーザーID>\AppData\Roaming\postgresql\pgpass.conf

  をテキストエディタで開いて、以下一行を追記します。

   localhost:ポート:*:postgres:パスワード

 ※ ポート(デフォルト:5432)とパスワード(デフォルト:password)は利用情報にあわせて記載してください。
 ※ "パスワード"はPostgreSQLインストール  時に指定したユーザー"postgres"のパスワードです。
 ※ フォルダ/ファイル(\postgresql\pgpass.conf)が存在しない場合は新規作成してください。PostgreSQLパスワード認証用のファイルです。
 ※ 例: localhost:5432:*:postgres:password


1-2. 任意のファイル名のbatファイルを生成し以下のように記入してください。

 set APPDATA=C:\Users\<ユーザーID>\AppData\Roaming
 set USERPROFILE=C:\Users\<ユーザーID>
 "C:\Program Files\PostgreSQL\9.2\bin\pg_dump.exe" --username "postgres" -Fc --blobs --file "d:\PGBack\ILPDB-bkup%date:~0,4%%date:~5,2%%date:~8,2%.ctar" ISDB
cd d:\PGBack
forfiles /d -180 /c "cmd /c del @fname.ctar"

  ※ 各ディレクトリやファイル名はご利用環境に合わせ変更してください
  ※ 日次実行する場合は、バックアップファイル名を"backup%date:~0,4%%date:~5,2%%date:~8,2%.ctar"の
      ように指定すると便利です。(実行されるマシンのコマンドプロンプトで「date /t」を実行した際
      yyyy/mm/dd形式で表示される場合です。その他の場合は適宜変更してください)
  ※ forfilesで定期削除ができます。上記は180日経過したものを削除する場合の例です。
  ※ データベース名「ISDB」については、SecureDevice Standard/Professional の場合、
   データベース名が「SDCDB」になります。

1-3. 作成したbatファイルを実行します。 

 ※注意事項
 ・ スナップショットバックアップですので、Apache、Tomcatサービスの停止をしなくても実行可能ですが
     停止されることを推奨しております。
 ・ タスクスケジューラ等にbatファイルを登録して定期的実行することができますが、「操作の編集」では
     「開始(オプション)(T):」にバッチを置いたディレクトリを指定してください。

2.データベースのリストア手順


2-1. 「Apache」のサービスを停止し、次に「Tomcat」のサービスを停止します。

2-2. 任意のファイル名のbatファイルを生成し以下のように記入してください。  

  "C:\Program Files\PostgreSQL\9.2\bin\pg_restore.exe" --username postgres --dbname ISDB --clean --verbose "d:\PGBack\ILPDB-bkupyyyymmdd.ctar

   ※ 各ディレクトリやリストア元のファイル名はご利用環境、目的に合わせ変更してください


2-3.作成したbatを実行してください。 

  ※ 途中ユーザー"postgres"のパスワードを求められた場合はPostgreSQLインストール時に指定した
      ユーザー"postgres"のパスワードを入力します。
     (1-1項が設定されている環境では必要ありません)


2-4. 「Tomcat」のサービスを起動します。次に「Apache」のサービス を起動します。


3.データベースの初期化


   リストアする際はDB内のデータを削除してからリストアが始まりますが、DBサイズが大きい場合は、
   予めDBを初期化しておくと削除する時間を節約することができます。

   その他リストア後、何らかの原因で、システムが動作しない場合などは、以下の手順で初期化後
   リストアを行うことで正常稼働できる場合があります。


3-1. 添付「CreateNullDB.bat」を任意フォルダに保存し、環境に合わせ編集します。

      主な変更箇所
        set PG_HOME="C:/Program Files/PostgreSQL/9.2"
        set DP_PORT=5432
        set DP_USER=postgres
        set DP_DB_NAME=ISDB


3-2. 「Apache」のサービスを停止し、次に「Tomcat」のサービスを停止します。


3-3.  pgAdmin Ⅲを起動し、ログオン後、PostgreSQL 9.2(localhost:5432)-データベース-ISDB
       を右ボタンクリックし[プロパティ]より"ISDB"->ISDB_old"など任意名前に変更します。


3-4. CreateNullDB.batを実行します。

###############################
# Create empty ISDB
###############################
##########################
# 接続設定
##########################

PostgreSQL Home : "C:/Program Files/PostgreSQL/9.2"
~(中略)~
Create ISDB successful.
続行するには何かキーを押してください . . .


3-5. 前項に沿ってリストアを行ってください。

3-6. 「Tomcat」 「Apache」の順でサービスを起動します。


対象製品 InterSafe DeviceControl, InterSafe IRM, InterSafe SecureDevice
対象バージョン 4.x以降 対象ビルド  
添付ファイル CreateNullDB.bat
一般情報
アンケートにご協力ください