第一步:在Ubuntu下安裝Postgresql
sudo apt-get install postgresql-8.4 postgresql-client-8.4 postgresql-contrib-8.4
以上指令安裝服務端和命令列用戶端psql。
/usr/lib/postgresql/8.4/ 存放postgresql相關的二進位檔案
/usr/lib/postgresql/8.4/bin/ 可執行檔
/usr/lib/postgresql/8.4/lib/ 共用庫檔案
/etc/postgres/8.4/main/ 存放postgresql配置文檔案
/var/lib/postgresql/ postgres使用者的主資料夾
第二步:修改PostgreSQL資料庫的預設使用者postgres的密碼
PostgreSQL 資料預設會建立一個postgres的帳號使用者作為資料庫的管理員,密碼是隨機的,所以:
首先,我們需要重設“postgres”使用者的密碼。
命令列如下:
sudo -u postgres psql(或者sudo su postgres -c psql)—>運行psql,psql是一個標準的postgressql用戶端
postgres=# ALTER USER postgres WITH PASSWORD ‘postgres’;—>修改postgres的密碼為postgres,不要忘記添加分號(斷行符號後分號之前的sql語句才會立即執行)
postgres=# \q—>退出
修改了資料庫中的密碼之後,我們還需要修改linux下的使用者 “postgres”的密碼:設定成與資料庫中postgres帳號相同的密碼,即postgres。
sudo passwd -d postgres———>刪除密碼
sudo -u postgres passwd(或者 sudo su postgres -c passwd)—–>建立密碼
然後輸入跟之前一樣的密碼。
現在,我們就可以在資料庫伺服器上用 postgres帳號通過psql或者pgAdmin等等用戶端操作資料庫了(暫時還不能遠端存取)。
第三步:修改PostgresSQL資料庫配置實現遠端存取
首先,我們需要編輯postgresql.conf:
sudo gedit /etc/postgresql/8.4/main/postgresql.conf
現在,我們需要修改“串連和權 限”兩行。
改變行:#listen_addresses = ‘localhost’ 修改為:listen_addresses = ‘*’
改變行:#password_encryption = on 修改為:password_encryption = on
儲存並關閉gedit。
最後一步,我們必須設定誰才可以操作資料伺服器,這一 切都是在pg_hba.conf中完成的。
sudo gedit /etc/postgresql/8.4/main/pg_hba.conf
把以下內容添加到 pg_hba.conf底部:
# to allow your client visiting postgresql server
host all all 0.0.0.0 0.0.0.0 md5
解釋一下最後一行:
host表示允許的類型是主機;
第一個all是允許的資料庫名字;
第二個all是允許的使用者;
第一個0.0.0.0是允許訪問的ip address;
第二個0.0.0.0是允許訪問的subnet mask;
最後的md5表示密碼的加密方式,如果將md5改成trust則可以讓指定範圍的主機資料庫的時候不需要提供密碼。
關於ip address和subnet mask,你也可以修改為你的機器IP地址(如10.13.19.53)和子網路遮罩(如 255.255.255.255),這樣就只有你自己的主機可以遠端存取資料庫了。 如果要使用一個IP位址範圍,只需要把子網路遮罩設定成合適的值,如果子網路遮罩設定成0.0.0.0,則所有主機均可以訪問資料庫(IP可以任意設定),如 果將md5改成trust則可以讓指定範圍的主機訪問指定的資料庫的時候不需要提供密碼。
重啟伺服器,以上的配置就生效了:sudo /etc/init.d/postgresql-8.4 restart
第四步:建立使用者和資料庫。
使用命令列建立使用者和資料庫:
sudo -u postgres createuser -D -P mynewuser—->-D該使用者沒有建立資料庫的權利,-P提示輸入密碼,後面的選項都可以省略,命令執行的時候會提示使用者選擇yes或者no
sudo -u postgres createdb -O mynewuser mydatabase—>-O設定所有者為mynewuser
或者使用psql建立使用者和資料庫:
首先利用psql登入postgresql伺服器:sudo -u postgres psql[ -U postgres -h 127.0.0.1]—->運行psql,後面[]中的內容可選,用於登入伺服器,預設會登入本機;
然後在psql程式中建立使用者和資料庫:使用者名稱和資料庫名稱加上引號後才區分大小寫,否則會自動轉換成小寫:
create user “mynewuser” with password ‘mynewuser nocreatedb;
create database “mydatabase” with owner=mynewuser;
第五步:如何安 裝和使用pgAdmin3用戶端操作 postgresql資料庫
首先安裝圖形用戶端pgAdmin3,安裝命令列:sudo apt-get install pgadmin3
然後運行用戶端並串連資料庫,直接: