SUNScholar/Prepare Ubuntu/S06
Contents
- 1 Install PostgreSQL
- 2 Step 6.1: Install PostgreSQL
- 3 Step 6.2: Setup PostgreSQL admin password
- 4 Step 6.3: Create the PostgreSQL 'dspace' user
- 5 Step 6.4: Create the PostgreSQL 'dspace' database
- 6 Step 6.5: Setup database host and user access permissions
- 7 Step 6.6: Setup number of client connections
- 8 Step 6.7: Increase the kernel shared memory for postgresql connections
- 9 Step 6.8: Restart the PostgreSQL server
Install PostgreSQL
DSpace uses the PostgreSQL database server for the main catalog database. The following procedure installs the PostgreSQL server and creates the "dspace" database and "dspace" database user with the default password.
Step 6.1: Install PostgreSQL
apt-get install postgresql-8.4 libpg-java
Step 6.2: Setup PostgreSQL admin password
Change database user permissions to "trust" only.
sed -i 's/ident/trust/' /etc/postgresql/8.4/main/pg_hba.conf
sed -i 's/md5/trust/' /etc/postgresql/8.4/main/pg_hba.conf
Restart database server.
/etc/init.d/postgresql-8.4 restart
Open a database shell...
psql -U postgres
... and set the password:
alter role postgres with password 'dspace';
Note: Use your unique password for this on a production system !
Quit the database shell.
\q
Step 6.3: Create the PostgreSQL 'dspace' user
First we become the postgres user
su - postgres
Create the "dspace" database user with full privileges.
createuser -U postgres -d -A -P dspace
If asked the following:
Shall the new role be allowed to create more new roles? (y/n) y
Answer "y" for yes.
Step 6.4: Create the PostgreSQL 'dspace' database
Create the "dspace" database with the "dspace" database user.
createdb -U dspace -E UNICODE dspace
Now we exit as the postgres user.
exit
Step 6.5: Setup database host and user access permissions
Type the following:
echo "## DSpace user access">> /etc/postgresql/8.4/main/pg_hba.conf
echo "host dspace dspace 127.0.0.1/32 md5">> /etc/postgresql/8.4/main/pg_hba.conf
Step 6.6: Setup number of client connections
Edit the postgresql config file:
nano /etc/postgresql/8.4/main/postgresql.conf
Change the number of "max_connections" to 300, save the file and exit.
Edit the "/etc/sysctl.conf" file:
nano /etc/sysctl.conf
Copy and paste the following to the end of the file:
# Postgres connections kernel.shmmax = 500000000 kernel.shmall = 500000000
Type the following in a terminal:
sysctl -p
Step 6.8: Restart the PostgreSQL server
Type the following:
/etc/init.d/postgresql-8.4 restart
Proceed to the next step