The objective is to install OpenERP and PostgreSQL on separate machines and configure them so that OpenERP can connect to the PostgreSQL running on the remote machine. We will go step by step

Here are the details of my environment.

PostgreSQL will be installed on fedora running in a virual machine.

OpenERP All-in-One (Server, Client and Web) installed on Windows XP SP2. Host OS.

STEPS on fedora VM

Run fedora VM than download the  graphical installer of PostgreSQL from http://www.enterprisedb.com/products/pgdownload.do for version 8.4.4-1.

Install postgresql-8.4.4-1-linux.bin from the terminal. If u get the error that the user is not in the sudoers file than add the user in the sudoers file using the following steps

https://mirnauman.wordpress.com/2010/06/29/user-not-in-sudoers-file-error-in-fedora-solution/

when the installation completes it will give u PgAdminIII a GUI interface to perform all kinds of operation on the PostgreSQL databse. It will also create a default database by the name of “postgres” and a default user by the name of “postgres”. Password for the user “postgres ” will be set during installaion.

Click on Applications , than PosgresSQL 8.4, than PgAdmin III. The GUI will open.  Double click on the PostgreSQL 8.4 (localhost) server in the left pane of the GUI. The server will run and will show u Databases,Tablespaces, Group Roles,  Login Roles. Click on Databases, it will expand and will show u postgres database.

So far so good, now open the terminal and create another database by the name of testdb.

Open the terminal and write

Su postgres

This will change the user to postgres from ur current user

Createdb testdb

This will create a database named testdb.

Createuser nauman –P

U will be prompted for password. Lets say we keep the password “nauman”

Nauman is the user name for the above created database testdb and –P makes sure that u specify a password for the created user. When the user is also created than open PgAdmin III. U will see that the newly created database test db is created there.

Click on the testdb database to select it.

Click on tools from the main menue and click on Server Configurations. There we will find two file, postgresql.conf and pg_hba.conf. we have to edit both of these files one by one.

Open the postgresql.conf file and put a * in the “listen_addressess” string name. Save and exit. if the value is alteady * for “listen_addressess” than make no changes and exit the file.

Open the second file pg_hba.conf and make the following changes.

Double click on the checkbox that has no value infront of it. Another dialog box appears. Write the following

Enable checked

Type                      host

Database             ALL

User                      ALL

IP-Address          172.16.0.1            255.255.255.0 (write ur ip range)

Method                               trust

Click OK and exit the file.

Steps on host OS windows XP SP2

Download the OpenERP All-in-One (Server, Client and Web) for windows from

http://www.openerp.com/downloads.html

Install the OpenERP All-in-one. After installation do the following

Click on All Programes from the start menue. Than click on Openerp Server than click on Edit Config to open the openerp-server.conf file.

This is wat u will find in the file

[options]

without_demo = False

netport = 8070

server_actions_allow_code = False

secure = False

demo = {}

syslog = False

list_db = True

cache_timeout = 100000

port = 8069

reportgz = False

secure_pkey_file = server.pkey

netinterface =

log_level = info

admin_passwd = admin

smtp_port = 25

smtp_server = localhost

db_user = postgres

price_accuracy = 2

login_message = False

import_partial =

soap = False

pidfile = False

db_maxconn = 64

smtp_password = False

xmlrpc = True

db_port = 5432

debug_mode = False

netrpc = True

secure_cert_file = server.cert

interface =

logfile = C:\Program Files\OpenERP AllInOne\\Server\\openerp-server.log

csv_internal_sep = ,

pg_path = C:\Program Files\OpenERP AllInOne\\PostgreSQL\\bin

translate_modules = [‘all’]

stop_after_init = True

root_path = C:\Program Files\OpenERP AllInOne\Server

smtp_user = False

db_password = serg123

db_name = postgres

db_host = 172.16.0.204

assert_exit_level = warn

email_from = False

addons_path = C:\Program Files\OpenERP AllInOne\Server\addons

———————————————————————————————-

the values for the bold items will be edited like

db_user = nauman

give name of our created user

db_port = 5432

port should be kept the same if not changed

db_password = nauman

password for our created user

db_name = testdb

name of our created database

db_host = 172.16.0.204

IP of the machine that is running the PostgreSQL

Save the openerp-server.conf file with the above changes and exit.

now click on All Programmes from the start menue, go to OpenERP Server and click on start service.

Than start the OpenERP Client click on File from the main menue and click on connect.

The database is already selected in the list and cant be changed if the user that we have created is not a super user. Provide the password and click OK.

And that’s it. Our OpenERP is communicating with a PostgreSQL database that is running on a remote machine.

Mission Accomplished.