Kategorien
Allgemein Development

MySQL – root Login nicht (mehr) möglich

Nach der erfolgreichen Installation eines MySQL Servers kann es vorkommen, dass der Login als Benutzer „root“ ausschließlich über die Shell möglich ist. Selbst, wenn vermeintlich per „mysql_secure_installation“ ein Passwort gesetzt wurde. Grund dafür ist das Authentication Plugin „auth_socket“, das per Default für den Benutzer „root“ eingestellt ist. Dieses erwartet keinerlei Passwörter beim Login, ermöglicht diesen aber nur über die Shell.

Wenn man sich allerdings per Adminer, phpMyAdmin etc. klassisch mit einem Passwort anmelden will, gibt es hierfür zwei Lösungsansätze.

Kategorien
Development

[MySQL] SELECT … ORDER BY -> Umlaute (Konvertierung)

Um in einem „MySQL SELECT“ dafür zu sorgen, dass eine Sortierung auch mit Umlauten am Anfang eines Wortes richtig funktioniert, muss man nur eine kleine Veränderung im Bereich des „ORDER BY“ vornehmen. Das Zauberwort heißt „REPLACE„.

In meinem Beispiel gehe ich davon aus, dass die Umalute als Entitäten in der Datenbank gespeichert wurden.

Ä = Ä

Wenn man in diesem Fall nichts am „ORDER BY“ ändert, würden die Einträge mit den Umlauten ganz am Anfang erscheinen (wegen dem &-Zeichen). Mit der „REPLACE“ Funktion kann ich beliebige Zeichen während der Sortierung kurzzeitig ersetzen lassen.

Beispiel:

ORDER BY
  REPLACE (
    REPLACE (
      REPLACE (
        SPALTENNAME ,"Ä","Ae"
      ), "Ö","Oe"
    ), "Ü","Ue"
  ) ASC

Nun werden die Entitäten durch „Ae, Oe oder Ue“ ersetzt und die Einträge mit den Umlauten erscheinen bei „A, O oder U“.