如何为单个数据库postgresql 9.4中的所有方案安装一次扩展名pg_stat_statements?
CREATE EXTENSIONS pg_stat_statements;
仅在公共架构中安装
UPD: 我解决了这个问题如下:
sudo -u postgres psql -d "template1" -c "CREATE EXTENSION pg_stat_statements;"
sudo -u postgres psql -d "template1" -c "ALTER EXTENSION pg_stat_statements SET SCHEMA pg_catalog;"
新创建的数据库将在pg_catalog方案中有一个扩展,允许此扩展与数据库中的所有其他方案一起使用。
答案 0 :(得分:0)
如给定here,虽然Extension默认安装在Public中,但您可以使用给定的语法在任何Schema上更改并安装它。
从您的问题看来,您似乎需要在所有架构中安装扩展程序....请注意,您不需要在所有架构中(在数据库中)安装给定的扩展程序。 Schema只是所有数据库对象的占位符,但是一旦安装,扩展本身就可用于数据库中的所有模式(并且不需要为每个模式安装)。