TOP ISSUES - MEDIAMAN LIBRARY SETUP
The information on this page will help you solve the problems during the MediaMan Library initial setup.Question Index
- MediaMan Library first time setup guide
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.
- Install MediaMan Library on the administrator computer
- Download PostgreSQL server from http://www.postgresql.org/ . 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.
- 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).
- Open up data/pg_hba.conf in the PostgreSQL server installation directory, and add this line:
"host all all 0.0.0.0/0 md5"
(without quotes). This will allow MediaMan Library to connect from any computer on your LAN to the server. - Start/restart PostgreSQL server and make sure it's running smoothly.
- Download pgAdmin III from http://www.pgadmin.org/download/windows.php . And install it on the administrator computer
- Use pgAdmin III to connect to the database server, using user name "postgres" and the previous set password.
- 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.
- 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.
- 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.
- MediaMan Library cannot connect to the PostgreSQL database server.
If you can't connect, the first thing you need to check is the database connection settings, which include hostname, port, username, password, and database. Review the setup guide, and find out if you made errors in spellings of any of these settings.
Nonetheless, if the above settings are correct, then the most common cause of this type of error is software or hardware firewalls (routers). When you complete your PostgreSQL server setup, it's important to enable its port (port number 5432 by default) on either the server-side firewall software, or the hardware firewall/router that links the server to the network. If you used port-forwarding on routers, you'll also have to remember this port setting, and enter the port-forwarding source (listen) port number in MediaMan Library. This process only ensures the capability of listening to connections on the PostgreSQL server. The firewall software on your local computer can also be blocking the connection. If the firewall software didn't prompt you, you should check its settings, and make sure that MediaMan.exe is in the exception list. - MediaMan Library says connection successful, but unable to authenticate me as administrator.
This message means that your database server connection setting is correct. But there is something wrong on the username and password you typed. You can try again with a different username/password pair. If you forgot it, please read the solution here. - MediaMan Library repeatedly tell me to initialize the database even though I already did.
The most likely cause of this problem is that the database user didn't have sufficient rights to initialize the database. It attempted to create tables anyway, but the server refused. Please review the setup guide and find out how to assign the user as the owner of the database to grant sufficient rights.