When attempting to install ERPNext 15 on Ubuntu 24.0.2 LTS, I encountered significant challenges with MariaDB version compatibility. Despite following recommended installation guides, Ubuntu’s package management system consistently defaults to MariaDB 10.11, which is not compatible with ERPNext’s requirements.
@sideroomghost we always encourage to use ubuntu 22 . it’s more stable and compatible with frappe . switching to ubuntu 22 will solve your issue , otherwise you will have a hard time fixing all packages versions , not only mariadb .
For example, I am currently using ERPNext V15 + MariaDB 11.2.2 in a production environment, and it works just fine. This is far beyond the suggested 10.6 version.
I think it is better to know if there is any version dependent development or configuration which I think there is not as the framework is even compatible with PostGre. If there is a solid drawback or functionality in error, better to report it as we have LTS24 systems on latest update mariadb without any problem running for ages.
If you feel the need to ask why, well, I’d like to stay on the cuttting adge.
I chose to install the MariaDB version I did because:
It seemed unwise to install a brand-new database server, but then deliberately choose a version from nearly 4 years ago (April 2021). Instead, I’d like to take advantage of whatever improvements the MariaDB Team has made since then.
In the past 8 years, I’ve experienced many performance problems and headaches with MariaDB. If I continued using 10.6, nothing would change. If I installed the latest stable, the situation would either: Improve, get Worse, or Stay the Same.
The only way to find out was to try, and see.
Also, Frappe/ERPNext is not doing anything strange or special with MariaDB; just normal SQL requests and syntax. So I was not concerned at all with moving from 10.6 to 11.X. If queries and statements worked before, they would certainly work now on the newer version. The only thing you have to be mindful of are configuration changes, like the previously mentioned collations, unicode/UTF things.
And if I was wrong? Well, then I’d go fix whatever Python/SQL needed fixing. No problem.
(fyi, it turned out that things did -not- improve, so I’m giving up on MariaDB entirely, and switching to Postgres. but that’s a whole other story. MariaDB 11.2 is running equally well, compared to 10.6)
Yes, still happily living in Postgres . No major hiccups. Just hundreds of little things that needed fixing or adjusting.
I’d say the most -interesting- challenges were things like:
Case Sensitivity (Postgres columns are case sensitive by default, but there’s a way around that).
Datetimes can now have Time Zones, if you want them to.
Certain default behavior was unexpected (collation sorting, certain functions returning Fixed Width strings).
It’s taken a lot of work, but I overall I’m very pleased. Database backups are faster and smaller. SQL Replication works very well, and doesn’t constantly break. Performance is great. And in the few cases where I had to cancel a long-running query…Postgres actually cancelled when I asked it to.
I haven’t had a chance to pursue some of its more advanced features (I have a ton of other higher-priority projects on my plate right now, unrelated to databases). But I’m looking forward to them!