Dieser Artikel erklärt MySQL und wie man Benutzer und Datenbanken im Tool verwaltet.
Was ist MySQL?
Datenbanken sind organisierte Sammlungen von Daten. Sie können sie verwenden, um reine Daten wie Kreditkarteninformationen, Produkt-IDs, Preise, Listen von Dingen usw. zu speichern. Komplexere Dinge wie Bilder, Dateien oder Dokumente würden Sie jedoch nicht speichern. Wenn es hilft, ist es ein bisschen wie Microsoft®, Excel®, wo Sie nur die Rohdaten hineinkopieren, um sie später zu speichern, zu verarbeiten oder abzurufen. Und MySQL® ist eine sehr häufig verwendete Art von Linux®-Datenbank.
MySQL versus MariaDB
Möglicherweise haben Sie MySQL installiert, aber es sieht so aus, als würde es MariaDB® heißen. Als Oracle® MySQL im Jahr 2010 erwarb, schufen die ursprünglichen Gründer dann MariaDB als gleichwertigen Ersatz für den Fall, dass Oracle MySQL einstellte. MySQL und MariaDB sind also weitgehend gleich und austauschbar. Die Informationen in diesem Artikel gelten für beide.
Prüfen Sie die Version
Führen Sie den folgenden Befehl aus, um Ihre Datenbankversion zu überprüfen:
# mysql -v
Anmelden
Melden Sie sich mit einer der folgenden Methoden bei Ihrer Datenbank an:
Methode 1:SSH als Root anmelden, dann bei MySQL anmelden
Wenn dies bereits die Standardoption ist, erwägen Sie, sie in Ruhe zu lassen. Wenn nicht, erstellen Sie die folgende Datei mit dem von Ihnen gewählten Texteditor:
# vim /root/.my.cnf
[client]
user=root
password=<password>
Oder wenn Sie es vorziehen, können Sie es stattdessen so erstellen mit:
# echo -e "\n[client]\nuser=root\npassword=<PASSWORD>" >> /root/.my.cnf
Die SecureShell (SSH) in Ihren Server als root
, und melden Sie sich bei MySQL an, indem Sie den folgenden Befehl ausführen:
# mysql
Methode 2:SSH zum Server, dann Anmeldung bei MySQL
Wenn Sie sich zuerst per SSH mit Ihrem Server verbinden, verbindet sich Ihr Benutzer über localhost
mit MySQL weil Sie bereits mit MySQL auf dem Rechner sind.
Melden Sie sich bei localhost an, indem Sie den folgenden Befehl ausführen:
# mysql -u <USER> -p
Methode 3:Direkt mit MySQL verbinden
Wenn Sie sich von Ihrem Computer aus direkt mit MySQL verbinden möchten, benötigen Sie den Hostnamen oder die IP-Adresse des MySQL-Servers. Führen Sie dann den folgenden Befehl aus:
# mysql -h <HOSTNAME_OR_IP> -u <USER> -p
Platzhalter in MySQL
In der Software ist eine Wildcard eine Art Platzhalter, der durch ein Sternchen (*) repräsentiert wird. Dieser *
kann eine beliebige Kombination aus Buchstaben/Zahlen/Symbolen bedeuten, sodass Sie „12345“ als 1* or *3* or *5
darstellen könnten . Wenn Sie beispielsweise einen Namen suchen möchten, der mit dem Buchstaben M beginnt, können Sie nach M*
suchen .
In MySQL ist das Platzhalterzeichen ein Prozentzeichen (%).
Führen Sie beispielsweise den folgenden Befehl aus, um nach allen Datenbanken zu suchen, die auf das Wort schema enden :
> show databases like "%schema";
Allgemeine MySQL-Befehle
Dies sind einige gängige MySQL-Befehle:
Hinweis: Beenden Sie alle MySQL-Befehle mit einem Semikolon (; ).
Datenbanken auflisten:
> show databases;
Datenbank erstellen:
> create database <DATABASE>;
Datenbank löschen:
> drop database <DATABASE>;
Häufige benutzerbezogene Befehle
Alle Benutzer verbinden sich von irgendwoher. Wenn die Hosts als localhost angezeigt werden , sie haben sich zuerst mit dem Server und dann mit MySQL verbunden. Wenn es als IP-Adresse angezeigt wird, sind sie direkt mit MySQL verbunden.
DB-Benutzer anzeigen:
> select user, host from mysql.user;
DB-Benutzer und verschlüsselte Passwörter anzeigen:
> select user, host, password from mysql.user;
Benutzer mit vollen Berechtigungen erstellen:
> grant all on *.* to sher@localhost identified by "sdF5";
Dies kann für localhost, IP-Adresse oder % überall sein (was wir nicht empfehlen):
> grant all on *.* to [email protected] identified by "sdF5";
Benutzer umbenennen oder Host ändern:
> rename user user@ip1 to user@ip2;
Aktualisieren:
> flush privileges;
Befehle für Berechtigungen, Gewährungen und Berechtigungen
In MySQL gelten die üblichen Linux-basierten Lese-, Schreib- und Ausführungsregeln nicht. Stattdessen weisen Sie Benutzern Berechtigungen als Privilegien zu oder Zuschüsse , das viel detaillierter und spezifischer ist. Die folgenden Abschnitte zeigen einige Beispiele:
Nutzerberechtigungen anzeigen:
> show grants for '<user>'@<localhost/IP>;
Nutzerberechtigungen hinzufügen:
> GRANT SELECT,INSERT,UPDATE on <database>.* to <user>@<localhost/IP>;
Alle Nutzerberechtigungen entfernen:
> revoke ALL on *.* from <user>@<localhost/IP>;
Erstellen Sie eine Datenbank und fügen Sie den Benutzer dafür hinzu (Lesen/Schreiben bedeutet alle):
> create database dbase;
> grant all on dbase.* to <user>@<localhost/IP> identified by 'passwd';
Zuschüsse
Die folgende Liste zeigt einige der gängigen MySQL-Zuteilungen:
- ALLE PRIVILEGIEN :Alle Zugriffe (auf bestimmte DB / alles)
- ERSTELLEN :Neue Tabellen / DBs erstellen
- LÖSCHEN :Tabellen / DBs löschen
- LÖSCHEN :Zeilen aus Tabellen löschen
- EINFÜGEN :Zeilen in Tabellen einfügen
- AUSWÄHLEN :Verwenden Sie den Select-Befehl, um DBs durchzulesen (read-only)
- AKTUALISIEREN :Tabellenzeilen aktualisieren
- VERWENDUNG :Keine Privilegien, Standard
- OPTION GEWÄHREN :Gewähren oder entfernen Sie die Privilegien anderer Benutzer
- CRUD :Erstellen, Lesen, Aktualisieren, Löschen
Verwenden Sie die Registerkarte „Feedback“, um Kommentare abzugeben oder Fragen zu stellen. Sie können auch mit uns ins Gespräch kommen.