#topicpath
----

#contents
***データベースの削除
***データベースの削除 [#nbd5353f]
 dropdb mt <- DB名


***データベースごとのバックアップをとる
***データベースごとのバックアップをとる [#yfa22f00]
postgresにsuして
 pg_dump [DB名] > [バックアップファイル名]
 pg_dump mt > mt.20031231.out

***バックアップファイルから戻す
***バックアップファイルから戻す [#e1b5aad8]
postgresにsuして
 psql -e [importしたいDB名] < [バックアップファイル名]
 psql -e mt < mt.20031231.out
もとからDBは作っておこう。


***pg_ctlの引数とか
***pg_ctlの引数とか [#ud4d42f9]
 pg_ctl -o "-i"  start
のように-o "hoge" でpostmasterのオプションを指定できる。たとえば
 postmaster -i -S
とするには
 pg_ctl -o "-i -S"  start
とすればよい。

***デーモンのリスタート方法
***デーモンのリスタート方法 [#s87c321d]
 > pg_ctl restart


***ユーザの作成
***ユーザの作成 [#o190dfd8]
ユーザ作成は以下のコマンドです。
 > createuser mt <- ユーザID
作成したユーザでログインしようとしたら
 > psql -Umt
 psql: FATAL 1:  IDENT authentication failed for user "mt"
ってなっちゃっいました。他のUNIXユーザでログインすると怒られる設定(?)
だったのでしょうか、Unixユーザを作成してそのユーザにsuしてからpsqlをやるとOKでした。((${PGDATA}/data/pg_hba.confでセキュリティの設定を変えればよかったんだけど))

***DBの作成
***DBの作成 [#tac76598]
データベースの作成は以下のコマンドです。
 > createdb mt <-データベース名
なんですが、文字エンコーディングの指定をしなかったため、DBのエンコーディングがSQL_ASCIIってなってました。これだとJDBC接続をしたときに文字化けが発生してしまいました。結局、DBの作成時のエンコーディングを変更することで対処しました。
 > createdb -E EUC-JP mt




***データベースのリストを表示する
***データベースのリストを表示する [#k97cc8bb]
 > psql -l


***テーブルの作成
***テーブルの作成 [#o90039fd]
 test=# create table test (shainno int,shimei text);


***テーブルの確認
***テーブルの確認 [#t9dd8fcf]
 test=# \d
     List of relations
  Name | Type  |  Owner
 ------+-------+----------
  test | table | postgres
 (1 row)
 
 test=#

***Javaから使う。 [#w279a1cc]
 //  ドライバクラスをロード
 Class.forName("org.postgresql.Driver");
 // データベースへ接続
 Connection connection =
  DriverManager.getConnection(
   "jdbc:postgresql://[IPAddress]:[port]/[DB名]","[ID]","");
でコネクション取得OK.



----
この記事は
#vote(おもしろかった,そうでもない)

#comment

#navi(PostgreSQL)

SIZE(10){現在のアクセス:&counter;}


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS