pragmaMx Support Forum

alles für Webmaster => PhP & mySQL => Thema gestartet von: Fokuna2 am 02 Mai 2017, 19:12:00

Titel: Umstellung auf Mysql 5.7 z.b. Modul: Documents
Beitrag von: Fokuna2 am 02 Mai 2017, 19:12:00
Hallo Leser, PMX Nutzer,

mein Provider Udmedia hat aus Sicherheitsgründe seiner Datenbankserver auf MySQL 5.7 umgestellt, kann es sein das einige Module wie z.b.Documents Probleme hat ?
Den Ich bekomme folgende Fehlermeldung raus:

mysql error (1055):
Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column '{dbname}.s.id' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by
query: SELECT s.id, s.parent_id, s.title, s.date_created, s.owner_id, s.owner_name, s.publish, s.access, s.language,
count(*)+(v.leftID >1) As level,
FLOOR((s.rightID-s.leftID)/2) as childs ,
((min(v.rightID)-s.rightID-(s.leftID >1))/2) > 0 AS lower,
(((s.leftID-max(v.leftID)>1))) AS upper ,
((min(v.leftID)>s.rightID)) AS upperid
from {prefix}_content as n,
{prefix}_content as v,
{prefix}_content as s
WHERE s.module_name='Documents'
AND v.module_name='Documents'
AND n.module_name='Documents'
AND n.id='1'
AND s.leftID >'1'
AND s.leftID BETWEEN v.leftID AND v.rightID
AND s.leftID BETWEEN n.leftID AND n.rightID
AND (v.id != s.id OR s.leftID = 1)
AND s.parent_id=1

GROUP BY s.leftID
ORDER by s.leftID

in includes/classes/Content.php on line 1291


kann man das beheben ?

Mein Provider empfiehlt, bis zum Update folgendes einzusetzen:
SET SESSION sql_mode='NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

Quelle: https://hilfe.udmedia.de/content/75/557/de/wie-kann-ich-den-sql_mode-nach-der-umstellung-auf-mysql-57-anpassen.html
Titel: Re:Umstellung auf Mysql 5.7 z.b. Modul: Documents
Beitrag von: Olaf / TerraProject am 02 Mai 2017, 21:49:45
ja, die Probleme sind uns auch schon bekannt, wir arbeiten dran
Titel: Re:Umstellung auf Mysql 5.7 z.b. Modul: Documents
Beitrag von: Olaf / TerraProject am 06 Mai 2017, 11:10:42
du kannst mal in der mx_db_mysqli.php in der Zeile 448 folgendes einfügen
self::$instance->query("SET SESSION sql_mode='NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION'");

und dann mal Rückmeldung geben....