Hello,
I had a problem with PostgreSQL 7.3.4, the pg_conversion table was empty after
initdb, so, no conversion could be made. I did exactly this:
# tar xvzf postgres-7.3.4.tar.gz
# cd postgres-7.3.4
# ./configure --prefix=/var/lib/pgsql --with-java --with-openssl
--without-readline
# make
# make install
Created the postgres user and group and did chown postgres:postgres
/var/lib/pgsql -R
# su - postgres
postgres$ initdb --pgdata /var/lib/pgsql/data
postgres$ exit
Runned /etc/init.d/postgres start, that have the following command:
# su - $PG_USER -c "$PG_BASE/bin/pg_ctl start -D '$PG_DATA' -s -l '$PG_LOGFILE'
-o '-N 1024 -B 2048 -i'"
Where: PG_USER=postgres, PG_BASE=/var/lib/pgsql, PG_DATA=/var/lib/pgsql/data
and PG_LOGFILE=/var/lib/pgsql/data/postgres.log
Until here everything looked fine, but then JDBC tried on a database created
with LATIN1 encoding:
set client_encoding='UNICODE';
And got back: Conversion between LATIN1 and UNICODE is not supported
With the help of two people from #postgresql at irc.freenode.org, I did a
initdb -d --pgdata data 2>debug.log and founded out that the problem was that
conversion_create.sql wasn't changing $libdir to the actual name
(/var/lib/pgsql/lib in my case). I did a sed on it and runned initdb, this time
everything runned fine.
I hope this help this great database,
Thanks,
Silvio Fonseca
Linux Consultant