PostgreSQL 用户管理
创建
create user foo encrypted password '123456';
一般创建用户时都会使用密码。
修改
密码
alter user po encrypted password '123456' ;
有效期
有效时间到“2016-12-31”
alter user foo valid until '2016-12-31' ;
永久有效
alter user foo valid until 'infinity' ;
连接数
限制10个
alter user foo connection limit 10 ;
取消限制
alter user foo connection limit -1 ;
管理权限
alter user foo createuser;
alter user foo createrole;
alter user foo createdb;
alter user foo superuser;
alter user foo nocreateuser;
alter user foo nocreaterole;
alter user foo nocreatedb;
alter user foo nosuperuser;
删除
drop user foo ;
数据库权限
增加
增加foo用户对该数据库public模式下所有表的select权限
test=# grant select on all tables in schema public to foo ;
增加foo用户对该数据库public模式下所有函数的执行权限
test=# grant execute on all functions in schema public to foo ;
增加foo用户对该数据库某个表的权限,权限可以一个或多个
test=# grant select,insert,update,delete on public.test to foo ;
增加foo用户对该数据库某个模式的权限,权限有all,create,usage 。
test=# grant all on schema public to foo ;
删除
删除foo用户对该数据库test表的select权限
test=# revoke select on test FROM foo ;