Feb 8, 2014

Ubuntu Programming Lesson 02 - pgAdmin connect to PostgreSQL

要由pgAdmin管理界面連接PostgreSQL還頗麻煩!當然,麻煩點才不會像MSSQL那樣,裝好後一堆sa無密碼,等這被駭!!
裝好PostgreSQL 9.3.後,由System Monitor就可以看到執行中的postgres程序

1. 變更postgres密碼

nas@ubuntu:~$ sudo su -l postgres #變更帳號為postgres (i.e. MSSQL's sa)
Password: 
postgres@ubuntu:~$ psql #以以postgres帳號才能執行psql命令列工具
psql (9.3.2)
Type "help" for help.

postgres=# alter user postgres with encrypted password '****'; #變更帳號postgres的密碼。此步驟如同安裝MSSQLL要設定sa密碼,避免被駭。; 代表指定結束,要記得加 
postgres-# \q #exit psql
postgres@ubuntu:~$ exit #exit the "postgres" account
logout
nas@ubuntu:~$

2. 變更postgres設定

nas@ubuntu:~$ sudo cp -p /etc/postgresql/9.3/main/pg_hba.conf /etc/postgresql/9.3/main/pg_hba.conf.bak #先備份
[sudo] password for nas: 
nas@ubuntu:~$ 
nas@ubuntu:~$ sudo gedit /etc/postgresql/9.3/main/pg_hba.conf #修改設定檔 .conf
# .... 修改檔案如下圖
# Database administrative login by Unix domain socket
#local   all             postgres                                peer
local   all             postgres                                md5 #加入這行

nas@ubuntu:~$ sudo /etc/init.d/postgresql restart #重新啟動postgresql程序
 * Restarting PostgreSQL 9.3 database server                             [ OK ] 
nas@ubuntu:~$ 

3. 以pgAdmin連接PostgreSQL

Name: any string you like. Let the "Host" be empty or localhost to connect localhost

mypq is a connection to postgresql
4. 允許外部連接PostgreSQL

nas@ubuntu:~$ sudo gedit /etc/postgresql/9.3/main/postgresql.conf
Ctrl + F找listen_addresses, 修改為「listen_addresses = '*'

listen_addresses 是代表允許連線的IP位址,填入 * 表示允許任何IP都可以連線此postgresql

可想而知,未來服務事業做太大,要回來改max_connections

No comments :

Post a Comment