postgresql恢復數(shù)據(jù)庫的方法

這篇文章將為大家詳細講解有關postgresql恢復數(shù)據(jù)庫的方法,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

創(chuàng)新互聯(lián)是專業(yè)的衛(wèi)東網站建設公司,衛(wèi)東接單;提供成都網站制作、成都網站建設、外貿營銷網站建設,網頁設計,網站設計,建網站,PHP網站建設等專業(yè)做網站服務;采用PHP框架,可快速的進行衛(wèi)東網站開發(fā)網頁制作和功能擴展;專業(yè)做搜索引擎喜愛的網站,專業(yè)的做網站團隊,希望更多企業(yè)前來合作!

PostgreSQL自帶一個客戶端pgAdmin,里面有個備份,恢復選項,也能對數(shù)據(jù)庫進行備份 恢復(還原),但最近發(fā)現(xiàn)數(shù)據(jù)庫慢慢龐大的時候,經常出錯,備份的文件過程中出錯的幾率那是相當大,手動調節(jié)灰常有限。所以一直尋找完美的備份恢復方案。

夢里尋他千百度,伊人卻在燈火闌珊處...其實PostgreSQL內置不少的工具,尋找的備份恢復方案就在其中:pg_dump,psql。這兩個指令在數(shù)據(jù)庫的安裝目錄下,比如我自己本地安裝的,路徑形如:C:\Program Files\PostgreSQL\9.5\;然后進入到bin文件夾,會看到不少的exe文件,這就是PostgreSQL內置的工具了。里面會找到 pg_dump.exe,psql.exe兩個文件。我們怎么用他們?

用法:

備份數(shù)據(jù)庫,指令如下:

pg_dump -h 164.82.233.54 -U postgres databasename > C:\databasename.bak

開始-運行-cmd 彈出dos控制臺;然后 在控制臺里,進入PostgreSQL安裝目錄bin下:

cd C:\Program Files\PostgreSQL\9.0\bin

最后執(zhí)行備份指令:  

pg_dump -h 164.82.233.54 -U postgres databasename > C:\databasename.bak

指令解釋:如上命令,pg_dump 是備份數(shù)據(jù)庫指令,164.82.233.54是數(shù)據(jù)庫的ip地址(必須保證數(shù)據(jù)庫允許外部訪問的權限哦~),當然本地的數(shù)據(jù)庫ip寫 localhost;postgres 是數(shù)據(jù)庫的用戶名;databasename 是數(shù)據(jù)庫名。> 意思是導出到C:\databasename.bak文件里,如果沒有寫路徑,單單寫databasename.bak文件名,那么備份文件會保存在C: \Program Files\PostgreSQL\9.0\bin 文件夾里。

恢復數(shù)據(jù)庫,指令如下:  

psql -h localhost -U postgres -d databasename <  C:\databasename.bak(測試沒有成功)
pg_restore.exe --host localhost --port 5432 --username "postgres" --dbname "symbolmcnew" --no-password  
--verbose "databasename.backup"(測試成功)

指令解釋:如上命令,psql是恢復數(shù)據(jù)庫命令,localhost是要恢復到哪個數(shù)據(jù)庫的地址,當然你可以寫上ip地址,也就是說能遠程恢復(必須保證 數(shù)據(jù)庫允許外部訪問的權限哦~);postgres 就是要恢復到哪個數(shù)據(jù)庫的用戶;databasename 是要恢復到哪個數(shù)據(jù)庫。<  的意思是把C:\databasename.bak文件導入到指定的數(shù)據(jù)庫里。

以上所有的是針對windows而言的,如果在linux下,會不會有效? 

在linux里依然有效。有一個值得注意的是:如果直接進入PostgreSQL的安裝目錄bin下,執(zhí)行命令,可能會出現(xiàn)找不到pg_dump,psql的現(xiàn)象,我們在可以這樣:

備份:

/opt/PostgreSQL/9.5/bin/pg_dump -h 164.82.233.54 -U postgres databasename > databasename.bak

恢復: 

/opt/PostgreSQL/9.5/bin/psql -h localhost -U postgres -d databasename < databasename.bak

關于postgresql恢復數(shù)據(jù)庫的方法就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

分享題目:postgresql恢復數(shù)據(jù)庫的方法
當前URL:http://www.muchs.cn/article34/ghjjpe.html

成都網站建設公司_創(chuàng)新互聯(lián),為您提供云服務器、網站導航品牌網站制作、網站排名定制網站、虛擬主機

廣告

聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

成都seo排名網站優(yōu)化