[pgsql-jp: 35048] 複合型と特別型の表のバックアップ

Katsuhiko Okano k_okano @ po.ntts.co.jp
2005年 3月 15日 (火) 13:29:14 JST


岡野と申します。
バックアップ・リカバリの手順とスクリプトを作っています。
変更のあった部分だけを取得できればと考えています。

まず、バックアップすべきファイルの一覧をシステムカタログpg_class
から取得しようとしました。
例えば
>SELECT oid,relfilenode,relname,relkind FROM pg_class;
で
>db01=# SELECT oid,relfilenode,relname,relkind FROM pg_class;
>   oid   | relfilenode |             relname             | relkind
>---------+-------------+---------------------------------+---------
>   17173 |       17173 | sql_packages                    | r
>   17182 |       17182 | pg_toast_17178_index            | i
>   17180 |       17180 | pg_toast_17178                  | t
>     376 |           0 | pg_xactlock                     | s
>(略)
となります。

relkind='r' か 'i' か 'S' か 'v' か 't'のファイルをバックアップすればよいと
思ったのですが、「PostgreSQL 8.0.0 文書」の「41.9. pg_class」には
>r = 通常のテーブル、i = インデックス、S = シーケンス、v = ビュー、c = 複合型、s = 特別、t = TOAST テーブル
と、複合型と特別という見慣れない型も載っていました。

以下をご存知のかたがいらっしゃいましたら教えてください。
1)relkind = 's' のオブジェクトは常にディスク上のファイルを持たないのでしょうか?
2)pg_xactlock以外にrelkind = 's'となるオブジェクトはあるのでしょうか?
 ユーザ(管理者)が作成することは出来るのでしょうか?
3)relkind = 'c' はpg_typeに入るだけなのでディスク上のファイルを持たない
 という考えであっているでしょうか?
4)他にバックアップ・リストアについてアドバイスがあればお願いします :-)

-- 
----------------------------------------
Katsuhiko Okano
k_okano _at_ po.ntts.co.jp
NTT Software Corp. (division "NBRO-PT6")





pgsql-jp メーリングリストの案内