主頁 > 知識庫 > 查看postgresql系統(tǒng)信息的常用命令操作

查看postgresql系統(tǒng)信息的常用命令操作

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

1、查看當前數(shù)據(jù)庫實例版本。

postgres=# select version();
     version     
-----------------------------------------------------------------------------------------------------------
 PostgreSQL 9.3.0 on x86_64-unknown-linux-gnu, compiled by gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-23), 64-bit
(1 row)
 

2、查看數(shù)據(jù)庫啟動時間。

postgres=# select pg_postmaster_start_time();
 pg_postmaster_start_time  
-------------------------------
 2019-08-26 10:53:47.328699+08
(1 row)

3、查看最后load配置文件的時間,可以使用pg_ctl reload改變配置的裝載時間。

postgres=# select pg_conf_load_time();
  pg_conf_load_time  
------------------------------
 2019-08-26 10:53:46.57045+08
(1 row)

4、顯示當前數(shù)據(jù)庫時區(qū)。

postgres=# show timezone;
 TimeZone 
----------
 PRC
(1 row)

5、顯示數(shù)據(jù)庫的時間,有時數(shù)據(jù)庫的時區(qū)不是當前操作系統(tǒng)的時區(qū),這時在數(shù)據(jù)庫中看到的時間就與操作系統(tǒng)中看到的時間不一樣。

postgres=# select now();
    now    
-------------------------------
 2019-08-26 10:58:36.508472+08
(1 row)

6、查看當前用戶名,current_user與user是完全相同的。

postgres=# select user;
 current_user 
--------------
 postgres
(1 row)
 
postgres=# select current_user;
 current_user 
--------------
 postgres
(1 row)

7、查看session用戶,通常情況下,session_user與user是相同的。但使用set role改變用戶角色時,session_user始終是那個原始用戶,而user是當前的角色用戶。

postgres=# select session_user;
 session_user 
--------------
 postgres
(1 row)
 
postgres=# set role=aaa;
SET
 
postgres=> select session_user;
 session_user 
--------------
 postgres
(1 row)
 
postgres=> select user;
 current_user 
--------------
 aaa
(1 row)

8、查詢當前連接的數(shù)據(jù)庫名稱,使用current_catalog和current_database()都顯示當前連接的數(shù)據(jù)庫名稱,這兩者功能完全相同,只不過catalog是SQL標準中的用語。

postgres=# select current_catalog,current_database();
 current_database | current_database 
------------------+------------------
 postgres   | postgres
(1 row)

9、查看當前session所在客戶端的IP地址及端口(僅限TCP-IP連接,如果是UDP連接的話,查詢結(jié)果IP與port都顯示空)。

postgres=# select inet_client_addr(),inet_client_port();
 inet_client_addr | inet_client_port 
------------------+------------------
     |     
(1 row)

10、查詢當前數(shù)據(jù)庫服務(wù)器的IP地址及端口(僅限TCP-IP連接,如果是UDP連接的話,查詢結(jié)果IP與port都顯示空)。

postgres=# select inet_server_addr(),inet_server_port();
 inet_server_addr | inet_server_port 
------------------+------------------
 192.168.91.5  | 5866  
(1 row) 

11、查詢當前session的后臺服務(wù)進程的PID。

postgres=# select pg_backend_pid();
 pg_backend_pid 
----------------
   3958
(1 row)

12、查看當前共享內(nèi)存的大小。

postgres=# show shared_buffers;
 shared_buffers 
----------------
 128MB
(1 row)

13、修改當前session參數(shù)配置。

postgres=# set maintenance_work_mem to '128MB';
SET
 
postgres=# select set_config('maintenance_work_mem','128MB',false);
 set_config 
------------
 128MB
(1 row)

14、查看當前正在寫的WAL文件。

postgres=# select pg_xlogfile_name(pg_current_xlog_location());
  pg_xlogfile_name  
--------------------------
 00000001000000000000004B
(1 row)

15、查看當前WAL的buffer中還有多少字節(jié)的數(shù)據(jù)沒有寫到磁盤中。

postgres=# select pg_xlog_location_diff(pg_current_xlog_insert_location(),pg_current_xlog_location());
 pg_xlog_location_diff 
-----------------------
      0
(1 row)

16、查看數(shù)據(jù)庫實例是否正在做基礎(chǔ)備份。

postgres=# select pg_is_in_backup(),pg_backup_start_time(); pg_is_in_backup | pg_backup_start_time 
-----------------+----------------------
 f    | 
(1 row)

17、查看當前數(shù)據(jù)庫實例時HOT Standby狀態(tài)還是正常數(shù)據(jù)庫狀態(tài)。

postgres=# select pg_is_in_recovery();
 pg_is_in_recovery 
-------------------
 f
(1 row)

18、查看數(shù)據(jù)庫大小,如果數(shù)據(jù)庫中有很多表,使用上述命令將比較慢,可能對當前系統(tǒng)產(chǎn)生不利影響,pg_size_pretty()函數(shù)會把數(shù)字以MB、GB等格式顯示出來。

postgres=# select pg_database_size('postgres'),pg_size_pretty(pg_database_size('postgres'));
 pg_database_size | pg_size_pretty 
------------------+----------------
   67922104 | 65 MB
(1 row)

19、查看表的大小,僅計算表的大小,不包括索引的大小。

postgres=# select pg_size_pretty(pg_relation_size('test')); pg_size_pretty 
----------------
 0 bytes
(1 row)

20、查看表的大小,pg_total_relation_size()把表上索引的大小也計算入內(nèi)。

postgres=# select pg_size_pretty(pg_total_relation_size('test'));
 pg_size_pretty 
----------------
 0 bytes
(1 row)

21、查看表上所有索引的大小,pg_indexes_size()函數(shù)的參數(shù)名是一個表對應(yīng)的oid(輸入表名會自動轉(zhuǎn)換成表的oid),而不是索引的名稱。

postgres=# select pg_size_pretty(pg_indexes_size('test'));
 pg_size_pretty 
----------------
 0 bytes
(1 row)

22、查看表空間大小。

postgres=# select pg_size_pretty(pg_tablespace_size('pg_global'));
 pg_size_pretty 
----------------
 477 kB
(1 row)

23、查看表對應(yīng)的數(shù)據(jù)文件。

postgres=# select pg_relation_filepath('test');
 pg_relation_filepath 
----------------------
 base/12902/24952
(1 row)

補充:PostgreSQL命令行常用命令psql

PostgreSQL命令行常用命令(psql)

一般我們使用 psql來和數(shù)據(jù)庫交互,方括號中為可選項參數(shù),不帶任何參數(shù)表示連接本機

psql [option…] [dbname [username]]

登錄數(shù)據(jù)庫

psql -h 127.0.0.1 -p 5432 -d database -U postgres

-h 數(shù)據(jù)庫ip

-p 端口號

-d 數(shù)據(jù)庫名

-U 登錄用戶名

導(dǎo)入SQL腳本

示例:

psql -U postgres -d database -f sqlScript.sql

將sqlScript.sql導(dǎo)入到名為database的數(shù)據(jù)庫中

常用命令

展示數(shù)據(jù)庫

\l 或者 \list

支持正則匹配,例如展示包含post字符的數(shù)據(jù)庫

\l '*post*'

切換數(shù)據(jù)庫(創(chuàng)建新的數(shù)據(jù)庫連接)

\c 可選參數(shù) dbname [ username ] [ host ] [ port ]

eg:

\c postgres
或者
\c postgres username localhost 5432

展示當前數(shù)據(jù)庫下所有關(guān)系(table、view、sequence等)

\d 展示當前所有表

\d “Account” 展示Account表字段信息

展示當前數(shù)據(jù)庫下所有schema信息

\dn

顯示當前使用的schema

SHOW search_path;

當前schema為public

 search_path  
----------------
 "$user",public

切換當前schema

SET search_path TO myschema;
# set search_path to auth;
# SHOW search_path;
 search_path 
-------------
 auth

斷開數(shù)據(jù)庫連接

\q

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

您可能感興趣的文章:
  • 在postgreSQL中運行sql腳本和pg_restore命令方式
  • 在postgresql中通過命令行執(zhí)行sql文件
  • postgresql 導(dǎo)出建表語句的命令操作
  • PostgreSQL 修改表字段常用命令操作
  • postgreSQL數(shù)據(jù)庫默認用戶postgres常用命令分享

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

巨人網(wǎng)絡(luò)通訊聲明:本文標題《查看postgresql系統(tǒng)信息的常用命令操作》,本文關(guān)鍵詞  查看,postgresql,系統(tǒng),信息,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《查看postgresql系統(tǒng)信息的常用命令操作》相關(guān)的同類信息!
  • 本頁收集關(guān)于查看postgresql系統(tǒng)信息的常用命令操作的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章