Hi :
I'm trying to install postgres in Solaris 8. I tried with 7.3.10 and
8.0.3 postgres versions but I have the same
problem in both. The compilation process was ok but in the init process
I have the next error :
$ ./bin/initdb -D /usr/local/pgsql/data
The files belonging to this database system will be owned by user
"postgres".
This user must also own the server process.
The database cluster will be initialized with locale C.
creating directory /usr/local/pgsql/data ... ok
creating directory /usr/local/pgsql/data/global ... ok
creating directory /usr/local/pgsql/data/pg_xlog ... ok
creating directory /usr/local/pgsql/data/pg_xlog/archive_status ... ok
creating directory /usr/local/pgsql/data/pg_clog ... ok
creating directory /usr/local/pgsql/data/pg_subtrans ... ok
creating directory /usr/local/pgsql/data/base ... ok
creating directory /usr/local/pgsql/data/base/1 ... ok
creating directory /usr/local/pgsql/data/pg_tblspc ... ok
selecting default max_connections ... 10
selecting default shared_buffers ... 50
creating configuration files ... ok
creating template1 database in /usr/local/pgsql/data/base/1 ... FATAL:
could not create shared memory segment: Invalid argument
DETAIL: Failed system call was shmget(key=1, size=1130496, 03600).
HINT: This error usually means that PostgreSQL's request for a shared
memory segment exceeded your kernel's SHMMAX parameter. You can either
reduce the request size or reconfigure the kernel with larger SHMMAX.
To reduce the request size (currently 1130496 bytes), reduce
PostgreSQL's shared_buffers parameter (currently 50) and/or its
max_connections parameter (currently 10).
If the request size is already small, it's possible that it is
less than your kernel's SHMMIN parameter, in which case raising the
request size or reconfiguring SHMMIN is called for.
The PostgreSQL documentation contains more information about
shared memory configuration.
child process exited with exit code 1
initdb: removing data directory "/usr/local/pgsql/data"
The Solaris machine that I'm using is not only for my project so I can´t
modify any kernel parameter in /etc/system principally because after
need a reboot ... so , where can I modify the shared_buffers and
max_connection parameters ?
The problem is that these parameters are in postgresql.conf in /data
directory but I don´t have this directory.
Is necesary to modify the initdb.c function ???
Thanks for your help ...