表 9.66に、セッションおよびシステムの情報を抽出する関数を示します。
本節で列挙されている関数のほかに、同様にシステム情報を提供する統計システムに関連した数多くの関数があります。 28.2.2にさらに情報があります。
表9.66 セッション情報関数
| 関数 説明 | 
|---|
| 
現在のデータベースの名前を返します。
(データベースはSQL標準では「カタログ」と呼ばれています。ですから標準での記述は | 
| クライアントから送信された現在実行中問い合わせのテキスト(複数の文を含むことあります)を返します。 | 
| 
 | 
| 
         サーチパスの先頭にあるスキーマの名前を返します。(サーチパスが空ならNULL値を返します。) これはターゲットスキーマを指定せずに作成されるすべてのテーブルあるいは名前付きのオブジェクトで使われるスキーマです。 | 
| 
        
        
         
現在有効な検索パス中にあるすべてのスキーマの名前を優先順に配列で返します。
(現在のsearch_path設定にある項目で、存在する検索可能なスキーマに関連しないものは無視されます。)
論理値引数が | 
| 現在の実行コンテキストのユーザ名を返します。 | 
| 
現在のクライアントのIPアドレスを返します。UNIXドメインソケット経由の接続なら | 
| 
現在のクライアントのIPポート番号を返します。UNIXドメインソケット経由の接続なら | 
| 
サーバが受け付けている現在の接続のIPアドレスを返します。UNIXドメインソケット経由の接続なら | 
| 
サーバが受け付けている現在の接続のIPポート番号を返します。UNIXドメインソケット経由の接続なら | 
| 現在のセッションに結びついているサーバプロセスのプロセスIDを返します。 | 
| 
        
         指定したサーバプロセスIDによるロック取得をブロックしているプロセスIDを配列で返します。そのようなサーバプロセスが存在しないかあるいはブロックしていない場合は空の配列が返ります。 
あるサーバプロセスが別のサーバプロセスをブロックするのは、ブロックされるプロセスのロック要求と競合するロックを保持している場合(ハードブロック)、あるいは、ブロックされるプロセスのロック要求と競合するロックを待っていて、かつロック待ちキュー内でより前方にいる場合(ソフトブロック)です。
パラレルクエリを使っている場合、実際のロックを子ワーカープロセスが保持または待っている場合であっても、この結果には必ずクライアントから可視のプロセスID(つまり、 頻繁にこの関数を呼び出すとデータベースの性能に影響があるかも知れません。ロックマネージャの共有状態への短期的な排他ロックの取得が必要だからです。 | 
| 
        
         サーバ設定ファイルが最後に読み込まれた時の時刻を返します。 現在のセッションがそのときに活動中だった場合、これはそのセッション自身が設定ファイルを再読み込みした時刻になります。(ですからその結果はセッションによって少し異なるかもしれません。) それ以外の場合は、postmasterプロセスが設定ファイルを再読み込みした時刻になります。 | 
| 
        
        
        
        
        
        
        
         
ログ収集機構が現在使用しているログファイルのパス名を返します。
パスにはlog_directoryディレクトリとログファイルの名前が含まれます。
ログ収集が無効ならば戻り値は | 
| 現在のセッションの一時スキーマのOIDを返します。(一時テーブルをまだ1つも作成しておらず)存在しなければゼロを返します。 | 
| 
        
         指定したOIDが他のセッションの一時スキーマのOIDであれば、真を返します。 (例えば、他のセッションの一時テーブルをカタログ表示から除外したい場合などで有用です。) | 
| 
        
         今のセッションにおいて現在待ち受け中の非同期通知チャンネル名の集合を返します。 | 
| 
        
         非同期通知キューの最大サイズのうち、処理待ちの通知によって占められている現在の割合(0から1まで)を返します。 詳細はLISTENとNOTIFYをご覧ください。 | 
| 
        
         サーバの起動時刻を返します。 | 
| 
        
         指定のサーバプロセスIDによる安全なスナップショットの取得をブロックしているセッションのサーバプロセスIDの配列を返します。そのようなサーバプロセスがないか、ブロックされていない場合は空の配列が返ります。 
 この関数を頻繁に呼び出すと、短時間に述語ロックマネージャの共有状態にアクセスする必要があるため、データベースのパフォーマンスに若干の影響が出るかもしれません。 | 
| PostgreSQLのトリガの現在の入れ子の深さを返します。(直接的であれ間接的であれ、トリガ内部から呼ばれていなければ0を返します)。 | 
| セッションのユーザ名を返します。 | 
| 
 | 
| 
PostgreSQLサーバのバージョンを説明する文字列を返します。
情報はserver_versionからも得られます。
機械読み取り可能なバージョンはserver_version_numを使ってください。
ソフトウェア開発者は文字列バージョンを解析するのではなく、 | 
current_catalog、current_role、current_schema、current_user、session_userおよびuserはSQLにおいて特殊な構文上の地位を持っており、最後に括弧を付けずに呼び出さなければなりません。
PostgreSQLではcurrent_schemaの場合括弧を使用することができますが、他は使えません。
    
session_userは、通常、現在のデータベース接続を開始したユーザです。しかし、スーパーユーザはこの設定をSET SESSION AUTHORIZATIONを使用して変更することができます。
current_userは、権限の検査に適用されるユーザ識別子です。
通常はセッションユーザと同じですが、SET ROLEを使用して変更可能です。
SECURITY DEFINER属性を持つ関数の実行中にも変わります。
Unix用語で言うと、セッションユーザは「実ユーザ」で、現在のユーザは「実効ユーザ」です。
current_roleとuserはcurrent_userの同義語です。
(標準SQLではcurrent_roleとcurrent_userを区別していますが、PostgreSQLではユーザとロールを1種類のエンティティに統合しているため、両者に区別はありません。)
   
表 9.67に列挙した関数を使用して、ユーザはオブジェクトのアクセス権限をプログラムから問い合わせることができます。
権限についての詳細は、5.7を参照してください。
これらの関数では権限を検査されるユーザは名前かOID(pg_authid.oid)で指定できます。
名前がpublicとして与えられるとPUBLIC仮想ロールの権限が検査されます。
また、user引数を完全に省略できます。この場合はcurrent_userを指定したと見なされます。
検査されるオブジェクトも名前かOIDで指定できます。
名前で指定する時は関連するスキーマ名を含んでも構いません。
対象となるアクセス権限はテキスト文字列で指定します。その文字列はオブジェクト型(たとえばSELECT)へと評価されなければならない適切なアクセスキーワードで指定します。
その権限が許可オプションで保持されるかどうかをテストするためにオプションでWITH GRANT OPTIONを権限型に追加できます。
また、複数の権限型をカンマで区切って列挙できます。この場合はどれかの権限が保持されていれば結果は真となります。
(権限文字列は大文字小文字の区別がなく、追加の空白を権限文字列の間に入れることができますが、権限名の中に入れることはできません。)
SELECT has_table_privilege('myschema.mytable', 'select');
SELECT has_table_privilege('joe', 'mytable', 'INSERT, SELECT WITH GRANT OPTION');
表9.67 アクセス権限照会関数
| 関数 説明 | 
|---|
| 
        
         
ユーザがテーブルのどれか1つの列に対して権限を所有しているか?
テーブル全体あるいは列レベルの権限が少なくとも1つの列に与えられていれば成功します。
可能な権限型は | 
| 
        
         
ユーザがテーブルの指定された(1つの)列に対して権限を所有しているか?
テーブル全体あるいはその列に対して列レベルの権限が与えられていれば成功します。
名前かアトリビュート番号( | 
| 
        
         
ユーザはデータベースに対する権限があるか?
可能な権限型は | 
| 
        
         
現在のユーザは外部データラッパーに対する権限があるか?
可能な権限型は | 
| 
        
         
ユーザは関数に対する権限があるか?
可能な権限型は 
関数をOIDではなく名前で指定する場合、 
SELECT has_function_privilege('joeuser', 'myfunc(int, text)', 'execute');
 | 
| 
        
         
ユーザは言語に対する権限があるか?
可能な権限型は | 
| 
        
         
ユーザーに構成パラメータに対する権限があるか?
パラメータ名では大文字と小文字が区別されません。
使用可能な権限タイプは | 
| 
        
         
ユーザはスキーマに対する権限があるか?
可能な権限型は | 
| 
        
         
ユーザはシーケンスに対する権限があるか?
可能な権限型は | 
| 
        
         
ユーザは外部サーバに対する権限があるか?
可能な権限型は | 
| 
        
         
ユーザはテーブルに対する権限があるか?
可能な権限型は | 
| 
        
         
ユーザはテーブル空間に対する権限があるか?
可能な権限型は | 
| 
        
         
ユーザにデータ型に対する権限があるか?
可能な権限型は | 
| 
        
         
ユーザにロールに対する権限があるか?
可能な権限型は | 
| 
        
         現在のユーザと環境のコンテキストにおいて、指定のテーブルに対して行単位セキュリティは有効か? | 
アクセス権限のカタログ表現であるaclitem型で利用可能な演算子を表 9.68に示します。
アクセス権限値を解釈する方法に関する情報は5.7をご覧ください。
  
表9.68 aclitem演算子
表 9.69にaclitem型を管理する追加の関数を示します。
   
表9.69 aclitem関数
| 関数 説明 | 
|---|
| 
        
         
 | 
| 
        
         
行の集合として | 
| 
        
         
与えられた属性で | 
表 9.70に、特定のオブジェクトが、現行スキーマの検索パスにおいて可視かどうかを判別する関数を示します。 例えば、あるテーブルを含むスキーマが検索パス内に存在し、検索パス内の前方に同じ名前のテーブルがない場合、そのテーブルは可視であると言います。 つまり、これは、テーブルが明示的なスキーマ修飾なしで名前によって参照可能であるということです。 ですから全ての可視テーブルの名前を列挙するには以下のようにします。
SELECT relname FROM pg_class WHERE pg_table_is_visible(oid);
関数および演算子では、パスの前方に同じ名前かつ同じ引数のデータ型を持つオブジェクトが存在しなければ、検索パス内のオブジェクトは可視と言えます。 演算子クラスと(演算子)族では、名前と関連するインデックスアクセスメソッドが考慮されます。
表9.70 スキーマ可視性照会関数
これらの関数は全て、検査するオブジェクトを識別するために、オブジェクトのOIDを必要とします。
オブジェクトを名前でテストする場合、OID別名型(regclass、regtype、regprocedure、regoperator、regconfig、またはregdictionary)を使用すると便利です。
例えば、以下のようにします。
SELECT pg_type_is_visible('myschema.widget'::regtype);
ただし、このようなやり方でスキーマ修飾されていない型名をテストしても、あまり意味がないことに注意してください。名前が認識されれば、それは必ず可視ということになります。
表 9.71に、システムカタログから情報を抽出する関数を列挙します。
表9.71 システムカタログ情報関数
| 関数 説明 | 
|---|
| 
        
         型OIDと型修飾子で決まるデータ型のSQL名を返します。 型修飾子が不明な場合はNULLを型修飾子に渡してください。 | 
| 
        
         
指定されたエンコード名を、一部のシステムカタログテーブルで使用されている内部識別子を表す整数に変換します。
不明なエンコード名が指定された場合は | 
| 
        
         システムカタログテーブル内のエンコーディングの内部識別子として使用されている整数を、読み取り可能な文字列に変換します。 無効なエンコーディング番号が指定されている場合は、空の文字列を返します。 | 
| 
        
         
PostgreSQLシステムカタログ中に存在する外部キー関係を記述するレコードの集合を返します。
 | 
| 
        
         制約を作成したコマンドを再構築します。 (これは逆コンパイルで構成したもので、元のコマンドのテキストではありません。) | 
| 
        
         列のデフォルト値のような、システムカタログに格納された内部表現式を逆コンパイルします。 式に変数が含まれている場合は2番目の引数として参照されているリレーションのOIDを指定してください。変数が含まれていない場合は、ゼロを渡しておけば十分です。 | 
| 
        
         
関数あるいはプロシージャの作成コマンドを再構築します。
(これは逆コンパイルによる再構築で、元のコマンドのテキストではありません。)
結果は完全な | 
| 
        
         
 | 
| 
        
         
 | 
| 
        
         
 | 
| 
        
         
インデックスを作成するコマンドを再構築します。
(これは逆コンパイルによる再構築で、元のコマンドのテキストではありません。)
 | 
| 
        
         
サーバが認識するSQLキーワードを記述するレコードの集合を返します。
 | 
| 
        
         ルールを作成するコマンドを再構築します。 (これは逆コンパイルによる再構築で、元のコマンドのテキストではありません。) | 
| 
        
         
列に関連するシーケンスの名前を返します。
列に関連するシーケンスが存在しなければ、NULLを返します。
列がIDENTITY列の場合、関連するシーケンスはIDENTITY列に対して内部的に作成されたシーケンスとなります。
SERIAL型( 典型的な使用法はIDENTITY列またはSERIAL列のシーケンスの現在値を読み取ることです。例を示します。 
SELECT currval(pg_get_serial_sequence('sometable', 'id'));
 | 
| 
        
         拡張統計情報オブジェクトを作成するコマンドを再構築します。 (これは逆コンパイルによる再構築で、元のコマンドのテキストではありません。) | 
| 
        
 トリガを作成するコマンドを再構築します。 (これは逆コンパイルによる再構築で、元のコマンドのテキストではありません。) | 
| 
        
         OIDで指定されるロール名を返します。 | 
| 
        
         
ビューあるいはマテリアライズドビューの背後にある | 
| 
         
ビューあるいはマテリアライズドビューの背後にある | 
| 
         
ビューあるいはマテリアライズドビューの背後にある | 
| 
        
         
インデックス列が名前付きのプロパティを持つかどうかを検査します。
共通のインデックス列プロパティは表 9.72に列挙されています。
(拡張アクセスメソッドはインデックスに対して追加のプロパティ名を持てることに注意してください。)
プロパティ名が不明あるいは特定のオブジェクトに適用されない場合、OIDあるいは列番号が有効なオブジェクトを特定しない場合は | 
| 
        
         
インデックスが名前付きのプロパティを持つかどうかを検査します。
共通のインデックスプロパティは表 9.73に列挙されています。
(拡張アクセスメソッドはインデックスに対して追加のプロパティ名を持てることに注意してください。)
プロパティ名が不明あるいは特定のオブジェクトに適用されない場合、OIDが有効なオブジェクトを特定しない場合は | 
| 
        
         
インデックスアクセスメソッドが名前付きのプロパティを持つかどうかを検査します。
アクセスメソッドプロパティは表 9.74に列挙されています。
プロパティ名が不明あるいは特定のオブジェクトに適用されない場合、OIDが有効なオブジェクトを特定しない場合は | 
| 
        
         
 | 
| 
        
         
指定されたGUCに関連付けられたフラグの配列を返します。
存在しない場合は | 
| 
        
         
指定したテーブル空間に格納されるオブジェクトを持つデータベースのOIDの集合を返します。
この関数が何らかの行を返すならば、そのテーブル空間は空ではなく、削除できません。
特定のオブジェクトがそのテーブル空間にあるかどうかを確認するには、 | 
| 
        
         テーブル空間が配置されているファイルシステムのパスを返します。 | 
| 
渡された値のデータ型のOIDを返します。
これはトラブル解決作業、または動的にSQL問い合わせを生成するのに便利です。
この関数は、OIDの別名型である 以下に例をあげます。 
SELECT pg_typeof(33);
 pg_typeof
-----------
 integer
SELECT typlen FROM pg_type WHERE oid = pg_typeof(33);
 typlen
--------
      4
 | 
| 
        
         
渡された値の照合順序の名前を返します。
値は必要ならば引用符付きでスキーマ修飾されます。
引数式から照合順序が生じなければ、 例を挙げます。 
SELECT collation for (description) FROM pg_description LIMIT 1;
 pg_collation_for
------------------
 "default"
SELECT collation for ('foo' COLLATE "de_DE");
 pg_collation_for
------------------
 "de_DE"
 | 
| 
        
         
テキスト形式のリレーション名をOIDに変換します。
同様の結果はその文字列を | 
| 
        
         
テキスト形式の照合順名をOIDに変換します。
同様の結果はその文字列を | 
| 
        
         
テキスト形式のスキーマ名をOIDに変換します。
同様の結果はその文字列を | 
| 
テキスト形式の演算子名をOIDに変換します。
同様の結果はその文字列を | 
| 
        
         
テキスト形式の演算子名(パラメータ型付き)をOIDに変換します。
同様の結果はその文字列を | 
| 
テキスト形式の関数名またはプロシージャ名をOIDに変換します。
同様の結果はその文字列を | 
| 
        
         
テキスト形式の関数名またはプロシージャ名(引数型付き)をOIDに変換します。
同様の結果はその文字列を | 
| 
テキスト形式のロール名をOIDに変換します。
同様の結果はその文字列を | 
| 
テキスト形式の型名をOIDに変換します。
同様の結果はその文字列を | 
データベースオブジェクトを再構築(逆コンパイル)する関数の多くにオプションのprettyフラグがあり、trueなら結果が「整形」されるようになっています。
整形によって不必要な括弧が抑止され、見やすさのために空白は追加されます。
整形形式は見やすいですが、デフォルト形式は将来のバージョンのPostgreSQLでも同じように解釈される可能性が高いです。
ですから、整形された出力をダンプ目的で使わないでください。
pretty引数にfalseを渡すとパラメータを省略したとの同じ結果が得られます。
  
表9.72 インデックス列の属性
| 名前 | 説明 | 
|---|---|
| asc | 前方スキャンで列は昇順にソートされるか | 
| desc | 前方スキャンで列は降順にソートされるか | 
| nulls_first | 前方スキャンで列はNULLを先頭にしてソートするか | 
| nulls_last | 前方スキャンで列はNULLを最後にしてソートするか | 
| orderable | 列は定義済みのソート順を所有しているか | 
| distance_orderable | 列は「距離」の演算子の順序に従ってスキャンできるか、例えば ORDER BY col <-> 定数など | 
| returnable | 列の値をインデックスオンリースキャンで返すことができるか | 
| search_array | 列は col = ANY(array)の検索をネイティブにサポートしているか | 
| search_nulls | 列は IS NULLおよびIS NOT NULLの検索をサポートしているか | 
表9.73 インデックスの属性
| 名前 | 説明 | 
|---|---|
| clusterable | インデックスを CLUSTERコマンドで使うことができるか | 
| index_scan | インデックスは通常の(ビットマップでない)スキャンをサポートしているか | 
| bitmap_scan | インデックスはビットマップスキャンをサポートしているか | 
| backward_scan | スキャンの途中でスキャン方向を変更できるか(マテリアライゼーションを必要とせずにカーソルの FETCH BACKWARDをサポートするため) | 
表9.74 インデックスアクセスメソッドの属性
| 名前 | 説明 | 
|---|---|
| can_order | アクセスメソッドは CREATE INDEXにおいてASC、DESCおよび関連するキーワードをサポートしているか | 
| can_unique | アクセスメソッドは一意インデックスをサポートしているか | 
| can_multi_col | アクセスメソッドは複数列にまたがるインデックスをサポートしているか | 
| can_exclude | アクセスメソッドは排他制約をサポートしているか | 
| can_include | アクセスメソッドが CREATE INDEXのINCLUDE句をサポートしているか | 
表9.75 GUC Flags
| フラグ | 説明 | 
|---|---|
| EXPLAIN | このフラグを持つパラメータは EXPLAIN (SETTINGS)コマンドに含まれます。 | 
| NO_SHOW_ALL | このフラグを持つパラメータは SHOW ALLコマンドから除外されます。 | 
| NO_RESET_ALL | このフラグを持つパラメータは RESET ALLコマンドから除外されます。 | 
| NOT_IN_SAMPLE | このフラグを持つパラメータはデフォルトでは postgresql.confに含まれません。 | 
| RUNTIME_COMPUTED | このフラグを持つパラメータは実行時に計算されます。 | 
表 9.76にデータベースオブジェクトの識別とアドレスに関連する関数を示します。
表9.76 オブジェクト情報とアドレスの関数
表 9.77に示される関数は、COMMENTコマンドによって以前に保存されたコメントを抽出します。 指定されたパラメータに対するコメントが存在しない場合、NULL値が返されます。
表9.77 Comment Information Functions
表 9.78で示される関数はサーバトランザクション情報をエクスポートできる形式で提供します。 これら関数の主な使用目的は2つのスナップショット間でどのトランザクションがコミットされたのかを特定するためです。
表9.78 トランザクションIDとスナップショット情報関数
| 関数 説明 | 
|---|
| 現在のトランザクションIDを返します。 現在のトランザクションに(データベース更新をまったく行わなかったために)IDがなければ新規に割り当てます。 | 
| 
        
         
現在のトランザクションIDを返します。もしまだ割り当てられていなければ | 
| 
        
         
最近のトランザクションのコミット状態について報告します。
トランザクションが最近のもので、システムがそのトランザクションのコミット状態を保持している場合は、トランザクションの状態は | 
| 
        
         どのトランザクションIDがin-progressなのかを表示するデータ構造である現在のsnapshotを返します。 | 
| 
        
         スナップショットに含まれるin-progressのトランザクションIDの集合を返します。 | 
| 
        
         
スナップショットの | 
| 
        
         
スナップショットの | 
| 
        
         このスナップショットによると与えられたトランザクションIDが可視か(すなわちスナップショットが取得される前に完了していたか)? この関数は副トランザクションIDに対しては正しい答えを返さないことに注意してください。 | 
内部トランザクションID型(xid)は32ビット幅なので40億トランザクション毎にラップします。
とは言っても、表 9.78に示される関数はインストレーションの生涯にわたってラップしないxid8型の64ビット形式を使用しており、必要に応じてxidにキャストして変換できます。
これらの関数で使用されるデータ型、pg_snapshotはある特定の時間におけるトランザクションIDの可視性に関する情報を格納します。
構成要素は表 9.79に記載されています。
pg_snapshotのテキスト表現はxmin:xmax:xip_list10:20:10,14,15はxmin=10, xmax=20, xip_list=10, 14, 15であることを意味します。
   
表9.79 スナップショット構成要素
| 名前 | 説明 | 
|---|---|
| xmin | 現在実行中で最も小さいトランザクションID。 xminより小さい全てのトランザクションはコミットされて可視となっているか、またはロールバックされて消滅しています。 | 
| xmax | 完了した最も大きなトランザクションIDの一つ大きなID。 xmaxと等しいかより大きい全てのトランザクションIDはスナップショットの時点で未完了であり、従って不可視です。 | 
| xip_list | スナップショット時の実行中のトランザクションです。 xmin <= で、このリストにないトランザクションIDはスナップショット時点ですでに完了しており、コミット状態によって可視あるいはデッドのどちらかです。
リストには副トランザクションのトランザクションIDは含まれません。 | 
PostgreSQLリリースの13より前ではxid8型がなく、これらの関数の変種は、64ビットのXIDを表現するためにbigintを、スナップショットデータ型に対応する別のtxid_snapshot型を使っていました。
これらの古い関数ではtxidが名前に含まれています。
過去互換性のためにこれらはまだサポートされていますが、将来のリリースでは削除されるかも知れません。
表 9.80を参照してください。
   
表9.80 廃止予定のトランザクションIDとスナップショット情報関数
表 9.81に示す関数はいつ過去のトランザクションがコミットされたかの情報を提供します。 track_commit_timestamp設定オプションが有効のときにだけ、かつそれが有効になった後にコミットされたトランザクションについてのみ意味のある情報を提供します。
表9.81 コミットされたトランザクションに関する情報関数
表 9.82に示す関数は、カタログのバージョンなどといったinitdbの実行時に初期化される情報を表示します。
それらはまた、先行書き込みログとチェックポイント処理についての情報も示します。
この情報はクラスタ全体に渡るもので、どれか1つのデータベースに特有のものではありません。
これらの関数はpg_controldataアプリケーションと同じ情報源から、ほぼ同じ情報を提供します。
   
表9.82 制御データ関数
表9.83 pg_control_checkpointの出力列
| 列名 | データ型 | 
|---|---|
| checkpoint_lsn | pg_lsn | 
| redo_lsn | pg_lsn | 
| redo_wal_file | text | 
| timeline_id | integer | 
| prev_timeline_id | integer | 
| full_page_writes | boolean | 
| next_xid | text | 
| next_oid | oid | 
| next_multixact_id | xid | 
| next_multi_offset | xid | 
| oldest_xid | xid | 
| oldest_xid_dbid | oid | 
| oldest_active_xid | xid | 
| oldest_multi_xid | xid | 
| oldest_multi_dbid | oid | 
| oldest_commit_ts_xid | xid | 
| newest_commit_ts_xid | xid | 
| checkpoint_time | timestamp with time zone | 
表9.84 pg_control_systemの出力列
| 列名 | データ型 | 
|---|---|
| pg_control_version | integer | 
| catalog_version_no | integer | 
| system_identifier | bigint | 
| pg_control_last_modified | timestamp with time zone | 
表9.85 pg_control_init Output Columns
| 列名 | データ型 | 
|---|---|
| max_data_alignment | integer | 
| database_block_size | integer | 
| blocks_per_segment | integer | 
| wal_block_size | integer | 
| bytes_per_wal_segment | integer | 
| max_identifier_length | integer | 
| max_index_columns | integer | 
| max_toast_chunk_size | integer | 
| large_object_chunk_size | integer | 
| float8_pass_by_value | boolean | 
| data_page_checksum_version | integer | 
表9.86 pg_control_recoveryの出力列
| 列名 | データ型 | 
|---|---|
| min_recovery_end_lsn | pg_lsn | 
| min_recovery_end_timeline | integer | 
| backup_start_lsn | pg_lsn | 
| backup_end_lsn | pg_lsn | 
| end_of_backup_record_required | boolean |