The setup guide to deploy MediaMan Library and PostgreSQL

This page contains information setting up MediaMan Library with the PostgreSQL database server. Scroll down for trouble-shooting information.

MediaMan Library setup guide with PostgreSQL

Before you start, please understand that this setup guide is very technical. Although the procedure is provided in a detailed step-by-step manner, it's still not suitable for audiences who haven't worked with a client/server based SQL database management system before.

The guide is provided assuming you will use the Windows platform for the PostgreSQL server, though you can choose any platform to run it.

In the context of this guide, administrator computer refers to the one that has MediaMan Library running, and database server refers to the one that has PostgreSQL installed and running. In real scenarios, these two computers might be the same one. But they are still distinguished throughout this guide to avoid confusion.

  1. Install MediaMan Library on the administrator computer
  2. Download PostgreSQL server from . There are binary distributions available so you don't have to compile yourself. Currently MediaMan Library requires at least PostgreSQL 8.3. Please make sure you get the latest build for better performance and less bugs.
  3. Install PostgreSQL server on the database server. Choose to accept connections from any computer (outside localhost). And choose UTF-8 as both client and server character set encoding. Remember the master password you typed. The master administrator in PostgreSQL server is "postgres" (without quotes).
  4. Open up data/pg_hba.conf in the PostgreSQL server installation directory, and add this line:
    "host    all         all               md5"
    (without quotes). This will allow MediaMan Library to connect from any computer on your LAN to the server.
  5. Start/restart PostgreSQL server and make sure it's running smoothly.
  6. Download pgAdmin III from . And install it on the administrator computer
  7. Use pgAdmin III to connect to the database server, using user name "postgres" and the previous set password.
  8. Create a new user (login role). Then create a new database for MediaMan Library, you can name it "mediaman" or anything you like. Please note that this database should be used exclusively by MediaMan Library. Assign the newly created user to own this database. You will connect using this user as an administrator from MediaMan Library.
  9. Optionally, you can create another database user for read-only computers*. To do this in pgAdmin III, first go to menu File->Options. In the Preferences tab, check "Show users for privileges", and press OK. Then in the Object Browser, right click on "Login Roles" and choose "New Login Role", supply a name like "mediamanbrowse", and fill in a password, click OK. After that, go to Databases > mediaman > Schemas > public > Tables. You should see a list of tables MediaMan Library uses. Right click on "Tables" and select "Grant Wizard". Check all tables in "Selection" tab, in "Privileges" tab, choose "group mediamanreadonly" in Role and select "SELECT" privilege. Click "Add/Change". You will see the privilege of user "mediamanbrowse" listed in the privilege box. Click "OK" to apply settings. Now you can supply the password and name "mediamanbrowse" to read-only MediaMan Library users.
  10. Start MediaMan Library, and enter the connection details. When you run for the first time, choose to log on as administrator, and enter anything in user name and password. You'll be prompted for options to setup a master password in MediaMan Library and initialize the database for use. You can also import samples, choose the sample.mmc file from C:\Program Files\MediaMan Library\Data during the master administrator password setup.

* This is required if you have other people using the same database server for read-only purposes. Read-only users do not need to provide logon credentials for MediaMan Library, but they do need a username and a password to connect to PostgreSQL. It's a security risk to provide the password of user "mediaman" (created in step 8.) to them because they can use a PostgreSQL client software to change content in the database without using MediaMan Library. To prevent this from happening, we need to create another user.


If you encountered any problems during this setup process, please click here to visit Frequently Asked Questions on MediaMan Library Setup for a quick answer.