# Benutzerverwaltung # Admin Benutzer in MySQL / MariaDB anlegen #### Einleitung In diesem Beitrag geht es kurz darum, wie wir in MySQL und MariaDB einen Administrator-Account anlegen können. Diesen nutzen wir z.B. um administrative Tätigkeiten auf unserem Server durchführen zu können. Um diesen zu erstellen. Benötigen wir einen Datenbank-Benutzer, der schon administrative Privilegien besitzt. #### Benutzer erstellen Im ersten Schritt stellen wir eine Verbindung mit unserem Datenbank-Server her und öffnen die Shell unseres MySQL / MariaDB Servers. Wenn wir uns direkt auf dem Datenbank-Server befinden, können wir den nachstehenden Befehl eingeben, um die Shell zu öffnen. ```bash # Öffnen der Shell ohne Passwort mysql -u root # Öffnen der Shell mit Passwort mysql -u root -p ``` Um jetzt den Benutzer zu erstellen, überlegen wir uns einen Benutzernamen, ein Kennwort und von welchem Server / Client auf den Server zugegriffen wird. Mit dem nachfolgenden Befehl kann der Benutzer erstellt werden: ```sql CREATE USER 'benutzer'@'%' IDENTIFIED BY 'SicheresKennwort123!'; ``` Wir können bei diesem Befehl mit angeben, von welchem Client / Server sich mit dem Benutzer angemeldet werden kann. Diese Information geben wir beim `CREATE USER` Befehl in die Apostroph-Zeichen hinter dem `@` Zeichen ein.
**Zugriff von:** **Angabe**
Vom Host selbst (Direkt vom Datenbank Server)localhost
Von jeder IP-Adresse aus%
Von einer bestimmten IP-Adresse ausIP-Adresse/Subnetzmaske z.B. `192.168.10.5/255.255.255.0`
Als letzten Schritt müssen wir jetzt einmal die Berechtigungen geben. Wir können hier administrative Privilegien für eine Datenbank oder für alle aktuellen und zukünftigen Datenbanken geben. ```sql # Admin für alle aktuellen und zukünftigen Tabellen GRANT ALL PRIVILEGES ON *.* TO 'benutzername'@'%'; # Admin nur für eine Datenbank GRANT ALL PRIVILEGES ON db.* TO 'benutzername'@'%'; # Admin nur für eine Tabelle GRANT ALL PRIVILEGES ON db.tabelle to 'benutzername'@'%'; ``` Wir können uns jetzt mit dem Benutzer an unserer Datenbank anmelden. # Anmeldung mit root auf lokalem Datenbank-Server #### Einleitung In diesem kurzen Artikel geht es kurz darum, wie wir auf unserem **MySQL** oder **MariaDB-Server** einstellen können, dass wir uns dort mit dem Benutzer **root** auf unserem Datenbank-Server anmelden können.

**Info:** Beachte das kein externer Zugriff möglich ist. Dies stellt ein Sicherheitsrisiko dar!

#### Problem beheben Um das Problem zu beheben, müssen wir lediglich die lokale **MySQL-Shell** aufrufen und dort den folgenden Befehl eingeben: ```sql ALTER USER 'root'@'localhost' IDENTIFIED VIA mysql_native_password USING PASSWORD('passwort'); ```

**Wichtig:** Verändere das Wort *"passwort"* durch dein eigenes Passwort!

Ein Login sollte jetzt möglich sein!