Website-Suche

So führen Sie MySQL/MariaDB-Abfragen direkt über die Linux-Befehlszeile aus


Wenn Sie für die Verwaltung eines Datenbankservers verantwortlich sind, müssen Sie möglicherweise von Zeit zu Zeit eine Abfrage ausführen und diese sorgfältig prüfen. Sie können dies zwar über die MySQL/MariaDB-Shell tun, aber mit diesem Tipp können Sie die MySQL/MariaDB-Abfragen direkt über die Linux-Befehlszeile ausführen UND die Ausgabe unter speichern eine Datei zur späteren Überprüfung (dies ist besonders nützlich, wenn die Abfrage viele Datensätze zurückgibt).

Schauen wir uns einige einfache Beispiele für die direkte Ausführung von Abfragen über die Befehlszeile an, bevor wir zu einer komplexeren Abfrage übergehen können.

Um alle Datenbanken auf Ihrem Server anzuzeigen, können Sie den folgenden Befehl ausgeben:


mysql -u root -p -e "show databases;"

Führen Sie als Nächstes den folgenden Befehl aus, um eine Datenbanktabelle mit dem Namen tutorials in der Datenbank tecmintdb zu erstellen:


mysql -u root -p -e "USE tecmintdb; CREATE TABLE tutorials(tut_id INT NOT NULL AUTO_INCREMENT, tut_title VARCHAR(100) NOT NULL, tut_author VARCHAR(40) NOT NULL, submissoin_date DATE, PRIMARY KEY (tut_id));"

Wir verwenden den folgenden Befehl und leiten die Ausgabe an den Befehl tee weiter, gefolgt vom Dateinamen, in dem wir die Ausgabe speichern möchten.

Empfohlene Lektüre: 20 MySQL/MariaDB-Befehle für die Datenbankverwaltung unter Linux

Zur Veranschaulichung verwenden wir eine Datenbank mit dem Namen employees und einen einfachen Join zwischen den Tabellen employees und salaries. Geben Sie in Ihrem Fall einfach die SQL-Abfrage zwischen den Anführungszeichen ein und drücken Sie die Eingabetaste.

Beachten Sie, dass Sie aufgefordert werden, das Passwort für den Datenbankbenutzer einzugeben:


mysql -u root -p -e "USE employees; SELECT DISTINCT A.first_name, A.last_name FROM employees A JOIN salaries B ON A.emp_no = B.emp_no WHERE hire_date < '1985-01-31';" | tee queryresults.txt

Zeigen Sie die Abfrageergebnisse mit Hilfe des Befehls cat an.


cat queryresults.txt

Da die Abfrageergebnisse in einer Nur-Text-Datei vorliegen, können Sie die Datensätze einfacher mit anderen Befehlszeilendienstprogrammen verarbeiten.

Zusammenfassung

Wir haben mehrere Linux-Tipps zusammengestellt, die für Sie als Systemadministrator nützlich sein könnten, wenn es darum geht, Ihre täglichen Linux-Aufgaben zu automatisieren oder einfacher auszuführen.

Empfohlene Lektüre: So sichern und wiederherstellen Sie MySQL/MariaDB-Datenbanken

Haben Sie weitere Tipps, die Sie mit dem Rest der Community teilen möchten? Wenn ja, nutzen Sie bitte das Kommentarformular unten.

Ansonsten können Sie uns gerne Ihre Gedanken über die Auswahl an Tipps mitteilen, die wir uns angesehen haben, oder darüber, was wir hinzufügen oder möglicherweise tun können, um die einzelnen Tipps zu verbessern. Wir freuen uns von Ihnen zu hören!