[Amarok] Связываем Amarok и MySQL

Amarok - ИМХО - довольно таки удобный плеер с возможностью организации нормальной музыкальной библиотеки. Сама библиотека крутится на определённой базе данных (в стандартной конфигурации, это SQLite). У нее конечно есть свои достоинства (не требующая ни пользователей, ни паролей, ни каких-либо настроек, просто включил и оно себе работает). Но, у нее есть один серьёзный недостаток: она фантастически медленная!

SQLite подходит для музыкальной библиотеки на десять гигабайт, на двадцать, ну хорошо, с натяжкой на пятьдесят гигов. Но заставлять её контролить большее количество записей -  это мучение и для пользователя, и для самой БД. На моем стареньком ноуте (ASUS K52JU), с далеко не самым старым и тупым Pentium P6200 2,1ГГц хранилось около 100 GB музыки. Первоначальное создание библиотеки занимало довольно большое время, а вот поиск это уже страшно. Каждый раз окно плеера темнело секунд на пять, а процессор загружался на все сто процентов. Да и другие операции с БД осуществляются довольно медленно и ресурсозатратно. С этим нужно было что-то делать.

Решение было найдено в процессе ковыряния настроек Amarok’а - установить в качестве БД для хранения библиотеки MySQL. Для этого на требуется сама база даных: вбиваете в поиске Synaptic’а слово mysql, и тыкаете галочки напротив того, что нужно:

  • mysql-server - остальное должен потянуть за собой в качестве зависимостей;
  • mysql-common - если зависимостей сервер не потянул;
  • mysql-client - в общем с той же причины;
  • amarok - без комментариев;
  • apache - чтобы работал phpmyadmin, да и мне он периодически необходим для других задач;
  • phpmyadmin - мне через него удобнее админить базы данных, чем через консольку;

При установке MySQL вас попросит ввести пароль пользователя root - это суперюзер для MySQL. Там ничего сложно нету, поэтому я не останавлюсь на процессе установки. Далее установка phpMyAdmin - там так же ничего сложного. Одно НО(!) - его надо ставить в последнюю очередь т.к. он в процессе установки спросит вас о настройке веб-сервера, где вы смело отмечаете apache и не паритесь больше. После установки phpMyAdmin будет доступен по адресу http://localhost/phpmyadmin - и тут вам и потребуется тот пароль пользователя root сервера MySQL, который вы вводили ранее. Естесственно логинимся (пользователь - root; пароль - указанный при установке).

Надеюсь вы перезагрузились самостоятельно после всех установок, ну а если вам было лень, то сделайте это сейчас.

После того как мы залогинились в phpMyAdmin, идем на вкладку “Пользователи” и создаем нового юзера amarok. Заполняем для него Имя, Пароль два раза, Хост оставляем пустым. Отмечаем обе галочки в разделе “База данных для пользователя” - эти опции нам создадут базу данных и предоставят для нового пользователя все привилегии на нее. Тут мы закончили.

Теперь осталось настроить Amarok. Идем в настройки и в пункте «База данных» выбираем MySQL. В названии узла прописываете localhost. Базу данных и пользователя в нашем случае везде указываем amarok, ну и пароль его конечно.

Плеер снова создаст музыкальную библиотеку и займет это гораздо меньше времени чер ранее. Поиск треков по базе стал значительно быстрее. Так же работа с динамическими плейлистами значительно ускорилась.

Если будут проблемы с треками, содержащими кириллицу в тегах, то необходимо в /etc/my.cnf в разделе [mysql] вписать default-character-set = utf8.

На этом все! Profit!

Обсудить статью в чате TG или в Slack