スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

PostgreSQLのバックアップ

データベース一覧表示

PostgreSQLのバックアップを行う前に、どんなデータベースが存在するのか一覧を表示させるコマンドから。

$ psql -U postgres

で、ログインし、

# \l


            List of databases
Name | Owner | Encoding
----------------+--------------+----------
postgres | postgres | UTF8
template0 | postgres | UTF8
template1 | postgres | UTF8
(3 rows)

データベース一覧が表示されます。

万が一、ログインパスワードを忘れて、管理者権限を持っているなら、

$ vi /var/lib/pgsql/data/pg_hba.conf

で設定ファイルを開き、認証方式をtrustに変更して、

local all all trust

PostgreSQLを再起動してやれば強引にログインできる方法も…

$ service postgresql restart

データベースをバックアップ/リストアする

データベースのバックアップは、以下のコマンドで行う事ができます。

$ pg_dump -U オーナー名 データベース名 > バックアップファイル名

上記データベース一覧で、template0データベースのバックアップを行う場合は、以下のようになります。

$ pg_dump -U postgres template0 > db.dump

リストアの方法は、まずデータベースを作成し、リストアのコマンドを実行します。

$ createdb データベース名

$ psql -f バックアップファイル名 データベース名   

データベースをまるっと全部バックアップ/リストアする

上記バックアップだと、個別にバックアップが取れますが、リストア時にデータベースを作成しなおす必要があります。一覧に表示されたデータベースを丸ごとバックアップするには、少々面倒です。以下のコマンドを使うと、全てをバックアップすることができます。

$ pg_dumpall > バックアップファイル名

このdumpファイルには、保存されたデータベースの作成等のコマンドも含まれているため、リストアは、

$ psql -f バックアップファイル名

で可能です。

スポンサーサイト

Postgresql導入ガイド

1.インストストール手順
GUIメニューの[アプリケーション] - [ソフトウェアの追加/削除] でパッケージマネージャを起動します。
ブラウズタブのサーバーを選択し、PostgreSQLデータベースにチェックを付け「適用」ボタンを押下します。

これでインストールは完了です。
2.PostgresSQLの設定
/var/lib/pgsql/data配下にあるpg_hba.confファイルを開きます。
行末にある部分を以下のように(ident sameuser→trust)修正します。
# TYPE  DATABASE    USER        CIDR-ADDRESS          METHOD

# "local" is for Unix domain socket connections only
#local all all ident sameuser
local all all trust
# IPv4 local connections:
#host all all 127.0.0.1/32 ident sameuser
host all all 127.0.0.1/32 trust
# IPv6 local connections:
#host all all ::1/128 ident sameuser
host all all ::1/128 trust


3.PostgresSQLの起動
GUIメニューの[システム] - [管理] - [サービス]よりサービスの設定画面を起動し、postgresqlにチェックが付いていることを確認します。

4.コマンドラインからのアクセス
初期状態では、データベース作成権限である「postgres」に変更して操作する必要があります。

# su - postgres



・現在利用可能なデータベース名、所有者、およびエンコーディングの一覧を表示

$ psql -U postgres -l


表示結果
        List of databases
Name | Owner | Encoding
-----------+----------+----------
postgres | postgres | UTF8
template0 | postgres | UTF8
template1 | postgres | UTF8
(3 rows)


・データベースの作成

$ createdb test


・データベースの接続

$ psql test


接続結果
Welcome to psql 8.1.11, the PostgreSQL interactive terminal.

Type: \copyright for distribution terms
\h for help with SQL commands
\? for help with psql commands
\g or terminate with semicolon to execute query
\q to quit

・データベースの切断

# \q

プロフィール

白鯖

Author:白鯖
安い寄せ集めの部品で構築し、CentOS5をインストールしました。主に、Webサーバ、アプリケーションサーバとして運用中。ハードの知識はあまり無いプログラマですが、全部自前で作るのは、手間はかかるけど、レン鯖より面白いです。

ハードウェア構成

カテゴリー
最近の記事
最近のコメント
最近のトラックバック
月別アーカイブ
Max TDP控え目なCPU
安くて静音なクーラー
検索フォーム
ユーザータグ
RSSフィード
はてな
スポンサード リンク
おすすめ書籍
twitter
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。