データベース フラグを構成する

このページでは、Cloud SQL のデータベース フラグを構成する方法について説明し、インスタンスに設定できるフラグの一覧を示します。データベース フラグは、PostgreSQL パラメータの調整、オプションの調整、インスタンスの構成や調整など、多くの操作で使用します。

場合によっては、目的の機能を完全に有効にするために、1 つのフラグの設定だけでなく、別のフラグの設定も必要になることがあります。

データベース インスタンスのフラグを設定、削除、変更すると、データベースが再起動される場合があります。その場合、フラグの値はフラグを削除するまでインスタンスに対して保持されます。インスタンスがレプリカのソースで、インスタンスが再起動されると、レプリカはインスタンスの現在の構成に合わせて再起動します。

データベース フラグを構成する

データベース フラグを設定する

Console

  1. Google Cloud コンソールで新しいコンソール プロジェクトを作成するか、プロジェクト名を選択して既存のプロジェクトを開きます。
  2. インスタンスを開き、[編集] をクリックします。
  3. 下方向にスクロールして [フラグ] セクションを表示します。
  4. それまでにインスタンスで設定したことのないフラグを設定するには、[項目を追加] をクリックし、プルダウン メニューからフラグを選択して、その値を設定します。
  5. [保存] をクリックして、変更を保存します。
  6. [概要] ページの [フラグ] で、変更を確認します。

gcloud

インスタンスを編集します。

gcloud sql instances patch [INSTANCE_NAME] --database-flags=[FLAG1=VALUE1,FLAG2=VALUE2]

このコマンドでは、以前に設定されたすべてのデータベース フラグが上書きされます。これらを保持し、新しいフラグを追加するには、インスタンスに設定するすべてのフラグの値を含めます。具体的に含まれていないフラグはデフォルト値に設定されます。値のないフラグについては、フラグ名の後に等号(=)を付けておきます。

たとえば、log_connections フラグと log_min_error_statement フラグを設定するには、次のコマンドを使用します。

gcloud sql instances patch [INSTANCE_NAME] \
  --database-flags=log_connections=on,log_min_error_statement=error

Terraform

データベース フラグを追加するには、Terraform リソースを使用します。

resource "google_sql_database_instance" "instance" {
  name             = "postgres-instance"
  region           = "us-central1"
  database_version = "POSTGRES_14"
  settings {
    database_flags {
      name  = "log_connections"
      value = "on"
    }
    database_flags {
      name  = "log_min_error_statement"
      value = "error"
    }
    tier = "db-custom-2-7680"
  }
  deletion_protection = "true"
}

変更を適用する

Google Cloud プロジェクトで Terraform 構成を適用するには、次の手順を実行します。

  1. Cloud Shell を起動する
  2. Terraform 構成を適用する Google Cloud プロジェクトを設定します。
        export GOOGLE_CLOUD_PROJECT=PROJECT_ID
        
  3. ディレクトリを作成し、そのディレクトリ内で新規ファイルを開きます。ファイル名には .tf 拡張子が必要です(例: main.tf)。
        mkdir DIRECTORY && cd DIRECTORY && nano main.tf
        
  4. サンプルを main.tf にコピーします。
  5. 環境に適用するサンプル パラメータを確認し、変更します。
  6. 変更を保存するには、Ctrl-x を押してから、y を押します。
  7. Terraform を初期化します。
    terraform init
  8. 構成を確認して、Terraform が作成または更新するリソースが想定どおりであることを確認します。
    terraform plan

    必要に応じて構成を修正します。

  9. 次のコマンドを実行し、プロンプトで「yes」と入力して、Terraform 構成を適用します。
    terraform apply

    Terraform に「Apply complete!」のメッセージが表示されるまで待ちます。

  10. Google Cloud プロジェクトを開いて結果を表示します。Google Cloud コンソールの UI でリソースに移動して、Terraform によって作成または更新されたことを確認します。

変更を削除する

変更を削除するには、次の手順を行います。

  1. 削除の保護を無効にするには、Terraform 構成ファイルで deletion_protection 引数を false に設定します。
    deletion_protection =  "false"
  2. 次のコマンドを実行し、プロンプトで「yes」と入力して、更新された Terraform 構成を適用します。
    terraform apply
  1. 以前に Terraform 構成で適用されたリソースを削除するには、次のコマンドを実行して、プロンプトに「yes」と入力します。

    terraform destroy

REST v1

既存のデータベースのフラグを設定するには:

リクエストのデータを使用する前に、次のように置き換えます。

  • project-id: プロジェクト ID
  • instance-id: インスタンス ID

HTTP メソッドと URL:

PATCH https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id

JSON 本文のリクエスト:

{
  "settings":
  {
    "databaseFlags":
    [
      {
        "name": "flag_name",
        "value": "flag_value"
      }
    ]
  }
}

リクエストを送信するには、次のいずれかのオプションを展開します。

次のような JSON レスポンスが返されます。

データベースにすでに構成されているフラグがある場合は、以前のコマンドを変更するときにそれらのフラグも含めるようにします。PATCH コマンドは、既存のフラグをリクエストで指定されているフラグで上書きします。

REST v1beta4

既存のデータベースのフラグを設定するには:

リクエストのデータを使用する前に、次のように置き換えます。

  • project-id: プロジェクト ID
  • instance-id: インスタンス ID

HTTP メソッドと URL:

PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id

JSON 本文のリクエスト:

{
  "settings":
  {
    "databaseFlags":
    [
      {
        "name": "flag_name",
        "value": "flag_value"
      }
    ]
  }
}

リクエストを送信するには、次のいずれかのオプションを展開します。

次のような JSON レスポンスが返されます。

データベースにすでに構成されているフラグがある場合は、以前のコマンドを変更するときにそれらのフラグも含めるようにします。PATCH コマンドは、既存のフラグをリクエストで指定されているフラグで上書きします。

すべてのフラグをデフォルト値にクリアする

Console

  1. Google Cloud コンソールで新しいコンソール プロジェクトを作成するか、プロジェクト名を選択して既存のプロジェクトを開きます。
  2. インスタンスを開き、[編集] をクリックします。
  3. [データベースのフラグ] セクションを開きます。
  4. 表示されているフラグの横にある X をクリックします。
  5. [保存] をクリックして、変更を保存します。

gcloud

インスタンスのすべてのフラグをデフォルト値にクリアします。

gcloud sql instances patch INSTANCE_NAME \
--clear-database-flags

インスタンスを再起動する確認を求められます。

REST v1

既存のインスタンスのフラグをすべてクリアするには:

リクエストのデータを使用する前に、次のように置き換えます。

  • project-id: プロジェクト ID
  • instance-id: インスタンス ID

HTTP メソッドと URL:

PATCH https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id

JSON 本文のリクエスト:

{
  "settings":
  {
    "databaseFlags": []
  }
}

リクエストを送信するには、次のいずれかのオプションを展開します。

次のような JSON レスポンスが返されます。

REST v1beta4

既存のインスタンスのフラグをすべてクリアするには:

リクエストのデータを使用する前に、次のように置き換えます。

  • project-id: プロジェクト ID
  • instance-id: インスタンス ID

HTTP メソッドと URL:

PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id

JSON 本文のリクエスト:

{
  "settings":
  {
    "databaseFlags": []
  }
}

リクエストを送信するには、次のいずれかのオプションを展開します。

次のような JSON レスポンスが返されます。

データベース フラグの現在の値を表示する

すべての PostgreSQL 設定の現在値を表示するには、psql クライアントでインスタンスにログインし、次のステートメントを入力します。

 SELECT name, setting FROM pg_settings;

サポートされているフラグのみ値を変更できます(下記を参照)。

インスタンスに設定されているデータベース フラグを確認する

Cloud SQL インスタンスに対して設定されているフラグを確認するには:

Console

  1. Google Cloud コンソールで新しいコンソール プロジェクトを作成するか、プロジェクト名を選択して既存のプロジェクトを開きます。
  2. インスタンスを選択して、[インスタンスの概要] ページを開きます。

    設定済みのデータベース フラグは、[データベースのフラグ] セクションに一覧表示されます。

gcloud

インスタンスの状態を取得します。

gcloud sql instances describe INSTANCE_NAME

出力では、データベース フラグは settings の下にコレクション databaseFlags として一覧表示されます。出力でのフラグの表示の詳細については、インスタンスのリソースの表示をご覧ください。

REST v1

インスタンスに構成されているフラグを一覧表示するには:

リクエストのデータを使用する前に、次のように置き換えます。

  • project-id: プロジェクト ID
  • instance-id: インスタンス ID

HTTP メソッドと URL:

GET https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id

リクエストを送信するには、次のいずれかのオプションを展開します。

次のような JSON レスポンスが返されます。

出力で databaseFlags フィールドを探します。

REST v1beta4

インスタンスに構成されているフラグを一覧表示するには:

リクエストのデータを使用する前に、次のように置き換えます。

  • project-id: プロジェクト ID
  • instance-id: インスタンス ID

HTTP メソッドと URL:

GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id

リクエストを送信するには、次のいずれかのオプションを展開します。

次のような JSON レスポンスが返されます。

出力で databaseFlags フィールドを探します。

サポートされているフラグ

以下に記載のないフラグはサポートされていません。

各フラグについては、Cloud SQL でサポートされる値や範囲が、対応する PostgreSQL のパラメータやオプションと異なる場合があります。

A | C | D | E | F | G | H | I | J | L | M | O | P | R | S | T | V | W

Cloud SQL フラグ
有効な値と注意事項
再起動が
必要か
auto_explain.log_analyze boolean
on | off
デフォルトはオフです。
×
auto_explain.log_buffers boolean
on | off
デフォルトはオフです。
×
auto_explain.log_min_duration Integer
-1 ... 2147483647
デフォルト値は -1 です。
×
auto_explain.log_format String
text|xml|json|yaml
デフォルトはテキストです。
×
auto_explain.log_level String
debug5|debug4|debug3|debug2|debug1|debug|
info|notice|warning|log
デフォルトはログです。
PostgreSQL 12 以降でサポートされます。
×
auto_explain.log_nested_statements boolean
on | off
デフォルトはオフです。
×
auto_explain.log_settings boolean
on | off
デフォルトはオフです。
PostgreSQL 12 以降でサポートされます。
×
auto_explain.log_timing boolean
on | off
デフォルトはオンです。
×
auto_explain.log_triggers boolean
on | off
デフォルトはオフです。
×
auto_explain.log_wal boolean
on | off
デフォルトはオフです。
PostgreSQL 13 以降でサポートされます。
×
auto_explain.log_verbose boolean
on | off
デフォルトはオフです。
×
auto_explain.sample_rate Float
0 ... 1
デフォルト値は 1 です。
×
autovacuum boolean
on | off
デフォルトはオンです。
SLA に影響する可能性がある使用状況情報については、Cloud SQL for PostgreSQL インスタンスの運用ガイドラインをご覧ください。
×
autovacuum_analyze_scale_factor float
0100
デフォルト値は 0.1 です。
×
autovacuum_analyze_threshold integer
02147483647
デフォルト値は 50 です。
×
autovacuum_freeze_max_age integer
1000002000000000
デフォルトは値 200000000 です。
SLA に影響する可能性がある使用状況情報については、Cloud SQL for PostgreSQL インスタンスの運用ガイドラインをご覧ください。
autovacuum_max_workers integer
1varies (see note)
デフォルト値は 3 です。
autovacuum_multixact_freeze_max_age integer
100002000000000
デフォルト値は 400000000 です。
SLA に影響する可能性がある使用状況情報については、Cloud SQL for PostgreSQL インスタンスの運用ガイドラインをご覧ください。
autovacuum_naptime integer
12147483
デフォルト値は 60 秒です。
×
autovacuum_vacuum_cost_delay integer
0100 ミリ秒。vacuum_cost_delay 値を使用する場合は -1
PostgreSQL 9.6、10、11 の場合、デフォルト値は 2 ミリ秒です。
×
autovacuum_vacuum_cost_limit integer
0 10000、または vacuum_cost_limit の値を使用する -1
デフォルト値は -1 です。
×
autovacuum_vacuum_scale_factor float
0100
デフォルト値は 0.2 です。
×
autovacuum_vacuum_threshold integer
02147483647
デフォルト値は 50 です。
×
autovacuum_work_mem integer
02147483647 KB、maintenance_work_mem の値を使用する場合は -1
デフォルト値は -1 です。
×
checkpoint_completion_target float
0.01.0
デフォルト値は 0.9 です。
×
checkpoint_timeout integer
3086,400
デフォルト値は 300 秒です。
SLA に影響する可能性がある使用状況情報については、Cloud SQL for PostgreSQL インスタンスの運用ガイドラインをご覧ください。
×
checkpoint_warning integer
02147483647
デフォルト値は 30 秒です。
×
cloudsql.allow_passwordless_local_connections boolean
on | off
デフォルトは off です。
×
cloudsql.enable_auto_explain boolean
on | off
デフォルトは off です。
cloudsql.enable_pgaudit boolean
on | off
デフォルトはオフです。
cloudsql.enable_pg_bigm boolean
on | off
デフォルト: off
cloudsql.enable_pg_cron boolean
on | off
デフォルトは off です。
PostgreSQL 10 以降でサポートされます。
cloudsql.enable_pg_hint_plan boolean
on | off
デフォルトは off です。
cloudsql.enable_pglogical boolean
on | off
デフォルトは off です。
cloudsql.iam_authentication boolean
on | off
デフォルトは off です。
×
cloudsql.logical_decoding boolean
on | off
デフォルトは off です。
cloudsql.pg_shadow_select_role string
×
commit_delay integer
0100000
デフォルト値は 0 です。
×
commit_siblings integer
01000
デフォルト値は 5 です。
×
constraint_exclusion enumeration
partition | on | off
デフォルトはパーティションです。
×
cpu_index_tuple_cost float
0.0inf
デフォルト値は 0.005 です。
×
cpu_operator_cost float
0.0inf
デフォルト値は 0.0025 です。
×
cpu_tuple_cost float
0.0inf
デフォルト値は 0.01 です。
×
cron.database_name String.
PostgreSQL 10 以降でサポートされます。
cron.log_statement boolean
on | off
デフォルトはオンです。
PostgreSQL 10 以降でサポートされます。
cron.log_run boolean
on | off
デフォルトはオンです。
PostgreSQL 10 以降でサポートされます。
cron.max_running_jobs Integer
0 ... varies
デフォルト値は 5 です。
PostgreSQL 10 以降でサポートされます。
cron.log_min_messages String
debug5|debug4|debug3|debug2|debug1|debug|
info|notice|warning|error|log|fatal|panic
デフォルトは警告です。
PostgreSQL 10 以降でサポートされます。
×
cursor_tuple_fraction float
0.01.0
デフォルト値は 0.1 です。
×
deadlock_timeout integer
12147483647 ミリ秒
デフォルト値は 1,000 ミリ秒です。
×
default_statistics_target integer
110000
デフォルト値は 100 です。
×
default_tablespace string ×
default_transaction_deferrable boolean
on | off
デフォルトはオフです。
×
default_transaction_isolation enumeration
serializable | 'repeatable read' | 'read committed' | 'read uncommitted'
デフォルトは「read committed」です。
×
effective_cache_size integer
サイズの範囲は、インスタンスのメモリの 10~70% です。
単位は 8 KB。
デフォルトは VM メモリの 40% です。たとえば、45 GB のインスタンス メモリの場合、デフォルト値は 18537160 KB です。
×
enable_bitmapscan boolean
on | off
デフォルトはオンです。
×
enable_hashagg boolean
on | off
デフォルトはオンです。
×
enable_hashjoin boolean
on | off
デフォルトはオンです。
×
enable_indexonlyscan boolean
on | off
デフォルトはオンです。
×
enable_indexscan boolean
on | off
デフォルトはオンです。
×
enable_material boolean
on | off
デフォルトはオンです。
×
enable_mergejoin boolean
on | off
デフォルトはオンです。
×
enable_nestloop boolean
on | off
デフォルトはオンです。
×
enable_seqscan boolean
on | off
デフォルトはオンです。
×
enable_sort boolean
on | off
デフォルトはオンです。
×
enable_tidscan boolean
on | off
デフォルトはオンです。
×
force_parallel_mode enumeration
off | on | regress
デフォルトはオフです。
×
from_collapse_limit integer
12147483647
デフォルト値は 8 です。
×
geqo boolean
on | off
デフォルトはオンです。
×
geqo_effort integer
110
デフォルト値は 5 です。
×
geqo_generations integer
02147483647
デフォルト値は 0 です。
×
geqo_pool_size integer
02147483647
デフォルト値は 0 です。
×
geqo_seed float
0.01.0
デフォルト値は 0 です。
×
geqo_selection_bias float
1.52.0
デフォルト値は 2 です。
×
geqo_threshold integer
22147483647
デフォルト値は 12 です。
×
gin_fuzzy_search_limit integer
02147483647
デフォルト値は 0 です。
×
gin_pending_list_limit integer
642147483647 KB
デフォルト値は 4096 KB です。
×
hot_standby_feedback boolean
on | off
デフォルトはオフです。
×
huge_pages enumeration
try | off
デフォルトは try です。
idle_in_transaction_session_timeout integer
02147483647 ミリ秒
デフォルト値は 0 です。
×
join_collapse_limit integer
12147483647
デフォルト値は 8 です。
×
lock_timeout integer
02147483647 ミリ秒
デフォルト値は 0 です。
×
log_autovacuum_min_duration integer
02147483647 ミリ秒、無効にする場合は -1
デフォルト値は 0 です。
×
log_checkpoints boolean
on | off
デフォルトはオフです。
×
log_connections boolean
on | off
デフォルトはオフです。
×
log_disconnections boolean
on | off
デフォルトはオフです。
×
log_duration boolean
on | off
デフォルトはオフです。
×
log_error_verbosity enumeration
terse | default | verbose
デフォルトは default です。
×
log_executor_stats boolean
on | off
デフォルトはオフです。
×
log_hostname boolean
on | off
デフォルトはオフです。
×
log_lock_waits boolean
on | off
デフォルトはオフです。
×
log_min_duration_statement integer
-12147483647 ミリ秒
デフォルト値は -1 です。
×
log_min_error_statement enumeration
debug5 | debug4 | debug3 | debug2 | debug1 | info | notice | warning | error | log | fatal | panic
デフォルトはエラーです。
×
log_min_messages enumeration
debug5 | debug4 | debug3 | debug2 | debug1 | info | notice | warning | error | log | fatal | panic
デフォルトは 警告です。
×
log_parser_stats boolean
on | off
デフォルトはオフです。
×
log_planner_stats boolean
on | off
デフォルトはオフです。
×
log_replication_commands boolean
on | off
デフォルトはオフです。
×
log_statement enumeration
none | ddl | mod | all
mod に設定すると、すべてのデータ定義言語(DDL)ステートメントと、INSERTUPDATEDELETETRUNCATE などのデータ修正ステートメントをログに記録します
デフォルトは none です。
×
log_statement_stats boolean
on | off
log_parser_statslog_planner_statslog_executor_stats と一緒に有効にすることはできません。
デフォルトはオフです。
×
log_temp_files integer
02147483647 KB、無効にする場合は -1
デフォルト値は 0 です。
×
maintenance_work_mem integer
10242147483647 KB
デフォルト値は 64 MB です。
×
max_connections integer
14varies (see note)
デフォルト値は、インスタンスのメモリによって異なります。
インスタンス メモリ(GB)デフォルト値
最小(~0.5)25
小(~1.7)50
3.75 - 6100
6 - 7.5200
7.5 - 15400
15 - 30500
30 - 60600
64 - 120800
>=1201,000

レプリカの値は、プライマリの値以上の値である必要があります。プライマリの変更は、プライマリの新しい値よりも小さい値を持つレプリカか、デフォルト値から変更されていないレプリカに反映されます。

max_locks_per_transaction integer
102,147,483,647
デフォルト値は 64 です。

レプリカの値は、プライマリの値以上の値である必要があります。プライマリの変更は、プライマリの新しい値よりも小さい値を持つレプリカか、デフォルト値から変更されていないレプリカに反映されます。

max_logical_replication_workers integer
4 ... 8192
デフォルト値は 4 です。
PostgreSQL 10 以降でサポートされます。

レプリカの値は、プライマリの値以上の値である必要があります。プライマリの変更は、プライマリの新しい値よりも小さい値を持つレプリカか、デフォルト値から変更されていないレプリカに反映されます。

max_parallel_maintenance_workers integer
0varies
デフォルト値は 2 です。
PostgreSQL 11 以降でサポートされます。
×
max_parallel_workers integer
0varies
デフォルト値は 8 です。
PostgreSQL 10 以降でサポートされます。
×
max_parallel_workers_per_gather integer
0varies
デフォルト値は 2 です。
×
max_pred_locks_per_page integer
02147483647
デフォルト値は 2 です。
PostgreSQL 10 以降でサポートされます。
max_pred_locks_per_relation integer
-2147483648 ... 2147483647
デフォルト値は -2 です。
PostgreSQL 10 以降でサポートされます。
max_pred_locks_per_transaction integer
641048576
max_prepared_transactions integer
0varies
メモリサイズ(MB)最大値
0~3,84030,000
3,840~7,68085,000
7,680~15,360200,000
15,360 以上262,000

レプリカの値は、プライマリの値以上の値である必要があります。プライマリの変更は、プライマリの新しい値よりも小さい値を持つレプリカか、デフォルト値から変更されていないレプリカに反映されます。

max_replication_slots integer
10varies
デフォルト値は 10 です。
max_standby_archive_delay integer
02147483647 ミリ秒。待機を継続する場合は -1
×
max_standby_streaming_delay integer
02147483647 ミリ秒。待機を継続する場合は -1
×
max_sync_workers_per_subscription integer
264
max_logical_replication_workers 以下にする必要があります。
×
max_wal_senders integer
10varies
デフォルト値は 10 です。
max_wal_size integer
2 ... 2147483647

バージョン 9.6 の場合は 16 MB(WAL ファイルサイズ)、PostgreSQL 10 以降の場合は 1 MB です。

インスタンス メモリが 3.75 GB 以上の場合、デフォルト値は 1504 MB です。インスタンス メモリが 3.75 GB 未満の場合、デフォルト値は 1 GB です。

SLA に影響する可能性がある使用状況情報については、Cloud SQL for PostgreSQL インスタンスの運用ガイドラインをご覧ください。
×
max_worker_processes integer
8varies
min_parallel_relation_size integer
0 ... 715827882
単位は 8 KB
PostgreSQL 9.6 でのみサポートされます。
×
min_wal_size integer
32 ... 2147483647

バージョン 9.6 の場合は 16 MB(WAL ファイルサイズ)、PostgreSQL 10 以降の場合は 1 MB です。

×
old_snapshot_threshold integer
086400 分、無効にする場合は -1
デフォルト値は -1 です。
parallel_setup_cost float
0.0inf
デフォルト値は 1000 です。
×
parallel_tuple_cost float
0.0inf
デフォルト値は 0.1 です。
×
password_encryption enumeration
md5 | scram-sha-256

デフォルトは PostgreSQL のバージョンによって異なります。PostgreSQL バージョン 10~13 の場合、デフォルトは md5 です。PostgreSQL 14 以降の場合、デフォルトは scram-sha-256 です。

×
pg_bigm.enable_recheck boolean
on | off
×
pg_bigm.gin_key_limit integer
02147483647
×
pg_bigm.similarity_limit float
0.01.0
×
pg_hint_plan.enable_hint boolean
on | off
デフォルトはオンです。
×
pg_hint_plan.debug_print String
off|on|detailed|verbose|0|1||2|3|no|yes|false|true
デフォルトはオフです。
×
pg_hint_plan.parse_messages String
debug5|debug4|debug3|debug2|debug1|debug|
info|notice|warning|error|log
デフォルトは info です。
×
pg_hint_plan.message_level String
debug5|debug4|debug3|debug2|debug1|debug|
info|notice|warning|error|log
デフォルトはログです。
×
pg_hint_plan.enable_hint_table boolean
on | off
デフォルトはオフです。
×
pglogical.batch_inserts boolean
on | off
デフォルトは off です。
pglogical.conflict_log_level String
デフォルトは LOG です。
このフラグには、log_min_messages と同じ値を指定できます。
×
pglogical.conflict_resolution String
error|apply_remote|keep_local|last_update_wins|first_update_wins デフォルトは apply_remote です。
×
pglogical.extra_connection_options String
PostgreSQL のキーワード / 値接続文字列を使用できます。
デフォルトは空の文字列です。
×
pglogical.synchronous_commit boolean
on | off
デフォルトは on です。
pglogical.use_spi boolean
on | off
デフォルトは off です。
pg_stat_statements.max integer
1002147483647
デフォルト値は 5000 です。
pg_stat_statements.save boolean
on | off
デフォルトはオンです。
×
pg_stat_statements.track enumeration
none | top | all
デフォルトは top です。
×
pg_stat_statements.track_utility boolean
on | off
デフォルトはオンです。
×
pgaudit.log enumeration
read | write | function | role | ddl | misc | misc_set | all|none

カンマ区切りのリストを使用して複数のクラスを指定できます。クラスの前に - 記号を付けると、クラスを削除できます。デフォルトは none です。

×
pgaudit.log_catalog boolean
on | off
デフォルトは on です。
×
pgaudit.log_client boolean
on | off
デフォルトは off です。
×
pgaudit.log_level enumeration
debug5 | debug4 | debug3 | debug2 | debug1 | info | notice | warning | error | log
デフォルトは log です。また、pgaudit.log_level は、pgaudit.log_client がオンになっている場合にのみ有効になります。
×
pgaudit.log_parameter boolean
on | off
デフォルトは off です。
×
pgaudit.log_relation boolean
on | off
デフォルトは off です。
×
pgaudit.log_statement_once boolean
on | off
デフォルトは off です。
×
pgaudit.role string
デフォルトはありません。
×
random_page_cost float
0.0inf
デフォルト値は 4 です。
×
session_replication_role enumeration
origin | replica | local
現在のセッションでのみ設定できます
-
replacement_sort_tuples integer
02147483647
×
shared_buffers integer
サイズの範囲は、インスタンスのメモリの 10~60% です。
単位は 8 KB。
デフォルトは、インスタンスの合計 VM メモリの 3 分の 1(MB 単位)です。たとえば、45 GB のインスタンス メモリのデフォルト値は 15085 MB です。
ssl_max_protocol_version enumeration
Postgres 14: 使用する SSL / TLS プロトコルの最大バージョンを設定します。有効な値は ssl_min_protocol_version で、空の文字列を追加することで、任意のプロトコル バージョンを指定できます。
PostgreSQL 12 以降でサポートされます。
×
ssl_min_protocol_version enumeration
Postgres 14: 使用する SSL / TLS プロトコルの最小バージョンを設定します。現在有効な値は、TLSv1TLSv1.1TLSv1.2TLSv1.3 です。
デフォルト値は TLSv1 です。
PostgreSQL 12 以降でサポートされます。
×
standard_conforming_strings boolean
on | off
デフォルトはオンです。
×
synchronize_seqscans boolean
on | off
デフォルトはオンです。
×
tcp_keepalives_count integer
02147483647
デフォルト値は 5 です。
×
tcp_keepalives_idle integer
02147483647
デフォルト値は 60 です。
×
tcp_keepalives_interval integer
02147483647
デフォルト値は 60 です。
×
temp_buffers integer
1001,073,741,823
単位は 8 KB
×
temp_file_limit integer
10485762147483647 KB
デフォルト値は、初期ディスクサイズの 10% です。たとえば、600 GB のディスクの場合、デフォルト値は 10262623 KB です。
×
trace_notify boolean
on | off
デフォルトはオフです。
×
trace_recovery_messages enumeration
debug5 | debug4 | debug3 | debug2 | debug1 | log | notice | warning | error
デフォルトはログです。
×
trace_sort boolean
on | off
デフォルトはオフです。
×
track_activities boolean
on | off
デフォルトはオンです。
×
track_activity_query_size integer
100102400
デフォルト値は 1 KB です。
track_commit_timestamp boolean
on | off
デフォルトはオフです。
track_counts boolean
on | off
デフォルトはオンです。
×
track_functions enumeration
none | pl | all
デフォルトは none です。
×
track_io_timing boolean
on | off
デフォルトはオフです。
×
vacuum_cost_delay integer
0100 ミリ秒
デフォルト値は 0 です。
×
vacuum_cost_limit integer
110000
デフォルト値は 200 です。
×
vacuum_freeze_min_age integer
01000000000
デフォルト値は 50000000 です。
×
vacuum_freeze_table_age integer
02000000000
デフォルト値は 150000000 です。
×
vacuum_multixact_freeze_min_age integer
01000000000
デフォルト値は 5000000 です。
×
vacuum_multixact_freeze_table_age integer
02000000000
デフォルト値は 150000000 です。
×
wal_buffers integer
サイズの範囲は、インスタンスのメモリの 1~5% です。
単位は 8 KB。
デフォルト値は 16 MB です。
wal_compression boolean
on | off
デフォルトはオフです。
×
wal_receiver_timeout integer
02147483647
デフォルトは 60 秒です。

このフラグは、WAL 送信者と WAL 受信者に影響します。適切に設定されていない場合、このフラグは論理レプリケーションと物理レプリケーションに影響します。このフラグは、レプリケーションのパフォーマンスとレイテンシにも影響します。値を 0 にすると、タイムアウト メカニズムが無効になります。単位はミリ秒です。

×
wal_sender_timeout integer
02147483647
デフォルトは 60 秒です。

このフラグは、WAL 送信者と WAL 受信者に影響します。適切に設定されていない場合、このフラグは論理レプリケーションと物理レプリケーションに影響します。このフラグは、レプリケーションのパフォーマンスとレイテンシにも影響します。値を 0 にすると、タイムアウト メカニズムが無効になります。単位はミリ秒です。

×
work_mem integer
642147483647 KB
デフォルト値は 4 MB です。
×

特別なフラグ

bgwriter

PostgreSQL にはバックグラウンド ライター(bgwriter)フラグがあります。このフラグは、新規または変更された共有バッファの書き込みを発行します。この共有バッファをダーティ バッファといいます。クリーンな共有バッファの数が十分でない場合、バックグラウンド書き込みはダーティ バッファをファイル システムに書き込み、クリーンとしてマークします。

bgwriter フラグに関連するフラグは bgwriter_delaybgwriter_lru_maxpages の 2 つです。bgwriter_delay は、バックグラウンド ライターのアクティビティ ラウンド間の遅延をミリ秒(ms)で指定し、bgwriter_lru_maxpages はバックグラウンド ライターによって書き込まれるバッファの数を指定します。

bgwriter フラグのデフォルト値は 200 ms です。ただし、500 GB を超えるソリッド ステート ドライブ(SSD)を選択した場合、bgwriter_delay フラグの値は 50 に設定され、bgwriter_lru_maxpages フラグが 200 に設定されます。

バックグラウンド ライターの詳細については、PostgreSQL のドキュメントをご覧ください。

session_replication_role

PostgreSQL の session_replication_role フラグは論理レプリケーションに使用するように設計されており、個々のセッションの制約トリガーを無効にできます。

このフラグは、制約チェック(ほとんどの場合は外部キー)を回避する一部のメンテナンス オペレーションにも使用できる場合があります。

このフラグは、REPLICATION プロパティが設定されているすべてのユーザーがセッションで設定できます。ユーザーの REPLICATION プロパティは、cloudsql.enable_pglogical または cloudsql.logical_decoding のいずれかのフラグがインスタンスに設定された場合、cloudsqlsuperuser によって設定できます。

このフラグをインスタンス全体に設定することはできません。

トラブルシューティング

問題 トラブルシューティング
タイムゾーンを設定するフラグがない。

Cloud SQL では、PostgreSQL と SQL Server はタイムゾーン フラグをサポートしていないため、ユーザーのニーズに合わせてタイムゾーンを調整できません。タイムゾーンをセッションごとに設定できますが、ログオフすると期限切れになります。

データベースに接続して、ユーザーまたはデータベースごとにデータベースのタイムゾーンを目的のタイムゾーンに設定することをおすすめします。

Cloud SQL for PostgreSQL では、次の項目を指定できます。これらの設定は、セッションを終了しても残り、.conf 構成を再現します。


ALTER DATABASE dbname SET TIMEZONE TO 'timezone';
ALTER USER username SET TIMEZONE TO 'timezone';
    

次のステップ