檢視postgresql資料庫使用者系統許可權、物件許可權的方法
PostgreSQL簡介
PostgreSQL是一種特性非常齊全的自由軟體的物件-關係型資料庫管理系統(ORDBMS),是以加州大學計算機系開發的POSTGRES,4.2版本為基礎的物件關係型資料庫管理系統。POSTGRES的許多領先概念只是在比較遲的時候才出現在商業網站資料庫中。PostgreSQL支援大部分的SQL標準並且提供了很多其他現代特性,如複雜查詢、外來鍵、觸發器、檢視、事務完整性、多版本併發控制等。同樣,PostgreSQL也可以用許多方法擴充套件,例如通過增加新的資料型別、函式、操作符、聚集函式、索引方法、過程語言等。另外,因為許可證的靈活,任何人都可以以任何目的免費使用、修改和分發PostgreSQL。
主要特點
PostgreSQL 的 主要優點如下:
1)維護者是PostgreSQL Global Development Group,首次釋出於1989年6月。
2)作業系統支援WINDOWS、Linux、UNIX、MAC OS X、BSD。
3)從基本功能上來看,支援ACID、關聯完整性、資料庫事務、Unicode多國語言。
4)表和檢視方面,PostgreSQL支援臨時表,而物化檢視,可以使用PL/pgSQL、PL/Perl、PL/Python或其他過程語言的儲存過程和觸發器模擬。
5)索引方面,全面支援R-/R+tree索引、雜湊索引、反向索引、部分索引、Expression 索引、GiST、GIN(用來加速全文檢索),從8.3版本開始支援點陣圖索引。
8)從事務的支援度上看,對事務的支援與MySQL相比,經歷了更為徹底的測試。
9)My ISAM表處理方式方面,MySQL對於無事務的MyISAM表,採用表鎖定,1個長時間執行的查詢很可能會阻礙對錶的更新,而PostgreSQL不存在這樣的問題。
10)從儲存過程上看,PostgreSQL支援儲存過程。因為儲存過程的存在也避免了在網路上大量原始的SQL語句的傳輸,這樣的優勢是顯而易見的。
11)使用者定義函式的擴充套件方面,PostgreSQL可以更方便地使用UDF(使用者定義函式)進行擴充套件。
PostgreSQL 的 應用劣勢如下:
1)最新版本和歷史版本不分離儲存,導致清理老舊版本時需要做更多的掃描,代價比較大但一般的資料庫都有高峰期,如果合理安排VACUUM,這也不是很大的問題,而且在PostgreSQL9.0中VACUUM進一步被加強了。
2)在PostgreSQL中,由於索引完全沒有版本資訊,不能實現Coverage index scan,即查詢只掃描索引,不能直接從索引中返回所需的屬性,還需要訪問表,而Oracle與Innodb則可以。
下面通過本文給大家介紹使用pg資料庫可以通過如下方法查詢使用者的系統許可權和物件許可權。
1、檢視某使用者的系統許可權
SELECT * FROM pg_roles WHERE rolname='postgres';
2、檢視某使用者的表許可權
select * from information_schema.table_privileges where grantee='postgres';
3、檢視某使用者的usage許可權
select * from information_schema.usage_privileges where grantee='postgres';
4、檢視某使用者在儲存過程函式的執行許可權
select * from information_schema.routine_privileges where grantee='postgres';
5、檢視某使用者在某表的列上的許可權
select * from information_schema.column_privileges where grantee='postgres';
6、檢視當前使用者能夠訪問的資料型別
select * from information_schema.data_type_privileges ;
7、檢視使用者自定義型別上授予的USAGE許可權
select * from information_schema.udt_privileges where grantee='postgres';
到此這篇關於檢視postgresql資料庫使用者系統許可權、物件許可權的方法的文章就介紹到這了,更多相關postgresql資料庫使用者系統許可權、物件許可權內容請搜尋我們以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援我們!