LoginSignup
4
2

More than 5 years have passed since last update.

【Redshift】大量の一時スキーマを消したい

Posted at

一時テーブルと一時スキーマの関係

データベースを使っているとき、処理速度を上げるための手っ取り早い方法として
一時テーブルを作成することがある。
CREATE TEMPORARY TABLE table_name ...

この時、pg_tempで始まる一時スキーマが作成され
一時テーブルはこのpg_tempスキーマ内に作成される。

そして、ユーザーのコネクションが切断されると
当該ユーザーが作成した一時テーブルはすべて削除される
・・・が、pg_tempスキーマは残り続ける

pg_tempスキーマを消したい

SQLクライアントによるが、pg_tempスキーマが見えるものがある。
そうすると、このpg_tempスキーマが一時テーブルを作成するたびに
どんどん増殖していき、スキーマが大量に存在するデータベースが
めでたく出来上がってしまう。
※バッチ処理で一時テーブル多用するとえらいことになる

【結論】pg_tempスキーマは消去不可能

SuperUserでDROP SCHEMA することもできず、
Google先生に聞いても似たような事象に遭遇せず、
頼みの綱のAWSサポートに問い合わせしたところ
以下の回答をいただきました。

  • pg_tempスキーマは基本的に消去不可
  • 同様の問い合わせ多数あり
  • 製品担当部署もこの問題を認識
  • 対応可否と対応時期は未定

サポートの人、ありがとうございました!

4
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
2