postgres中的用户与模式

来源:互联网 发布:改变照片底色的软件 编辑:程序博客网 时间:2024/06/05 05:32

pg中的用户与模式是分开的,不像是oracle中用户创建完后与模式是基本同一个东西。

pg中有个默认的模式叫public,是所有用户的默认的模式,如果没有与用户同名的模式存在,那么用户的对象将放置在public模式下面。pg中对象的搜索路径是:

show search_path

""$user",public"

默认是按当前用户名模式,然后在public模式。

所以是建议创建完用户后,在创建一个与用户名相同的模式,这样用户创建的对象就放在用户名相同的模式下面了。

查看当前模式

select current_schema;

修改角色的搜索路径

alter role finona set search_path='finance';

创建用户专享的schema

CREATE SCHEMA sharedschema AUTHORIZATION scarlett;

别的角色指定这个schema后,在创建对象的时候会报schema不存在,这个挺坑爹的

另外在修改搜索路径后,需要在新的会话中设置才能生效

0 0
原创粉丝点击