Kategorie:Lösungen für Fehlerfälle

Aus SiteparkWiki

Wechseln zu: Navigation, Suche

(SQLException): Illegal mix of collations (utf8_general_ci,IMPLICIT) and (utf8_unicode_ci,IMPLICIT)

Dieser Fehler tritt auf wenn die collations der Datenbank nicht richtig gesetzt sind. Aufgefallen bei openSUSE 11.4

Die Variablen müssen wie folgt gesetzt sein:

mysql> show variables like 'colla%';
+----------------------+-----------------+
| Variable_name        | Value           |
+----------------------+-----------------+
| collation_connection | utf8_general_ci |
| collation_database   | utf8_general_ci |
| collation_server     | utf8_general_ci |
+----------------------+-----------------+

Ist dies nicht der Fall können die fehlerhaften Setzungen wie folgt korrigiert werden:

collation_connection

MySql-Client verwendet die falsche collation. In /etc/my.cnf

[client]
...
default-character-set= utf8

setzen

collation_database

Datenbank verwendet falsche collation. In MySQL-Konsole:

mysql> ALTER DATABASE [database] COLLATE utf8_general_ci;


collation_server

MySql-Server verwendet falsche collation. In /etc/my.cnf

[mysqld]
...
default-character-set= utf8
default-collation = utf8_general_ci


Sollte der Fehler immer noch nicht behoben sein, können die collations der Tabellen noch geprüft werden:

mysql> show table status;

connection invalid No ManagedConnections available within configured blocking timeout

In der MySQL Konfiguration sind möglicherweise Connection Timeouts konfiguriert. Diese müssen deaktiviert werden.

# Connection timeout
#connect_timeout                   = 60
 
# Timeout for inactive connections
#wait_timeout                      = 60


Bilder können nicht berechnet werden

  • Fehlermeldung im ies.out: Out of Memory
Die Bilder mit dem ImageMagick Kommando convert über einen System-Call Aufruf es IES-Prozesses berechnet. Linux prüft, bevor der Kind-Prozess erzeugt wird, ob genügend freier Arbeistspeicher vorhanden ist um den Prozess zu starten. Hierbei ist der verwendete Arbeitsspeicher des Elternprozesses entscheidend. Auch wenn der Kind-Prozess selber den Speicher nicht benötigt wird diese Überprüfung vorgenommen. Um diese Problem zu lösen, gibt es zwei Lösungsvorschläge
  1. Vergrößerung des Swap-Bereiches auf einen Wert der ausreicht, um freien Arbeitsspeicher in Höhe des verwendeten Speicher des IES-Prozesses bereit zu stellen (z.B. 1 bis 2 fache des vorhanden RAM)
  2. Parameter vm.overcommit_memory (http://www.linuxinsight.com/proc_sys_vm_overcommit_memory.html)
Mit folgendem Kommando können sie den Parameter ohne Neustart setzten:
sysctl -w vm.overcommit_memory=1
Damit auch nach einem Neustart des Servers der Wert wieder gesetzt wird, müsste auch noch folgender Eintrag in der Datei /etc/sysctl.conf eingetragen werden:
vm.overcommit_memory=1

Diese Kategorie enthält zur Zeit keine Seiten oder Medien.

Persönliche Werkzeuge
Geschützter Bereich