Postgresql เป็น Object-Relational DBMS โดยสามารถใช้รูปแบบของภาษา SQL ได้เกือบทั้งหมด และสามารถใช้ subselects , transactions , user-defined types และ functions ได้ อีกทั้งเป็น Database ซึ่งให้ Source code ฟรี ด้วย
Postgresql เป็น Object-Relational DBMS โดยสามารถใช้รูปแบบของภาษา SQL ได้เกือบทั้งหมด และสามารถใช้ subselects , transactions , user-defined types และ functions ได้ อีกทั้งเป็น Database ซึ่งให้ Source code ฟรี ด้วย
ลักษณะโครงสร้าง
ระบบที่ใช้ PostgreSQL จะติดตั้ง PostgreSQL ไว้ที่เครื่อง Server ซึ่งเป็นที่เก็บ database ด้วย และยังสามารถ ติดตั้ง PostgreSQL ได้มากกว่า 1 ชุดใน Server เครื่องเดียว
ผู้ดูแลระบบ PostgreSQL จะใช้ชื่อว่า postgres ซึ่งเป็นผู้ดูแลทั้ง ตัวโปรแกรม และ database ซึ่งสามารถทำงานกับบางคำสั่งเฉพาะ เพื่อจัดการ database และ ผู้ใช้บริการ (user) ซึ่ง ผู้ดูแลระบบ database (postgres) จะคล้ายการทำงานของ superuser ในระบบ Unix หน้าที่ของ postgres สามารถ สร้างชื่อ user และกำหนดสิทธิและระดับการใช้งานต่างๆได้
PostgreSQL ใช้รูปแบบการทำงาน แบบ Client/Server ซึ่งในการทำงานจะประกอบด้วย 3 process ทำงานร่วมกัน คือ
1. Postmaster เป็น supervisory daemon process ซึ่งจัดการติดต่อระหว่าง Frontend กับ Backend process ในการ allocate share buffer , จัดการค่าเริ่มต้นต่างๆในระหว่างเริ่มทำงาน และเก็บบันทึกการเข้าใช้ระบบและความผิดพลาดต่างๆที่เกิดขึ้น
2. Postgres เป็น backend process เพื่อจัดการ database ถือว่าส่วนนี้เป็น process ที่ทำงานจริงๆ เช่น ทำงานตาม query โดย Postmaster จะสั่งให้สร้าง Backend process สำหรับทุกๆ การเชื่อมต่อกับ Frontend ดังนั้น Postgres นี้จะทำงานที่ server
3. Frontend เป็น application ซึ่งจะทำงานที่เครื่อง client และจะส่งคำสั่งการเชื่อมต่อ หรือคำสั่งต่างๆ มาที่ Postmaster แล้ว Postmaster จึงส่งต่อการทำงานไปที่ Postgres
การติดตั้งใน Linux Ubuntu 11.04 server
$ sudo apt-get update
$ sudo apt-get install postgresql
จากนั้น ก็ทำการ reset admin password (postgres)
$ sudo su postgres -c psql
ใน command prompt ของ psql พิมพ์
postgres=# ALTER USER postgres WITH PASSWORD ‘password’;
postgres=# \q
reset password postgres บน ubuntu
$ sudo passwd -d postgres
$ sudo su postgres -c passwd
แก้ไข postgresql.conf
$ sudo gedit /etc/postgresql/8.4/main/postgresql.conf
แก้ #listen_addresses = ‘localhost’ เป็น listen_addresses = ‘*’
แก้ #password_encryption = on เป็น password_encryption = on
เพิ่ม network ที่สามารถใช้งานที่ pg_hba.conf
$ sudo gedit /etc/postgresql/8.3/main/pg_hba.conf
โดยการเพี่ม
host all all 192.168.1.1/32 md5
ในที่นี้ 192.168.1.1 คือ network ที่อนุญาต
เพิ่มเติมน่ะคับ ถ้าต้องการให้โปรแกรมอื่นๆ สามารถติดต่อฐานข้อมูลนี้ได้
แก้ไข ไฟล์ pg_hba.conf โดยเพิ่มบรรทัดนี้เข้าไป
host all all 0,0,0,0 0,0,0,0 md5
จะสามารถติดต่อผ่านโปรแกรมอื่นๆ ที่เราพัฒนา หรือผ่านเครื่องข่ายอินเทอร์ได้ ผมใช้ vb2010 ทดสอบแล้วผ่านน่ะคับ สามารถติดต่อฐานข้อมูล สร้างตารางได้ คับ แต่ต้องติดตั้ง Npsql ไลบารี่ คับ ใช้เวอร์ชั้น .Net 4.0
restart server
$ sudo /etc/init.d/postgresql-8.4 restart
หรือ reboot ใหม่
การใช้งานต่างสามารถเข้าไปดูใน เว็บไซต์ของ Postgresql ซึ่งมีการเปลี่ยนเวอร์ชั่นใหม่ๆตลอด
ถ้าจะใช้ผ่านเว็ปก็ติดรั้ง phppgadmin แต่แก้คอนฟิกของ phppgadmin นิดหน่อยตามที่เข้าแนะนำ ก็ใช้ได้คับ
การติดตั้ง phppgadmin
sudo apt-get update
sudo apt-get install phppgadmin
แล้ว กด Y
ก็จะติดตั้งเสร็จคับ เวลาเข้าเว็บก็พิมพ์ http://IPAddress/phppgadmin
IPAddress ไอพีของเครื่อง server น่ะคับ
COMMENTS