:::

PostgreSQL常用指令 / PostgreSQL Commands

image

最近很常在Debian裡面安裝PostgreSQL,在此將我會用到的指令都整理一下吧。以前寫過一篇「PostgreSQL的備份與復原」到現在也蠻常參考的,在這裡一併整合備份與復原的語法。


安裝與設定 / Installation and Setup

在Debian安裝PostgreSQL:

apt-get update; apt-get install postgresql -y

要操作任何動作,都要切換為postgres使用者:

su - postgres

建立使用者,作為超級使用者(superuser),並指定密碼:

createuser –P –s -e [username]

建立資料庫:

createdb [databasename]

資料庫的匯入與匯出 / Import and Backup Database

匯入資料庫 / Import
psql -f [備份檔案名稱.backup.sql] [資料庫] [帳號]
匯出資料庫 / Export
pg_dump -U [帳號] -f [備份檔案名稱.backup.sql]  [資料庫名稱] 

只要結構的匯出語法

pg_dump -U [帳號] -s -f [備份檔案名稱.backup.sql] [資料庫名稱] 

備份資料庫時,用預設設定好的密碼以略過輸入密碼的詢問:

PGPASSWORD=[資料庫密碼]
pg_dump [資料庫名稱] -U [帳號] -s -f [備份檔案名稱.backup.sql]

授權問題 / Authentication Error

如果出現以下錯誤訊息,表示要修改授權方式:

pg_dump: [archiver (db)] connection to database "[資料庫名稱]" failed: FATAL:  Peer authentication failed for user "[使用者名稱]"

修改pg_hba.conf

vim /etc/postgresql/[PosgreSQL版本]/main/pg_hba.conf

2017-03-16_165830

把local的授權改成trust:

local   all             all                                     trust #peer

重新啟動postgresql:

service postgresql restart

再試試看pg_dump,應該可以正常運作了。

備份完之後記得把trust改回peer。

PostgreSQL資料庫網頁管理工具 / phpPgAdmin: A Webpage PostgreSQL’s Administrate Tool

Debian中安裝phpPgAdmin的方法:

apt-get update; apt-get install phppgadmin -y

phpPgAdmin通常所在位置:

/usr/share/phppgadmin/

phpPgAdmin要搭配網頁伺服器一起用。如果伺服器預設沒有安裝的話,可以用以下指令安裝Apache2:

apt-get update; apt-get install apache2 –y

然後網頁的目錄會擺在以下路徑

/var/www/html/

我們可以把phpPgAdmin的資料夾連結過去:

ln –s /usr/share/phppgadmin /var/www/html/phppgadmin

這樣就可以用以下網址開啟phpPgAdmin:

http://[your-server]/phppgadmin

2017-03-16_165718

成功。