校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > Postgresql 賦予用戶權限和撤銷權限的實例

Postgresql 賦予用戶權限和撤銷權限的實例

熱門標簽:辦公外呼電話系統 合肥公司外呼系統運營商 美容工作室地圖標注 地圖標注和圖片名稱的區別 外呼調研系統 海豐有多少商家沒有地圖標注 漯河外呼電話系統 打電話智能電銷機器人授權 重慶自動外呼系統定制

1、對數據庫授權

postgresql 授權某個數據庫的權限給wang 賬號 使該賬號 只能操作指定DB 不能操作其他DB

alter user wang set default_transaction_read_only=on;
grant all on database test to wang;
grant select on all database test to wang;
grant select on all tables in schema public to wang;   // 起作用的是這句 要進入數據庫test 操作,在那個db環境執行就授哪個db的權

配置權限

ve=# grant all on schema public to foo ;
ve=# grant select,insert,update,delete on test to foo ;
ve=# grant select,insert,update,delete on public.test to foo ;

對表授權

撤銷授權

撤銷對數據庫授權

revoke all on database company from wang;   #撤銷用戶wang對數據庫company 的所有權限
revoke select on all tables in schema public from wang; 

撤銷對表授權

對當前庫中所有表去掉public的所有訪問權限,為了確保除了所有者之外的洽談用戶不能操作這些表。

lyy=# revoke all on test1 from public;
REVOKE
lyy=# revoke all on test2 from public;
REVOKE

去掉對pg_class的訪問權限,為了確保yy用戶不能看到所有表名的列表。

lyy=# revoke all on pg_class from public;
REVOKE
lyy=# revoke all on pg_class from yy;
REVOKE

添加yy用戶對test1表的所屬關系,確保yy用戶對test1表有權限操作

lyy=# ALTER TABLE test1 OWNER TO yy; 
lyy=# \q

用戶管理

/* 賦給用戶表的所有權限 */
GRANT ALL ON tablename TO user; 
/* 賦給用戶數據庫的所有權限 */
GRANT ALL PRIVILEGES ON DATABASE dbname TO dbuser;

/* 撤銷用戶權限 */
REVOKE privileges ON tablename FROM user;

數據庫操作

/* 創建數據庫 */
create database dbname; 

/* 刪除數據庫 */
drop database dbname; 

表操作

/* 增加讓主鍵自增的權限 */
grant all on sequence tablename_keyname_seq to webuser;

 /* 重命名一個表 */
alter table [表名A] rename to [表名B]; 

/* 刪除一個表 */
drop table [表名]; 

/* 在已有的表里添加字段 */
alter table [表名] add column [字段名] [類型]; 

/* 刪除表中的字段 */
alter table [表名] drop column [字段名]; 

/* 重命名一個字段 */
alter table [表名] rename column [字段名A] to [字段名B]; 

/* 給一個字段設置缺省值 */
alter table [表名] alter column [字段名] set default [新的默認值];

/* 去除缺省值 */
alter table [表名] alter column [字段名] drop default; 

/* 插入數據 */
insert into 表名 ([字段名m],[字段名n],......) values ([列m的值],[列n的值],......); 

/* 修改數據 */
update [表名] set [目標字段名]=[目標值] where ...; 

/* 刪除數據 */
delete from [表名] where ...; 

/* 刪除表 */
delete from [表名];

/* 查詢 */
SELECT * FROM dbname WHERE ...;

/* 創建表 */
create table (
  [字段名1] [類型1] primary key,

參考

創建用戶和數據庫

創建用戶

postgres=# create user username with password '****';

創建數據庫

postgres=# create database dbtest owner username; -- 創建數據庫指定所屬者

將數據庫得權限,全部賦給某個用戶

postgres=# grant all on database dbtest to username; -- 將dbtest所有權限賦值給username

導入整個數據庫

psql -U username databasename  /data/dum.sql -- 用戶名和數據庫名

常見報錯 :

1、切換yy用戶失敗

lyy=# \c - yy
FATAL: Peer authentication failed for user "yy"
Previous connection kept

2、用戶yy連接lyyku會報錯

psql -E -U yy -d lyy
Password for user yy:
psql: FATAL: permission denied for database "lyy"
DETAIL: User does not have CONNECT privilege.

原因 :沒有connect權限,那么就授予用戶yy對數據庫lyy的訪問權限

解決辦法 :

#grant connect on database lyy to yy; 

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。

您可能感興趣的文章:
  • 基于PostgreSQL 權限解讀
  • PostgreSQL 默認權限查看方式
  • 查看postgresql數據庫用戶系統權限、對象權限的方法
  • PostgreSQL教程(十二):角色和權限管理介紹
  • 用一整天的時間安裝postgreSQL NTFS權限
  • Postgresql 數據庫權限功能的使用總結

標簽:株洲 錦州 來賓 晉城 珠海 衡陽 蚌埠 烏海

巨人網絡通訊聲明:本文標題《Postgresql 賦予用戶權限和撤銷權限的實例》,本文關鍵詞  Postgresql,賦予,用戶,權限,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Postgresql 賦予用戶權限和撤銷權限的實例》相關的同類信息!
  • 本頁收集關于Postgresql 賦予用戶權限和撤銷權限的實例的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 太谷县| 长垣县| 奇台县| 和龙市| 新沂市| 沾化县| 纳雍县| 东乡县| 牙克石市| 门源| 晋城| 历史| 抚州市| 宁陕县| 肃宁县| 德阳市| 全南县| 安陆市| 米脂县| 张家川| 五原县| 通州市| 盐城市| 乌苏市| 玉林市| 汶川县| 遂宁市| 建德市| 天柱县| 浮梁县| 万荣县| 信阳市| 会昌县| 两当县| 吐鲁番市| 赤峰市| 庐江县| 泰宁县| 临沧市| 西城区| 会宁县|