2012-03-09 7 views

答えて

6

私が知っている限り、pg_dumppg_dumpallは、このような制限をサポートしていません。

あなたあなたは、このようなダンプから除外することができ、専用のスキーマに、すべての機能を移動することができ:

pg_dump mydb -N function_schema > mydump.sql 

あなたはそのルートを行く場合は、あなたがこのようなmigrate functions to another schema次のことができます。

ALTER FUNCTION myfunc() SET SCHEMA function_schema; 

この場合、search_pathpostgresql.conf(データベースとロールのデフォルトの場合もあります)に変更します

SET search_path = public,function_schema [,more schemas] 

代替として、あなたはそれらのデフォルトスキーマpublicに機能を残すことができるし、他の何かのためにそのスキーマを使用していません。オブジェクトを1つ以上の別々のスキーマに入れます。 PostGisのアップグレードが容易になるはずです。

ではなく、オブジェクトのスキーマをpublicにするのが一般的です。私は通常、デフォルトでpublicにインストールされているPostGisやその他の拡張機能のために予約しています。すべてのアプリケーションに専用のスキーマを使用するのが好きです。バックアップや許可の許可を含むメンテナンスが容易になります。

+1

または、pg_restoreの--list関連オプションを使用して、生成されたリストから項目を手動でトリミングできます。 –

+0

これを例に見てください:http://stackoverflow.com/a/31043192/985 –

関連する問題