Jump to content

MySQL 8 compatibility and MariaDB replacements


MoritzLost
 Share

Recommended Posts

I'm searching for some information regarding supported MySQL versions, since we need to prepare for an update to MySQL 8 (Hosteurope is updating their servers ...). All I can find is the software requirements for ProcessWire which lists MySQL 5.0.15 or newer. There's also at least one issue regarding the DateTime field, but not much beyond that.

Is anyone running ProcessWire (current dev or master version) with MySQL 8? Is anything working as expected? Any errors / potential bugs I should be aware of?

Also, does anyone know if ProcessWire supports newer MariaDB versions? I'm currently using MariaDB 10.1 (comes with Plesk), which mostly replaces 5.6, but seems that starting with MariaDB 10.3 those versions are not really compatible with any MySQL version. Is there even a version of MariaDB that's compatible with MySQL 8? The official compatibility table doesn't suggest there is ...

Link to comment
Share on other sites

12 hours ago, MoritzLost said:

Is anyone running ProcessWire (current dev or master version) with MySQL 8? Is anything working as expected? Any errors / potential bugs I should be aware of?

@adrian has an experience or two with this. Hopefully he reads this ? 

  • Like 2
Link to comment
Share on other sites

11 hours ago, MoritzLost said:

Is anyone running ProcessWire (current dev or master version) with MySQL 8? Is anything working as expected? Any errors / potential bugs I should be aware of?

There have actually been quite a lot of issues. Ryan has fixed several of them, but there are still some outstanding issues and I expect more will continue to surface and AFAIK Ryan still hasn't upgraded his dev environment so he's not seeing them and not being able to replicate so there has been some guesswork and back and forward with me on them.

That said, I do have several sites running on MySQL 8 / MariaDB 10 so I am reporting new things as they come up. Not ideal, but hopefully they'll all be sorted sooner than later. However if I were you, I wouldn't upgrade yet.

 

  • Like 4
Link to comment
Share on other sites

Thanks @adrian! Unfortunately Hosteurope is forcing the upgrade, so we'll have to either migrate those sites to a different host or wait and hope everything works ?

Which version of MariaDB are you on? We're using mostly MariaDB 10.1 for development, which should be a sort-of replacement for MySQL 5.5, and this version works fine with the current master / dev branch. Can't speak for newer MariaDB versions though.

Link to comment
Share on other sites

@MoritzLost

I am running: MySQL Server: 5.5.5-10.3.22-MariaDB-0+deb10u1

This is the default version with Debian these days, although the reported numbers for these are always a bit confusing - I have no idea why there is 5.5.5 before the 10.3.22.

Honestly I think hosts should be upgrading - these versions of MySQL have been the stable release for a couple of years now - I think Ryan is lagging behind on this so having hosts upgrade might prompt him to also upgrade his environment.

  • Like 1
Link to comment
Share on other sites

@adrian

Thanks, good to know that this version works. I think the reported version number has to do with the replication compatibility as outlined on their compatibility page, to indiciate which MySQL version the MariaDB version is compatible with. Though the whole drop-in replacement thing doesn't seem to be what they're aiming for anymore.

Well Hosteurope is definitely updating our managed server, can't speak to their other products, but I guess some hosts are following suit now. I've tested one of the sites running on Hosteurope with a docker image of MySQL 8 and a database dump – so far everything seems to be working! I'll report back if I find any bugs or errors ?

Link to comment
Share on other sites

1 minute ago, MoritzLost said:

Thanks, good to know that this version works.

This is the version I am experiencing the issues with. I actually assumed (wrongly now that I look at that Maria page) that I was running a version that was compatible with MySQL8. Maybe the issues I've been having are not specific to "8" but rather default settings that come with MariaDB that don't come with MySQL? Not sure at this point. The main issues that have shown up are cases where PW was not setting the value for the table's sort field or other similar instances where a value is required. Maybe it's even just the way Maria throws errors - maybe it throws errors where MySQL doesn't bother. Really not sure without spending more time which I don't have at the moment - sorry!

  • Like 1
Link to comment
Share on other sites

  • 3 months later...
  • 2 weeks later...
  • 1 month later...
On 9/29/2020 at 12:41 PM, Sevarf2 said:

Anyone tried MariaDB 10.3 or 10.4 ? The new amazon aws database service starts with 10.3.

 

On 10/7/2020 at 10:17 PM, StanLindsey said:

Also looking to check out latest MariaDB versions. 

I've been running MariaDB 10.4 with InnoDB engine on multiple sites since more than a year without any issues.

  • Like 1
  • Thanks 1
Link to comment
Share on other sites

  • 8 months later...

Hey guys, I know this thread is somewhat dated; the host of a customer of mine just notified me they will be upgrading all their db servers to MySql 8 by the end of the month. Are there any new experiences on whether these updates will break my sites? The processwire instances I host on this server are v.3.0.165. So I'm kinda curious to know if anyone has had experiences with this combo. I guess eventually I'm going to try this out on my dev machine when I find the spare time to update my MySQL-Server to v8.

Greetings, derelektrischemoench

Link to comment
Share on other sites

7 hours ago, derelektrischemoench said:

The processwire instances I host on this server are v.3.0.165. So I'm kinda curious to know if anyone has had experiences with this combo.

I'm running a couple of 3.0.165 sites on MySQL 8, and so far there have been no issues. On a loosely related note: in case there are any third party modules installed that make direct SQL queries, be sure to test those as well.

Link to comment
Share on other sites

  • 2 weeks later...
  • 4 months later...

I got my shared host to move me to a server with MySQL 8. What I am experiencing is that the language codes (no_NO and/or en_US.UTF-8 variations) does not work in /wire/modules/LanguageSupport/LanguageSupport.module.

It might or might not be MySQL related, and I have found no solution yet. But I thought I should just put it out there,  so as multi language site owners could be aware if the issue should show.

Link to comment
Share on other sites

  • 1 year later...

When using DDEV you can check if everything works with your specific installation just by changing a value in .ddev/config.yaml of your project.

Here are all the possible database types that are supported: https://ddev.readthedocs.io/en/latest/users/extend/database-types/

Quote

The default database type is MariaDB, and the default version is currently 10.4, but you can use MariaDB versions 5.5-10.8 and 10.11,

>> MySQL 5.5-8.0 <<

, and Postgres 9-15. (New LTS versions of each of these are typically added soon after release. The very old versions are kept for compatibility with older projects.)

Yes, you need to install DDEV first. But you'll never ever have these kind of problems or fears any more.

Locally I'm on MariaDB 10.6.12 InnoDB on most projects and have no issues.

  • Like 1
Link to comment
Share on other sites

  • 7 months later...

For what it's worth, I switched from MySQL to MariaDB on my local dev server which is running Ubuntu 22.04.  Importing a db dump that uses InnoDB is 7x faster in MariaDB.

I tried making it faster in originally in MySQL by adjusting a bunch of settings without luck.  Switching to MariaDB with its default settings is much faster based on my simple test.

Edit: It seems the reason the speed is much faster has to do with MariaDB disabling binary logging by default while MySQL doesn't which is probably the more accurate explanation: https://dba.stackexchange.com/questions/327303/mysql-8-twenty-times-slower-than-mariadb-10-3

  • Like 2
Link to comment
Share on other sites

Have recognized the speed increase with a MariaDB / InnoDB project set up too. Never investigated further, why it feels much more responsive than comparable setups w/o InnoDB so far. 

  • Like 1
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...