Seite 1 von 1

SQl-Fehler durch Kollation?

Verfasst: 26.01.2009 12:06
von karalunka
Hallo zusammen!

Mein Anbieter ist aufgrund von Server-Problemen auf einen neuen Server umgezogen.

Daten etc. sind alle da, jedoch erhalte ich jetzt, wenn ich im Forum arbeite (Beiträge erstellen, berechtigungen ändern etc.) Fehler, wie diese:
SQL ERROR [ mysqli ]

Data too long for column 'log_data' at row 1 [1406]

SQL

INSERT INTO phpbb_log (user_id, log_ip, log_time, log_operation, log_data, log_type) VALUES ('2', '92.72.60.64', 1232967861, 'LOG_ACL_ADD_MOD_LOCAL_M_', 'a:2:{i:0;s:7:\"Druiden\";i:1;s:5:\"âyû\";}', 0)

BACKTRACE


FILE: includes/db/mysqli.php
LINE: 163
CALL: dbal->sql_error()

FILE: includes/functions.php
LINE: 2919
CALL: dbal_mysqli->sql_query()

FILE: includes/acp/acp_permissions.php
LINE: 885
CALL: add_log()

FILE: includes/acp/acp_permissions.php
LINE: 763
CALL: acp_permissions->log_action()

FILE: includes/acp/acp_permissions.php
LINE: 283
CALL: acp_permissions->set_all_permissions()

FILE: includes/functions_module.php
LINE: 507
CALL: acp_permissions->main()

FILE: adm/index.php
LINE: 74
CALL: p_master->load_active()
Ich hab leider nicht viel Plan, aber liegt es nun an einer fehlerhaften Einstellung des Anbieters vom Server, oder kann ich den "Fehler" irgendwie selbständig beheben?

Liebe Grüße

Re: Serverfehler oder Board?

Verfasst: 26.01.2009 12:18
von Mahony
Hallo
Schau mal hier Data too long for column 'bbcode_uid'

Grüße: Mahony

Re: Serverfehler oder Board?

Verfasst: 27.01.2009 07:57
von karalunka
Leider liegt darin nicht der Fehler. Also es ist ja ne andere DB die da spackt =(

Hab mal nachgeschaut:
log_data mediumtext latin1_swedish_ci
und Null ist auf Nein gestellt.

Was muss ich da ändern? =(

Edit:
Ich hab grad durch Zufall nochmal auf meine Version geschaut. Hatte das Forum vor 2 Wochen auf 3.0.4 upgedatet... wurde auch richtig angezeigt.. jetzt zeigt er wieder Version 3.0.2 an.. Soll ich nochmal das Update von 3.0.2 auf 3.0.4 durchführen?

Unvollständiges Update gefunden
phpBB hat ein unvollständiges automatisches Update gefunden. Bitte stell sicher, dass du jeden Schritt des automatischen Updates durchgeführt hast. Du findest unten nochmals den Link oder rufe das „install“-Verzeichnis direkt auf.
Den install-ordner habe ich natürlich nach erfolgreichem update gelöscht vom Server. Kann ich den einfach wieder reinkopieren?

Re: Serverfehler oder Board?

Verfasst: 28.01.2009 07:58
von karalunka
Habe es jetzt erfolgreich auf 3.0.4 upgedatet. Leider besteht der Fehler immer noch. In einem Beitrag von 2007 habe ich den Lösungsansatz gesehen, ich solle die Kollation auf utf8 stellen. Bei mir steht aber alles auf latin_swedish c1 (oder so). Muss ich das jetzt alles ändern, oder ist das schon so gewollt, weil die neuere version damit so arbeitet?

Hilfe =(

Re: SQl-Fehler durch Kollation?

Verfasst: 28.01.2009 10:17
von Mahony
Hallo
Dann versuchs mal mit

Code: Alles auswählen

ALTER TABLE phpbb_log CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci

Grüße: Mahony

Re: SQl-Fehler durch Kollation?

Verfasst: 28.01.2009 11:08
von karalunka
Ich danke erstmal für die Hilfe, würde sie gerne auch ausprobieren, leider ehm ja, weiß ich nicht wo. Ich nutze phpmyAdmin(wird vom provider mitangeboten juch). Ist may be etwas viel verlangt, aber übers DB anlegen gehts bei mir leider ned hinaus. Also quasi als würdet ihr es eurer Omi erklären. Wo muss ich den befehl eingeben, bzw. eine andere Auswahl vornehmen? Danke :)

EDIT:

oha, da hab ich durchs rumspielen deinen sql-befehl ausgeführt ^^
ALTER TABLE `phpbb_log` DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci.. ich teste es

EDIT2:
ALTER TABLE `phpbb_log` CHANGE `log_data` `log_data` MEDIUMTEXT CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL
DAS war zumindest für diesen Fehler die LösunG! *happy*

Muss ich das nun bei allen machen?

Re: SQl-Fehler durch Kollation?

Verfasst: 28.01.2009 11:35
von karalunka
Also.. nachdem ich einige Fehler durchgegangen bin, diese in den Datenbanken per Hand die Kollation auf
utf8_unicode_ci
geändert habe, frage ich mich, ob ich ds nun bei jeder machen muss, oder ob ich auch bei der gesamten DB die Kollation so einstellen kann.