MySQL - support innodb and query cache


Would you consider compile mysql-server with innodb and query cache support? (–with-innodb --with-query-cache)

I understand stripping size on small memory openwrt-like routers, but in turris shouldnt make 500kB difference. I compiled it myself to use (innodb and query cache are recomended for Kodi MySQL tables), but it would save (not only me I assume) amount of time in future, and also make mysql module more usable.

Thanks for answer.

I adding here compiled .ipk, in case that someone appretiate this as well:
mysql-server_5.1.73-2_mvebu.ipk with innodb&query cache

Just FYI - I’m running MariaDB in Alpine LXC container - without limitations of open-wrt package version and isolated from Omnia. The Alpine container is really lightweight.

about what limitation are you talking?

I was thinking, that this brings unnecesarry performance slowdown, when I use container. And so far I dont see any problem to use MySQL native on Turris/OpenWRT, except memory usage - but I think its just reserved/cached memory and its ok (picture is from non used DB):

But although I will stick on mysql (Kodi doesnt like MariaDB much yet), I would like to know something new…

What I meant by limitations - in OpenWRT/Turris repositories there are very often older version of packages or trimmed down versions of the packages. Very often for a good reason as most of the routers have limited resources. However these resource constrains don’t really apply in case of Omnia (in most of the cases).

If you need the missing features then you may need to compile and maintain the package yourself. Alternatively you may consider running the application in LXC container with a distribution which has the newer / feature-full packages available.

LXC are lightweight containers so the overhead needed for running the containers is relatively small. In my case I run the lxc containers in a separate subnet and have dedicated firewall rules for communication to/from these servers. This way I can also isolate the applications and control resources and access.

The Alpine base container is just ~10MB (without the additionally installed packages like mysql) so even the space overhead is minimal. Ubuntu containers are larger.

Another advantages of containers - I can easily take a clone of a container - make changes I want to test and see if they work as expected without impacting “production” container. Once I’m confident the changes work I can apply them to the “production” container and destroy the test one. Also the containers helped me a lot when I had to reinstall my Omnia - I have the containers or separate partitions so I could flash the router and then start the containers. Of course I had to reconfigure the services running on Omnia - but I’m trying to have there just networking related.

Wow - it’s longer than I planned - I just wanted to highlight the lxc option as an alternative :slight_smile:

1 Like

However these resource constrains don’t really apply in case of Omnia (in most of the cases). Yes, thats exactly what I want to address Omnia Team in first post :slight_smile: Its is just very slighly change of makefile after all.

For my todays needs I propably stick with “native” Turris, but thank you very much for this post. Tip to the lightweight container and also description/hints regarding lxc is much appretiated.