1、psql 客户端工具
连接数据库:psql -h localhost -p 5432 database_name
获得帮助命令:?
获得语法帮助:\h STATEMENT
通过psql执行sql文件:psql < sql.sql
#常用元命令:
\l 查看有哪些数据库
\c 用户切换数据库
\d 显示每个匹配关系(表、索引、视图、序列)的信息
\d(+) tablename 显示表结构
\timing on 显示SQL执行的时间
\dn 列出所有的schema
\db 显示所有的表空间
\du\dg 列出所有角色或用户
\dp 显示权限分配情况
\x 行列互换显示
\set AUTOCOMMIT off 将自动提交功能关闭
\conninfo 查看连接信息
psql -c ‘\l’
psql -c ‘select * from tablename’
2、创建删除登录数据库
createdb testdb 或者CREATE DATABASE testdb;
dropdb testdb 或者DROP DATABASE testdb;
psql testdb
CRATE SCHEMA sch1 ;
3、创建(修改、删除)用户
create user username ;
\c testdb username
alter user username with password '123456';
\c testdb username
\c testdb postgres
alter user username connection limit 1000;
alter user username valid until '2024-04-24';
alter user username valid until 'infinity' ;
\du
drop user test ;
4、创建(修改、删除)角色
用户与角色唯一区别就是用户默认有登录权限,角色默认没有登录权限。
create role rolename ;
drop role if exists rolename ;
grant selet on table table_name to rolename ;
grant rolename to username ;
5、用户与角色转换
grant rolename to username ;
grant user username in role rolename ;
创建等价用户和角色
CREATE USER username CONNECTION LIMIT 2 PASSWORD 'passwd' VALID UNTIL '2024-05-01' ;
CREATE ROLE rolename CONNECTION LIMIT 2 PASSWORD 'passwd' VALID UNTIL '2024-05-01' LOGIN;
临时赋权(授予用户角色权限)
set role rolename ;
6、PG数据库对象的权限操作
\l 查看用户在数据库中拥有的权限
\dn+ 查看用户在模式中拥有的权限
\dp 查看用户对模式对象(以表为例)拥有的权限
\z 表的权限(\z + tablename)
模式(SCHEMA)对象:可视为一个表的集合,可理解为一个存储目录,包括视图、索引、数据类型、函数和操作符等
非模式对象:其他的数据库对象,如数据库、表空间、用户、权限。
grant all privileges on databsase db_name to rolename with grant option ;
rovke create all on database db_name from rolename cascade ;
grant connection on database db_name to username ;
grant USAGE on SCHEMA public to username ;
grant SELECT on TABLE public.tb1 to username ;
变更表所有者
alter table tb1 ownername to username ;
查看表权限
select * from information_schema.table_privileges
where table_catalog='testdb' and table_schema='public' and table_name='tb1' ;
查看模式,搜索路径,添加新模式到搜索路径
show search_path;
set search_path to public,schema1
最后修改时间:2024-05-15 11:54:05
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




