Digikam/Using digiKam with MySQL

From KDE UserBase Wiki
Other languages:

Using digiKam with MySQL

Transcribed from Dmitri Popov's blog, 15 October 2010

By default, digiKam uses SQLite as its back-end for storing important metadata and thumbnails. But the photo management application also provides support for the popular MySQL database engine, and it comes with a database migration tool that can help you to move your data from SQLite to MySQL. Of course, you might wonder why you’d want to switch to MySQL when SQLite already does a good job of managing the data? Using MySQL as digiKam’s database back-end allows you to store the data on a remote server. This way, you can use multiple digiKam installations (e.g., on your notebook and desktop machine) to access and manage your photo collections. You can also use MySQL tools to back up and analyze digiKam’s data.

Obviously, to use digiKam with MySQL, you need a MySQL server. You also have to create two MySQL databases: one for storing photo metadata (e.g., digikam) and the other for storing thumbnails (e.g., thumbnails-digikam). And before you proceed, note the database connection information such as MySQL server address, user name, and password — you’ll need it when configuring MySQL settings in digiKam.

There are two ways to switch digiKam from SQLite to MySQL. If you’ve just installed digiKam, and you haven’t yet added any collection to it, choose Settings -> Configure digiKam, and switch to the Database section. Select the MySQL item from the Type drop-down list.



Enter the IP address of your MySQL server in the Host Name field and specify the correct port in the Port field (the default port is 3306). In the Schema Name field, enter the name of the database for storing photo metadata, and specify the name of the database for storing thumbnails in the Thumbnails Schema Name field. Enter your MySQL user name and password in the appropriate fields. To check whether the database connection works properly, press the Check DB Connection button. If everything works as it’s supposed to, switch to the Collections section, and add the directories containing your photos. Hit OK, and wait till digiKam populates the databases with data from photos. This can take a while if you have a lot of photos.



If you are already using digiKam with SQLite, you can use the database migration tool to move the existing data to MySQL databases. Choose Tools -> Database Migration, and select the MySQL item in the Type drop-down list in the right section. Fill out the required fields as previously described, and use the Check DB Connection button to test the connection. Finally, press the Migrate button to copy the data from SQLite to MySQL.