d6lts / drupal

Fork of Drupal core for Drupal 6 LTS support.
https://www.drupal.org
GNU General Public License v2.0
130 stars 45 forks source link

MySQL 5.7 support? #66

Open picopaco opened 3 years ago

picopaco commented 3 years ago

Don't know if it is intentional, but I guess supporting MySQL 5.7 has the same "ONLY_FULL_GROUP_BY" problem that prevents D6LTS working on MySQL 8.0. I upgraded a working D6LTS v6.59 to MySQL 5.7 (my hosting company is not supporting MySQL 8) and taxonomies' querys got broken. However, adapting the modified code in database.mysqli.inc to disable ONLY_FULL_GROUP_BY also for 5.7 made the site working fine again. Maybe you could easily add support for 5.7.

BTW: a big thank you to My Drop Wizzard team for your work on D6LTS. I just have a humble site and can't hire any of your plans, but you have been reallly helpful. I owe you some beers!

dsnopek commented 3 years ago

I've been meaning to look into this in detail since you posted but I haven't found the time.

However, we do have several clients who use D6LTS in production on MySQL 5.7 and I have tested it locally on MySQL 8. It's possible there's some configuration setting that we/they are using which makes that work? In any case, just thought I'd drop in that note for now. I'm still planning to look deeper into this later!

kaznovac commented 2 years ago

we are successfully using d6lts in production with mysql5.7

only change version to '5.7.0' in this line https://github.com/d6lts/drupal/blob/e91aab64114d5bf10a47726821c667ab5a846352/includes/database.mysqli.inc#L94

EugenMayer commented 2 years ago

AFAICS this patch is already part of this codebase, I could run 5.7 and 8.0 without any issues.

GreenReaper commented 2 years ago

I have it running on MariaDB 10.5.15, so it's definitely possible, too. Unfortunately I set that up such a long time ago that I don't know if anything specific was required to make that happen. However, the defaults mentioned for SQL_MODE don't include ONLY_FULL_GROUP_BY. The use of the database is at a low enough level and via a stable enough interface that it's rarely the issue.