-   Slackware (
-   -   Amarok with MySQL support? (

macbeth8 04-28-2008 11:31 AM

Amarok with MySQL support?
I know that this is probably not the best place to ask, but do you know why the standard (current) amarok package does not include MySQL support? Because when amarok is built with the support, it can use both sqlite and MySQL, so there is no problem in using default sqlite if MySQL is not running.

I am just curious, I've built amarok package with mysql myself. I just wanted to know if any of you may be aware of any reason :) Thanks :)

Crashbox 04-28-2008 11:55 AM

I don't know the answer, but if I had to guess, I would say it's because sqlite is more than adequate for amaroK's needs.

And if you'll allow me to be curious, why would you want to use MySQL for amaroK? Ok, I assume you have MySQL running on your machine for other reasons, but it really is overkill when you consider amaroK's modest db needs.

As a follow up question, even if you do need MySQL running on your system for other processes(as I assumed) why not use sqlite for amaroK anyway? It has practically no overhead and the entire db is comprised of a single file (making backups dead simple, btw). In fact, I think the entire sqlite library is built into the amaroK code, so you aren't even wasting space by having/using it.

Please don't take this as a flame, I'm just curious.

BTW: anyone interested should check out out FLOSS Weekly episode 26 for a really informative interview with the creator of sqlite, Richard Hipp.

macbeth8 04-28-2008 01:40 PM

I don't know about other users' needs :), but for me, MySQL performs better with my (quite big) music library (about 13,000 songs). The response for searching is noticeably faster. Amarok uses 22 tables and saves things like lyrics or vaious statistics into the db... the total size of db is 17.46MB... (later addition: as I checked now, amarok uses the db quite often, during my uptime the average is about 0.75 queries/s)

That is the only reason why I use MySQL (inside amarok, not on my system :) )

The whole MySQL supports does not need anything additional, just configure the package with "--enable-mysql" which creates slightly bigger application, so it's not a big deal, that's why I'm asking... ;)

No flame :) As I said, MySQL suits my needs more than sqlite.

BTW: Thx for interesting link...

Crashbox 04-28-2008 09:24 PM

If MySQL works best for you, that's cool. Choice is the beauty of Linux, after all. I forgot that amaroK stores lyrics too - that can really adds to the size of your db.

As for my comments about overkill and overhead, let's just say that old habits die hard. I hate to sound like an old man (cause I'm not), but I have been using computers for nearly 20 years and I am still struggling to get that we've reached a point in computing where we needn't really worry much about the overhead of background processes. The continually decreasing cost of hardware has made it so that it's cheaper and easier to add more 'muscle' than to mind our running processes.

Anyway, sorry I wasn't able to provide a solid answer.

As for the FLOSS Weekly podcast, I've listened to them all and it's not bad. They focus on applications or projects and not solely on the Linux kernel and distros - which is nice. I think Leo LaPorte would be more of an open source user/advocate if he had the time, and well, I imagine most linux people probably know who Randall Schwartz is.

T3slider 04-30-2008 07:33 PM

I initially used sqlite in Amarok, but after adding a certain number of songs the database somehow got screwed up (no, my computer didn't crash, and nothing else was messed up at all) and playcounts, ratings etc. were reset after exiting Amarok. After rebuilding Amarok with MySQL support (using the official SlackBuild and just changing the one build option), I can now use a MySQL database and all is working again. Now, if something messes up, I can manually check stuff using MySQL to see WHY it's messing up. Maybe it's possible with sqlite as well, but I don't know anything about using it manually. Old habits do die hard, and I just prefer MySQL anyway. ;)

All times are GMT -5. The time now is 12:45 AM.