Setting up the database
DOCUMENTATION FOR CONFIGURING THE DATABASE
This document assumes you have already successfully installed the
1) Database (PostgreSQL)
2) A PHP enabled webserver (Apache)
3) The RIMPS package
Configuring the database should be done once you have already configured
your webserver and are able to view the RIMPS main page.
The first thing that should be done is to create an account for RIMPS to
access the database. We recommend calling the user 'rimps' but you may
use any name you wish. You may also want to create an account on your
system for rimps (RECOMENDED).
To create a new user in PostgreSQL, simply type 'createuser'. You must
NOT be root while doing this. Answer the questions that follow. If you
have questions, review the PostgreSQL documentation. Once thats done, you
should set the password for the account by typing 'pg_passwd'. Answer the
questions and the password will be set.
You will next have to create a 'default' database for your account. Do
this by typing 'createdb'.
Make sure the postmaster is running and start PostgreSql by typeing 'psql'.
You must NOT be root while running PostgreSql.
Once your connected under your account, create a new database for RIMPS.
Type 'CREATE DATABASE mp3'. You may call the database anything you wish.
Connect to the new database by typing '\c mp3'. replace 'mp3' with the
name of your database.
You should now have a prompt indicating the name of the database we just
created. You can now quit PostgreSql by typing '\q'.
Included with the RIMPS package, you should have a script called
table.pgsql. This can be used to create all the tables required by RIMPS.
To use this, make sure you placed the script in your current working
directory. Next, start PostgreSql by typing 'psql'. Connect to the MP3
database by typing '\c mp3'. Once connected, type '\i table.pgsql'. This
will read the script and recreate all tables required by RIMPS. Check for
errors and refer to the PostgreSql documentation if you have problems.
To check for the tables, simply '\d'. You should have 4 tables and 2
You can now quit PostgreSql by typing '\q'.
POPULATING THE DATABASE
You may populate the database any way you wish but we are recommending the
use of mp3db to do this for you automatically.
To run mp3db, type the following:
./mp3db -user -password -d pgsql /Path_To_Mp3s
Replace 'user' and 'password' with the RIMPS account you created earlier.
Replace '/Path_To_Mp3s' with the BASE path of your MP3 collection.
If you have problems compiling or running mp3db, refer to the included
Once mp3db has completed successfully, startup PostgreSql and connect to
your mp3 database. You should now be able to run a simple query to verify
the contents by typing:
'SELECT * FROM mp3data;'
If your query returns nothing, verify that mp3db ran correctly.
Once the database is populated, bring up your web-browser and verify that
you can browse the contents. If you receive errors, and you are sure that
the database is populated, check the configuration of RIMPS in the
As of this release, RIMPS does not include any account management
functions. If you wish to create and save playlists, you must create an
account for every user manually. To do this, perform the following steps:
1) Start PostgreSql and connect to your mp3 database.
2) At the prompt, type: "INSERT into accounts VALUES ('user','pass');"
NOTE: The ' is required around your username and password.
Spaces should NOT be used in the username or the password.
3) Repeat this for any additional users.
Return to your web-browser and log on.
In the future, RIMPS will have account management which eliminates these
MAINTAINING YOUR DATABASE
We have experienced many problems with mp3db and the way in which it
populates the database. If you have problems or experience strange
results in RIMPS, it is most likely due to corruption of the mp3data
table. To correct problems, we recommend removing all entries in the
mp3data and completely repopulating it.
To repopulate the database, do the following:
1) Start PostgreSql and connect to the MP3 database.
2) Type 'DELETE from mp3data;'. This will remove all entries from the
3) Type 'DROP SEQUENCE mp3data_id'. This removes the index sequence.
4) Type 'CREATE SEQUENCE mp3data_id'. This will recreate the sequence.
NOTE: It is not necessary to do the every time you update your database.
Also, playlists will NOT be affected by clearing the mp3data table,
playlists are only affected if you change the name of the MP3 file