當前位置:首頁 » 數據倉庫 » pg資料庫
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

pg資料庫

發布時間: 2022-02-01 10:10:51

『壹』 如何用命令打開postgresql資料庫

F:\PostgreSQL\9.2\bin>psql.exe -h localhost -U postgres -d Test -p 5432psql (9.2.4)輸入 "help" 來獲取幫助信息.Test=#Test=# help;您正在使用psql, 這是一種用於訪問PostgreSQL的命令行界面鍵入: \right 顯示發行條款 \h 顯示 SQL 命令的說明 \? 顯示 pgsql 命令的說明 \g 或者以分號(;)結尾以執行查詢 \q 退出注: 資料庫名稱區分大小寫的。使用某些有密碼的用戶的情況下, 會提示輸入密碼.F:\PostgreSQL\9.2\bin>psql.exe -h localhost -U test -d Test -p 5432用戶 test 的口令:psql (9.2.4)輸入 "help" 來獲取幫助信息.Test=#

『貳』 如何查看伺服器postgresql 中資料庫

安裝PostgreSQL資料庫之後,默認是只接受本地訪問連接。如果想在其他主機上訪問PostgreSQL資料庫伺服器,就需要進行相 應的配置。配置遠程連接PostgreSQL資料庫的步驟很簡單,只需要修改data目錄下的pg_hba.conf和postgresql.conf, 其中pg_hba.conf是用來配置對資料庫的訪問許可權,postgresql.conf文件用來配置PostgreSQL資料庫伺服器的相應的參數。 下面介紹配置的步驟:

1.修改pg_hba.conf文件,配置用戶的訪問許可權:
# TYPE DATABASE USER CIDR-ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all trust
# IPv4 local connections:
host all all 127.0.0.1/32 trust
host all all 192.168.1.0/24 md5
# IPv6 local connections:
host all all ::1/128 trust

其中紅色標識的內容為新添加的內容,表示允許網段192.168.1.0上的所有主機使用所有合法的資料庫用戶名訪問資料庫,並提供加密的密碼驗 證。在我們的環境中,我們需要在主機192.168.1.5上使用postgres用戶訪問192.168.1.9上的PostgreSQL資料庫。

2.修改postgresql.conf文件,將資料庫伺服器的監聽模式修改為監聽所有主機發出的連接請求。
定位到#listen_addresses='localhost'。PostgreSQL安裝完成後,默認是只接受來在本機localhost的連接請 求,通過將改行內容修改為listen_addresses='*'來允許資料庫伺服器監聽來自任何主機的連接請求:
listen_addresses = '*' # what IP address(es) to listen on;
# comma-separated list of addresses;
# defaults to 'localhost', '*' = all
# (change requires restart)
修改之後,保存並退出,然後重起資料庫,就可以在在遠程機器上訪問PostgreSQL資料庫了。

另外,資料庫管理小貼士:

matrix資料庫使用的是PostgreSQL資料庫。你可以安裝一個類似phpmyadmin的管理

『叄』 PG里如何查看錶,索引,表空間,資料庫大小

--查詢一個索引大小 select pg_size_pretty(pg_relation_size('indexname))--查看一張表及此它上的索引總大小 select pg_size_pretty(pg_total_relation_size('tablename')); --查看所有 schema裡面索引大小,大到小的順序排列: select indexrelname,pg_size_pretty( pg_relation_size(relid)) from pg_stat_user_indexes where schemaname = 'schemaname' order by pg_relation_size(relid) desc;--查看所有 schema裡面表的大小,從大到小順序排列: select relname, pg_size_pretty(pg_relation_size(relid)) from pg_stat_user_tables where schemaname = 'schemaname' order by pg_relation_size(relid) desc; --查看資料庫大小: select pg_database.datname,pg_size_pretty(pg_database_size(pg_database.datname)) AS size from pg_database;--查看錶空間大小

『肆』 求postgreSQL 的資料庫的表數據,導入導出的sql語句,謝謝!

Postgresql數據的導入和導出,以及命令介紹

如何導出PostgreSQL資料庫中的數據:
pg_mp -U postgres -f mp.sql mydatabase
具體某個表
pg_mp -U postgres -t mytable -f mp.sql mydatabase

導入數據時首先創建資料庫再用psql導入:
createdb newdatabase
psql -d newdatabase -U postgres -f mp.sql

把數據按照自己所想的方式導出,強大的命令:
echo " students to? stdout DELIMITER '|'"|psql school|head
(students為表名,school為庫名,各個欄位以|分隔)
echo ' (select * from students order by age limit 10) to stdout;' | psql school

『伍』 PG資料庫用python操作,插入數據values中怎麼填變數

你可以訪問Python資料庫介面及API查看詳細的支持資料庫列表。不同的資料庫你需要下載不同的DB API模塊,例如你需要訪問Oracle資料庫和Mysql數據,你需要下載Oracle和MySQL資料庫模塊。
DB-API 是一個規范. 它定義了一系列必須的對象和資料庫存取方式, 以便為各種各樣的底層資料庫系統和多種多樣的資料庫介面程序提供一致的訪問介面 。
Python的DB-API,為大多數的資料庫實現了介面,使用它連接各資料庫後,就可以用相同的方式操作各資料庫。

『陸』 postgresql 怎麼還原資料庫

還原需要原先對資料庫進行過備份,才能從備份恢復,如果沒有備份過,那是無法還原的。
恢復資料庫,指令如下:
pg_restore.exe --host localhost --port 5432 --username "postgres" --dbname "symbolmcnew" --no-password --verbose "databasename.backup"
指令解釋:如上命令,psql是恢復資料庫命令,localhost是要恢復到哪個資料庫的地址,當然你可以寫上ip地址,也就是說能遠程恢復(必須保證 資料庫允許外部訪問的許可權哦~);postgres 就是要恢復到哪個資料庫的用戶;symbolmcnew 是要恢復到哪個資料庫,databasename.backup指備份文件。

『柒』 postgresql是什麼資料庫請詳解一下,謝謝

PostgreSQL 是一種非常復雜的對象-關系型資料庫管理系統(ORDBMS), 也是目前功能最強大,特性最豐富和最復雜的自由軟體資料庫系統。有些特性甚至連商業資料庫都不具備。這個起源於伯克利(BSD)的資料庫研究計劃目前已經衍生成一項國際開發項目, 並且有非常廣泛的用戶。
PostgreSQL 可以說是最富特色的自由資料庫管理系統,甚至我們也可以說是最強大的自由軟體資料庫管理系統。事實上, PostgreSQL 的特性覆蓋了 SQL-2/SQL-92 和 SQL-3/SQL-99,首先,它包括了可以說是目前世界上最豐富的數據類型的支持,其中有些數據類型可以說連商業資料庫都不具備, 比如 IP 類型和幾何類型等;其次,PostgreSQL 是全功能的自由軟體資料庫,很長時間以來,PostgreSQL 是唯一支持事務、子查詢、多版本並行控制系統、數據完整性檢查等特性的唯一的一種自由軟體的資料庫管理系統。直到最近才有 Inprise 的 InterBase 以及 SAP 等廠商將其原先專有軟體開放為自由軟體之後才打破了這個唯一。

『捌』 pg資料庫如何傳一個數組對象急急急。。。

pg資料庫是什麼?在sql里,首先,傳遞數組,不如傳遞字元串,然後通過自定義function,來split 這個字元串。當然,如果你一定要傳遞數組,那也可以在sql中創建自定義類型。然後創建存儲過程,將數組錄入到datatable,之後傳遞給你的存儲過程中的這個自定義類型。

『玖』 如何查PostgreSQL 資料庫中所有的表

這個也是從 oid2name 中扒出來的:

[postgres@localhost bin]$ ./oid2name -d postgres
From database "postgres":
now:
SELECT pg_catalog.pg_relation_filenode(c.oid) as "Filenode", relname as "Table Name" FROM pg_class c LEFT JOIN pg_catalog.pg_namespace n ON n.oid = c.relnamespace LEFT JOIN pg_catalog.pg_database d ON d.datname = pg_catalog.current_database(),pg_catalog.pg_tablespace t WHERE relkind IN ('r') AND n.nspname NOT IN ('pg_catalog', 'information_schema') AND n.nspname !~ '^pg_toast' AND t.oid = CASE WHEN reltablespace <> 0 THEN reltablespace ELSE dattablespace END ORDER BY relname
Filenode Table Name
----------------------
24608 gaotab
24604 testtab
[postgres@localhost bin]$

執行結果就是這樣,這里沒有用我給出的 postgres 資料庫名 ,而是用了 pg_catalog.current_database()

我把格式整理一下,並且把資料庫名換成我想要的 』postgres『,當然,如果有其他資料庫,換其他的名字就可以了。

SELECT
pg_catalog.pg_relation_filenode(c.oid) as "Filenode",
relname as "Table Name"

FROM
pg_class c
LEFT JOIN pg_catalog.pg_namespace n ON n.oid = c.relnamespace
LEFT JOIN pg_catalog.pg_database d ON d.datname = 'postgres',
pg_catalog.pg_tablespace t
WHERE
relkind IN ('r')
AND n.nspname NOT IN ('pg_catalog', 'information_schema')
AND n.nspname !~ '^pg_toast'
AND t.oid = CASE WHEN reltablespace <> 0 THEN reltablespace ELSE dattablespace END

ORDER BY
relname

其實 t 是沒有必要的,還可以再簡化:

SELECT
pg_catalog.pg_relation_filenode(c.oid) as "Filenode",
relname as "Table Name"

FROM
pg_class c
LEFT JOIN pg_catalog.pg_namespace n ON n.oid = c.relnamespace
LEFT JOIN pg_catalog.pg_database d ON d.datname = 'postgres'

WHERE
relkind IN ('r')
AND n.nspname NOT IN ('pg_catalog', 'information_schema')
AND n.nspname !~ '^pg_toast'

ORDER BY
relname

『拾』 PostgreSQL一個資料庫最大支持多少個表

這個和表的數量沒有關系,要看每個表的大小和你的資料庫的大小.一般 表的大小*數量 < 資料庫的大小