フリーソフトで作る小規模グループウェアーサーバー
TurboLinux7Serverを利用した内部用サーバーの構築と運用

PostgreSQLの管理と運用

 /homeにpostgresという名の管理用ディレクトリを作成します。

コマンドライン

・/homeにpostgresというディレクトリを作成(make directory)

 #mkdir /home/postgres

・所有者とグループをpostgresに変更(change owner)

 #chown postgres:postgres /home/postgres

・属性を755に変更(change mode)

 #chmod 755 /home/postgres

※GUIモードの操作は下記のとおり

・[プロパティ]→[許可情報]の所有者欄でユーザー、グループともにpostgresを入力し、postgresユーザーにディレクトリを扱える権限を付します。

・同様に/home/postgresにDB_backupsというディレクトリを作成
 上記手順で作成した/home/postgres/DB_backupsディレクトリにリモートでバックアップを作成します

データベースのバックアップ


データベース(masters)をdumpファイルにバックアップします。

 postgresでloginします

・DB(masters)からバックアップ(dumpファイル)作成
$pg_dump –f /home/postgres/DB_backups/(月日など).dump masters

・これで/home/postgres/DB_backupsにバックアップファイルが作成されますので、FTPで手元に持ってきて、他の場所にコピーしてください。

※インストール時にproftpd(FTPデーモン)を自動起動させる設定は済んでいますので、FTP経由でdumpファイルを手元に入手できます。

データベースのメンテナンス


 PostgreSQLは削除・更新のたびに古いデータがゴミとなって残ります。そのゴミを取り除かないと検索・更新がどんどん遅くなってしまいますので、バキュームと呼ばれる作業をし、DBをゴミのない状態に保ちます。

・ユーザーをpostgresに変更します。

 #su - postgres

・バキュームをかけ、DBのゴミを削除します。

 $psql –c “vacuum;” masters

 VACUUMと表示されれば完了です。

バックアップファイルからのデータベース修復(他のPCへ移動する場合も同手順)

 事前にとっておいたデータベースのバックアップ(dump)ファイルをCD-ROMに保存

・CD-ROMをマウント

 #mount /mnt/cdrom

・ユーザーをpostgresに変更

 #su - postgres

・元からあるデータベースの削除

 $dropdb masters

・新規にデータベースを作成

 $createdb masters

・バックアップファイルからDBへの書き戻し

 $psql –e masters < /mnt/cdrom/[バックアップファイル名].dump

ここまでで書き戻し終了です。

・root(スーパーユーザー)に戻る

 $exit

・フロッピーのマウントを解除

 #umount /mnt/cdrom


FirstUpload 10/03/07-16:19 : LastUpdate 10/03/07-20:53

Copyright © フリーソフトで作る小規模グループウェアーサーバー All Rights Reserved.
Script by Petit CMS Designed by info-cache.com | admin