Speed Up Amarok With Large Music Collections

Amarok is a wonderful application for managing and playing your music collection, but the default settings aren’t optimized for speed when it comes to large collections of music. The problems are especially noticeable while trying to use the search box.

The problem is that the default embedded database uses sqlite to store the collection information, which doesn’t scale quite as well as a dedicated database such as MySQL… so we’ll switch to use that instead.

Configuring MySQL for Amarok

These instructions assume that you don’t already have MySQL installed. If you are already using it, then just skip the first couple of steps.

Assuming you are using Ubuntu, run this command from a terminal to install the MySQL server and client on your system:

sudo apt-get install mysql-client mysql-server

For security’s sake, you should probably set a root password for your MySQL server using this command:

sudo mysqladmin -u root password “mynewpassword”

You can use the “flush privileges” command or just restart MySQL:

sudo /etc/init.d/mysql restart

Next we’ll use the mysqladmin command to create a database for Amarok to use:

sudo mysqladmin -u root -pMyRootPassword create amarokdb

The final command line step will setup the user account for Amarok in MySQL. Make sure to use a different password here.

mysql -u root -pMyRootPassword

> GRANT ALL ON amarokdb.* TO amarok@localhost IDENTIFIED BY ‘amarokpassword’;

> FLUSH PRIVILEGES;

Configuring Amarok

Open the Amarok configuration dialog via the tools menu and then pick the Collection icon on the left.

image

Change the drop-down to MySQL, and then enter in your details:

  • Hostname: localhost
  • Database: amarokdb
  • Username: amarok
  • Password: password from step above

Close out of the dialog, and then you’ll have to rescan your collection to move everything into MySQL, which might take a little while the first time.

Enjoy the speedy searching!

Lowell Heddings, better known online as the How-To Geek, spends all his free time bringing you fresh geekery on a daily basis. You can follow him on if you'd like.