PostgreSQLのバックアップとリストア

そういえば、インストールと起動だけでバックアップ関係は記録してなかった。

PostgreSQLの場合はpg_dumpを使ってバックアップを取ります。
その前にpostgresユーザーになりましょう。

# su – postgres

データベースtestをバックアップ

# pg_dump test > test.dmp

ここで指定したtest.dmpはデータベースのバックアップ先ファイル名です。

今度は、バックアップしたデータベースを復元(リストア)します。

確認のため先程のtestを消します。

# dropdb test

そして空で作り直します。

# createdb test

リストア

# psql -e test < test.dmp

注意点として、データベースのエンコード情報を合わせて操作してください。特にcreatedbを行うとき等。

MySQLでDB操作

MySQLでデータベースを作成します。

> CREATE DATABASE [DB名];

作成したDBに切り替えた後テーブルを作成します。

CREATE TABLE user_master (
user_id varchar(10) BINARY,
user_name varchar(30) BINARY,
user_age numeric(3),
update datetime,
PRIMARY KEY(user_id)
);

テーブルの削除

> DROP TABLE user_master

データベースのバックアップ
# mysqldump –opt -u [ユーザ名] -p [データベース名] > [バックアップファイル名]

データベースのリストア
# mysql -u [ユーザ名] -p [データベース名] < [バックアップファイル名]

telnetでwebページを見てみる

ここ数ヶ月の出来事ですが、よく開発テストを行う際にtelnetでApacheに接続をおこなっている。目的はmime-type等が正常に応答されているかとか、サーバー変数等でクライアントを識別制限している際にそのクライアントに成りすまして接続して遷移検査をしたりしています。

接続するときは telnet www.xxx.yyy.zzz 80[Enter]のようにコマンドプロンプトから打つだけ、www.xxx.yyy.zzzの部分はIPアドレスです。次にApacheに送るリクエスト情報を入れると応答が帰ってきます。

GET /index.html HTTP/1.1
User-Agent: hogehoge
Host: hogehoge.net

リクエストは上記のような感じです。そのほかにサーバー変数等を追加して送ることも出来ます。またGETの部分をPOSTに変えたり、ヘッダ情報を取得するだけであればHEADを指定して検査を行います。

参考URL
http://ash.jp/net/telnet_http.htm
http://www.nurs.or.jp/~telnet/
http://www.atmarkit.co.jp/fwin2k/win2ktips/231telnetcmd/telnetcmd.html