2017-12-20 20 views
1

Google Cloud SQLで動作するPostgreSQLインスタンスを使用しています。Google Cloud SQLでpg_stat_statementsをリセット

テーブルを改良してインデックスを追加したため、pg_stat_statementsをリセットしようとしています。私は次のエラーメッセージを取得

select pg_stat_reset(); 

::私はメインpostgresユーザーを使用して、次のコマンドを実行しようとすると、残念ながら、

ERROR: permission denied for function pg_stat_reset 

を私はそれを管理するサービスだということを理解し、いくつかのものはする必要がありますpg_statをリセットしてデータベースを調整できるようにすることが重要です。基本的に変更を加えた場合は、変更前のデータから出力が汚染されないように、pg_statをリセットする必要があります。マネージドサービスであっても、このようなチューニングは不可能です。

これはGoogle Cloud SQLでどのように動作させることができますか?

ありがとうございました。

答えて

0

私はこれについてGoogleCloudサポートを依頼することができましたし、ここで彼らが戻って得たものです:

pg_stat_reset()は、スーパーユーザー権限を必要とします。ただし、 CloudSQLではサポートされていません。代わりにpg_stat_statements_reset() 関数を使用して統計をリセットすることをお勧めします。これを行うには、Cloud Console(つまり、デフォルトのPostgreSQLユーザ)から を作成するか、または この関数に対するEXECUTE権限は、デフォルトの PostgreSQLユーザによって次のコマンドを実行して付与する必要があります:grant execute on function pg_stat_statements_reset )〜に;

このコマンドは、postgresユーザーを使用して正常に使用できました。この関数は、pg_stat_statementが有効になっているデータベースで実行する必要があることに注意してください。

関連する問題