ユーザ用ツール

サイト用ツール


postgres

差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

次のリビジョン
前のリビジョン
postgres [2008/11/27 07:12] – 外部編集 127.0.0.1postgres [2020/01/16 02:45] (現在) nullpon
行 3: 行 3:
  
 ===== インストール ===== ===== インストール =====
-[[MacOSX|MacOSXへのインストール]]+ 
 +<code> 
 +brew install postgresql 
 +</code>
  
 ===== ユーザとロール ===== ===== ユーザとロール =====
-MySQL等のユーザという概念は、ロールに統合されている。PostgresではCREATE ROLEとCREATE USERは同じだが、CREATE ROLEの場合デフォルトでログイン不能のユーザを作成するので注意が必要。 
  
-パスワド認証を行う設定をしていると、パスワドが空ではログインを許されない。+ルは権限の主体。ユはログイン可ロールの一種とう位置付け。CREATE USERはCREATE ROLEの別名で、LOGIN属性付でCREATE ROLEを行う
  
 ===== ユーザとパスワードによるログイン ===== ===== ユーザとパスワードによるログイン =====
行 47: 行 49:
 テーブル毎に、テーブルを作成する物理的な場所を指定できる。よく使われるテーブルはHDDではなくSSDに作成するといったことができる。 テーブル毎に、テーブルを作成する物理的な場所を指定できる。よく使われるテーブルはHDDではなくSSDに作成するといったことができる。
  
 +==== データ使用量を調べる ====
 +
 +deleteした領域は解放されず残っている。DBのレコード数のわりにデータ使用量が多い時は vaccum すべし 
 +
 +<code sql>
 +SELECT  pg_size_pretty(pg_database_size('database_name'));
 +</code>
 +
 +<code sql>
 +vacuum analyze schema_name.table_name;
 +
 +vacuum full schema_name.table_name;
 +</code>
 +
 +
 +===== プロセス =====
 +
 +==== 実行中のプロセス一覧 ====
 +
 +<code>
 +SELECT * FROM pg_stat_activity;
 +</code>
 +
 +==== 実行中のプロセスをkillする ====
 +
 +実行中のジョブを検索してpidを調べて、以下を実行
 +
 +<code>
 +SELECT pg_cancel_backend(<pid>);
 +</code>
 +
 +===== lastval =====
 +
 +mysqlのlast_insert_idに相当
 +
 +<code>
 +SELECT lastval();
 +</code>
 +
 +===== truncate =====
 +
 +truncateがトランザクション内で実行される。
 +
 +<code sql>
 +test=# begin;
 +BEGIN
 +test=# select count(1) from xxx.items;
 +     100
 +test=# truncate test.hoge;
 +test=# select count(1) from xxx.items;
 +     0
 +test=# rollback;
 +ROLLBACK
 +test=# select count(1) from xxx.items;
 +     100
 +</code>
 +
 +`delete from xxx;` の代わりに有り難く利用しよう。deleteの場合、データ領域を解放しないが、truncateは解放するので削除後にvacuumする必要がなくなる。
 +
 +===== copy =====
 +
 +データをcsvに出力したり、csvから読み込んだりできる。メタコマンド版と通常コマンド版がある
 +
 +  * メタコマンド版: クライアント側のファイルシステムで入出力される
 +  * コマンド版: サーバ側のファイルシステムに入出力される
 +
 +dockerで動かしている場合などは、ホスト側でpsqlを立ち上げて、メタコマンドで実行するとホスト側とやりとりできる
  
postgres.1227769968.txt.gz · 最終更新: 2008/11/27 07:12 by 127.0.0.1