Postgres その他の情報メモメモ(2002/07/10) 
 

情報メモ

マニュアルをひっくり返すのが面倒なので超らくメモです。 あ、ちなみに Postgres は、ポストグレスと読むらしいです。

ユーザ関連

psql コマンドのアンチョコ(食べれません!)です。

  コマンド
ユーザ登録 create user ユーザ名 [with password パスワード];
ユーザ削除 drop user ユーザ名;
ユーザ一覧の表示 select usename from pg_user;

アクセス権関連

psql コマンドのアンチョコ(食べれません!)です。

   コマンド
特定のユーザに参照のみのアクセス権を設定/解除 grant select on 表名 to ユーザ名; / revoke select on 表名 to ユーザ名;
すべてのユーザにすべてのアクセス権を設定/解除 grant all on 表名 to public; / revoke all on 表名 to public;

データベース関係

psql コマンドのアンチョコ(食べれません!)です。

  コマンド
データベースの初期化 initdb
リスナー起動 postmaster -S -i

リスナー起動に関して

Postgres は、外部からアクセスする場合 5432 ポートを使用します。但し初期設定では、外部からアクセスできないように設定されていますので、定義の修正が必要です。こんな感じ ↓↓

# cd $PGDATA
# vi pg_hba.conf
host all 192.168.0.0 255.255.255.0 trust

表関連

psql コマンドのアンチョコ(食べれません!)です。

  コマンド
表の作成 create table テーブル名(.....);
表の削除 drop table テーブル名;
表一覧の表示 psql# \dt
表の項目一覧の表示 psql# \d addr

データの登録関連

CSVファイルからデータベースにデータを一括登録する事ができます。copyコマンドは、インデックスの再構成およびトリガが効かないようですので、insert の方法を使う必要があります。

☆ copyコマンドを使う方法

psql# copy addr from '/tmp/hoge.csv' using delimiters ',';

☆ insert文+シェルを使う方法

psql# sh insert.sh addr < hoge.csv | psql testdb

psql# cat insert.sh
   while read inputline
      do
         echo "insert into $1 values ("
         echo $inputline
         echo ");"
      done