OpenShift/MySQL-Fehler: lower_case_table_names-Fehler bei der Migration von OS X zu OpenShift

OpenShift/MySQL-Fehler: lower_case_table_names-Fehler bei der Migration von OS X zu OpenShift

Ok, ich habe also eine MySQL 5.x-Datenbank von einer OS X-Instanz gedumpt und habe Probleme, die Datenbank in den OpenShift MySQL 5.5-Container zu importieren. Meine Tabellen sind Camel-Case (z. B. „tblAccounts“), aber das Skript gibt Fehler wie „Tabelle tblaccounts nicht gefunden“ aus.

Ich glaube, dass MySQLs Flag lower_case_table_names unter OS X auf 2 gesetzt ist. Und ich konnte mit dem Befehl rhc set env diese Variable unter OpenShift von 0 auf 2 ändern. Ich erhalte immer wieder den Fehler „Fehlende Tabelle“.

Ich habe mehrere Kombinationen dieses Flags ausprobiert und versucht, die Datenbank aus Skripten neu zu laden, die mit mysqldump und MySQL Workbench erstellt wurden. Ich habe jedoch keine saubere Methode gefunden, bei der dieser Fehler nicht auftritt. Mir gehen die Ideen aus, wie ich dies sauber bewerkstelligen kann. Irgendwelche Vorschläge? Danke,

fc

Antwort1

Ich weiß, das ist ein bisschen spät – aber für alle anderen, die dieses Problem haben.

MariaDB ändert den Wert lower_case_table_namebeim Start von 2 auf 0, wenn es erkennt, dass es sich um ein Dateisystem mit Groß-/Kleinschreibung handelt:

[Warning] lower_case_table_names was set to 2, even though your the file system '/var/lib/mysql/' is case sensitive. Now setting lower_case_table_names to 0 to avoid future problems.

Ich gehe davon aus, dass MySQL dasselbe macht (da es davon abgezweigt ist).

Sie können es jedoch auf einstellen 1und es dauert. Bei mir (ich migriere auch von MacOS) konnte ich dies tun, nachdem ich meine Datenbanken geladen hatte. und es hat gut funktioniert ... aber das scheint gegen die Dokumentation hinsichtlich des Unterschieds zwischen 1und zu verstoßen 2. Wenn MySQL damit nicht zufrieden ist, müssen Sie möglicherweise Ihre Datenbank leeren, es auf einstellen 1und dann Ihre Daten erneut laden.

verwandte Informationen