ERROR 1055 (42000)MySQL: ERROR 1055 nach Umzug, GROUP BY lief vorher jahrelang
Dieselbe Abfrage, die auf dem alten Server lief, scheitert jetzt mit ERROR 1055 und only_full_group_by. Der neue Server ist nicht kaputt, nur ehrlich.
// Schlagwort
Alle 18 Layer-8-Fehler mit dem Schlagwort „Datenbank“ – verifizierte Lösungen, trocken kommentiert.
ERROR 1055 (42000)Dieselbe Abfrage, die auf dem alten Server lief, scheitert jetzt mit ERROR 1055 und only_full_group_by. Der neue Server ist nicht kaputt, nur ehrlich.
Verbindungen stehen stundenlang auf idle in transaction, Sperren bleiben, VACUUM kommt nicht hinterher. Der Timeout dafür steht ab Werk auf null.
Der Monatsbericht bricht immer zur gleichen Sekunde ab. Kein Absturz, sondern statement_timeout, pro Rolle oder vom Pool gesetzt, nicht in der conf.
work_mem gilt nicht je Abfrage, sondern je Sortier- oder Hash-Operation; Hash-Tabellen dürfen ab Werk das Doppelte. Gesamt: ein Vielfaches.
WAL verlangt alle Prozesse auf demselben Rechner, weil der wal-index im gemeinsamen Speicher liegt. Über ein Netzdateisystem funktioniert das nicht.
utf8 ist in MySQL nicht UTF-8, sondern utf8mb3 mit höchstens drei Byte pro Zeichen. Emoji brauchen vier — und fallen deshalb hinten runter.
1298Benannte Zeitzonen funktionieren nur, wenn die Zeitzonentabellen in der mysql-Datenbank gefüllt sind. Frisch installiert sind sie leer.
Die Sortierbibliothek des Betriebssystems hat sich geändert. PostgreSQL warnt vor einem Versions-Konflikt — Indizes auf Textspalten sind dann unbrauchbar.
Die Datenbank verweigert jede schreibende Transaktion. Nicht die Platte ist voll, sondern die Transaktionsnummern gehen aus — Autovacuum kam nicht durch.
Die Spalte heißt INTEGER, enthält aber „42“ als Zeichenkette. SQLite bindet den Datentyp an den Wert, nicht an die Spalte — und meckert nicht.
Die .db-Datei allein ist im WAL-Modus keine vollständige Datenbank. Ohne die -wal-Datei fehlen Transaktionen oder die Kopie ist beschädigt.
Die Liste ist alphabetisch, aber Ärzte steht hinter Zylinder. Alphabetische Reihenfolge ist keine Eigenschaft der Zeichen, sondern der Sprache.
Der Nachname endet auf einem schwarzen Rautezeichen, das Feld meldet zu lang. In UTF-8 ist ein Zeichen ein bis vier Bytes – Länge ist zweideutig.
password authentication failed for userPostgreSQL meldet „password authentication failed“? Falsches Passwort, falscher Nutzer oder pg_hba.conf erlaubt die Methode nicht. So kommst du rein.
sorry, too many clients alreadyDie Datenbank weist neue Verbindungen ab? Das Verbindungslimit ist erreicht — meist, weil eine App Verbindungen nicht schließt oder ein Pool fehlt.
Access denied for userDer Login wird abgewiesen, obwohl das Passwort stimmt? Bei MySQL zählt auch, von welchem Host aus man kommt — der Benutzer ist an eine Herkunft gebunden.
connection refusedDie App erreicht die Datenbank nicht — Connection refused? Meist lauscht PostgreSQL nur auf localhost oder die Client-Freigabe in pg_hba.conf fehlt.
database is lockedSQLite meldet „database is locked“? Sie erlaubt nur einen Schreiber — ein hängender Zugriff oder ein Netzlaufwerk bringt sie ins Stocken.