จากบทความเรื่องการติดตั้ง OFBiz ได้ใช้ฐานข้อมูล Derby ซึ่งเป็นฐานข้อมูลขนาดเล็กที่มาพร้อม OFBiz มีความสามารถในระดับหนึ่ง แต่ไม่เทียบเท่า PostgreSQL และไม่สามารถรองรับการใช้งานที่มีการเรียกใช้ฐานข้อมูลจำนวนมากได้ จึงได้นำเอา PostgreSQL มาช่วยให้การใช้งาน OFBiz มีประสิทธิภาพมากขึ้น
ขั้นตอนการติดตั้ง PostgreSQL สำหรับ OFBiz ทำได้ดังนี้
1. ติดตั้ง PostgreSQL จาก Synaptic Package Manager
2. ติดตั้ง pgadmin จาก Synaptic Package Manager
3. ทำการตั้งค่า password ให้กับ account ของ PostgreSQL โดยเปิด terminal และเข้าไปที่โฟลเดอร์ /etc/postgresql/8.4/main
4. สั่งแก้ไขไฟล์ชื่อ pg_hba.conf โดยใช้คำสั่ง
sudo gedit pg_hba.conf5. เปลี่ยนค่าจาก ident เป็น trust ทั้งหมด และ เปลี่ยนค่าจาก md5 เป็น trust ทั้งหมด
6. สั่งแก้ไขไฟล์ชื่อ postgresql.conf โดยใช้คำสั่ง
sudo gedit postgresql.conf7. แก้ไขบรรทัด #listen_addresses = 'localhost' โดยการเอา # ออกและเปลี่ยนจาก localhost เป็น * จะได้โค้ดดังนี้
listen_addresses = '*'8. สั่ง start serveice ของ postgresql โดยใช้คำสั่ง
cd /etc/init.d9. สั่ง restart service โดยใช้คำสั่ง
sudo service postgresql-8.4 restart
เมื่อตั้งค่าเสร็จแล้ว ลงมือทำการสร้าง connection ดังนี้
1. เปิด pgadmin
2. กดปุ่ม add a connection to a server
3. ตั้งค่าดังนี้
Name = localhostแล้วกด ok
Host = localhost
4. ทำการสร้าง login role ให้แก่ database โดยการคลิ้กขวาที่ Login Roles แล้วเลือก New Login Role
5. กรอกรายละเอียด Role name, Password และ Password(again) แล้วกด OK
6. ในการสร้างฐานข้อมูลสำหรับ OFBiz ต้องสร้างทั้งหมด 3 database โดยกำหนดดังนี้
Database1
name = ofbiz
login role = ofbiz
Database2
name = ofbizolap
login role = ofbiz
Database3
name = ofbiztenance
login role = ofbiz
7. ทำการดาวน์โหลด jdbc driver สำหรับ postgresql โดยสามารถดาวน์โหลดได้ที่ http://jdbc.postgresql.org/download.htmlเลือกดาวน์โหลดไฟล์ JDBC4 Postgresql Driver, Version 8.4-701 สำหรับ 1.6 JVM ขึ้นไป
8. ทำการ copy ไฟล์ที่ดาวน์โหลดไปไว้ในโฟลเดอร์ framework/entity/lib/jdbc ของโปรเจ็ค
9. ทำการแก้ไขไฟล์ framework/entity/config/entityengine.xml โดยการเพิ่ม datasource ดังนี้
<datasource name="localpostnew" helper-class="org.ofbiz.entity.datasource.GenericHelperDAO" schema-name="public" field-type-name="postnew" check-on-start="true" add-missing-on-start="true" use-fk-initially-deferred="false" alias-view-columns="false" join-style="ansi" result-fetch-size="50" use-binary-type-for-blob="true"> <read-data reader-name="seed"/> <read-data reader-name="seed-initial"/> <read-data reader-name="demo"/> <read-data reader-name="ext"/> <inline-jdbc jdbc-driver="org.postgresql.Driver" jdbc-uri="jdbc:postgresql://127.0.0.1/org" jdbc-username="org" jdbc-password="orgpass" isolation-level="ReadCommitted" pool-minsize="2" pool-maxsize="250" time-between-eviction-runs-millis="600000"/> </datasource> <datasource name="localpostnewolap" helper-class="org.ofbiz.entity.datasource.GenericHelperDAO" schema-name="public" field-type-name="postnew" check-on-start="true" add-missing-on-start="true" use-fk-initially-deferred="false" alias-view-columns="false" join-style="ansi" result-fetch-size="50" use-binary-type-for-blob="true"> <read-data reader-name="seed"/> <read-data reader-name="seed-initial"/> <read-data reader-name="demo"/> <read-data reader-name="ext"/> <inline-jdbc jdbc-driver="org.postgresql.Driver" jdbc-uri="jdbc:postgresql://127.0.0.1/orgolap" jdbc-username="org" jdbc-password="orgpass" isolation-level="ReadCommitted" pool-minsize="2" pool-maxsize="250" time-between-eviction-runs-millis="600000"/> </datasource> <datasource name="localpostnewtenant" helper-class="org.ofbiz.entity.datasource.GenericHelperDAO" schema-name="public" field-type-name="postnew" check-on-start="true" add-missing-on-start="true" use-fk-initially-deferred="false" alias-view-columns="false" join-style="ansi" result-fetch-size="50" use-binary-type-for-blob="true"> <read-data reader-name="seed"/> <read-data reader-name="seed-initial"/> <read-data reader-name="demo"/> <read-data reader-name="ext"/> <inline-jdbc jdbc-driver="org.postgresql.Driver" jdbc-uri="jdbc:postgresql://127.0.0.1/orgtenant" jdbc-username="org" jdbc-password="orgpass" isolation-level="ReadCommitted" pool-minsize="2" pool-maxsize="250" time-between-eviction-runs-millis="600000"/> </datasource>
และแก้ไข delegetor ของ delegator name="default" และ delegator name="default-no-eca" ดังนี้
<delegator name="default" entity-model-reader="main" entity-group-reader="main" entity-eca-reader="main" distributed-cache-clear-enabled="false"> <group-map group-name="org.ofbiz" datasource-name="localpostnew"/> <group-map group-name="org.ofbiz.olap" datasource-name="localpostnewolap"/> <group-map group-name="org.ofbiz.tenant" datasource-name="localpostnewtenant"/> </delegator> <delegator name="default-no-eca" entity-model-reader="main" entity-group-reader="main" entity-eca-reader="main" entity-eca-enabled="false" distributed-cache-clear-enabled="false"> <group-map group-name="org.ofbiz" datasource-name="localpostnew"/> <group-map group-name="org.ofbiz.olap" datasource-name="localpostnewolap"/> <group-map group-name="org.ofbiz.tenant" datasource-name="localpostnewtenant"/> </delegator>
10. พิมพ์คำสั่งใน terminal ดังนี้
./ant clean-all11. พิมพ์คำสั่งใน terminal ดังนี้
./ant run-install12. สั่ง start ofbiz ดังนี้
./startofbiz.sh
ไม่มีความคิดเห็น:
แสดงความคิดเห็น