Wie führe ich den Befehl mysql vom Terminal aus aus?

23

Ich habe den folgenden SQL-Befehl, den ich normalerweise in phpmyadmin ausführe, indem ich die Datenbank auswähle und sie dann im Befehlsfenster ausführe.

DELETE FROM `wp_posts` WHERE `post_type` = "attachment"

Allerdings habe ich das noch nie über das Terminal gemacht. Meine Frage ist, wie kann ich diesen Befehl auf eine bestimmte Datenbank "verweisen" und dann ausführen?

jc.yin
quelle
1
Versuchen Sie es mysql -u root -p.
Mitch
1
Wie können Sie einen Befehl ausführen, ohne sich bei MySQL anzumelden? Zuerst müssen Sie sich im Terminal mit MySQL usernameund passwordBsp .: mysql -uroot -panmelden. Wenn Sie einmal angemeldet sind, wählen Sie Ihre Datenbank mit aus. use <yourdatabasenameDann können Sie diesen Befehl ausführen.
Saurav Kumar
Sie können die Datenbank auch wie DELETE FROM {databasename}.wp_posts WHERE folgt vor die Tabelle stellen: post_type` = "attachment" `
Rinzwind
Siehe auch verwandte Frage: askubuntu.com/q/1077725/295286
Sergiy Kolodyazhnyy

Antworten:

33

Damit Sie es vom Terminal ausführen können, müssen Sie zuerst bei mysql angemeldet sein und dann Ihr Programm ausführen. Der ideale Code wäre

mysql -u(username) -p(password) (the name of the database) -e "DELETE FROM `wp_posts` WHERE `post_type` = "attachment""

Ich bin mir sicher, dass dies funktioniert, hoffe es hilft

Sosytee
quelle
2
Sie müssen die Backticks mit \ umgehen, wenn Sie von einem normalen Terminal ausführen
myol
13

Ich denke, Sie haben Ihren Benutzernamen für mySQL vergessen. Bitte geben Sie den richtigen Benutzernamen und das richtige Passwort ein, wenn Sie den Befehl mysql eingeben. für zB

$ mysql   -u  root   -p 
Enter Password:

Hinweis: Der Standardbenutzername und das Standardkennwort lauten root

Ashish Saini
quelle
1
Standard root-Zugriff benötigen sudo,sudo mysql -u root -p
Peter Krauss
Standard root-Zugriff benötigen sudo,sudo mysql -u root -p
Peter Krauss
9

Geben Sie einfach den folgenden Befehl im Terminal ein, um den MySQL-Interpreter zu verwenden:

mysql -u root -p datenbankname

Geben Sie Ihr Passwort ein, dann können Sie Ihre MySQL-Befehle ausführen.

Ein anderer Weg ist:

mysql -u root -p datenbankname << eof
DELETE FROM `wp_posts` WHERE` post_type` = "attachment"
eof
Radu Rădeanu
quelle
4

Versuche dies:

mysql --host *HOST_IP* --user *USER* --password=*PASSWORD* -D *DATABASE_NAME* -e "DELETE FROM `wp_posts` WHERE `post_type` = "attachment" ;
tej18
quelle
1

Verwendung des MySQL CLI-Clients.

$ mysql -u <user> -p
mysql> use <your-database>
mysql> DELETE FROM `wp_posts` WHERE `post_type` = "attachment"

Beachten Sie, dass ich -uund Benutzername verwende, aber in -pnichts einstelle. MySQL wird Sie nach Ihrem Passwort fragen.

Und wenn Sie versuchen, es inline zu verwenden, können Sie es verwenden

$ mysql -u <user> -p <your-database> -e "DELETE FROM `wp_posts` WHERE `post_type` = 'attachment'"

Beachten Sie hier, dass ich auch -eArgument verwende. Es steht für Ausführen .

Profi-Tipp

Im MySQL-Client können Sie Folgendes verwenden:

mysql> show databases;

Wenn Sie alle Datenbankdateien auf Ihrem Server anzeigen möchten. Und Sie können verwenden:

mysql> use <database>;
mysql> show tables;

Wenn Sie alle Tabellen in einer Datenbank anzeigen möchten.

Ich benutze $und mysql>als Eingabeaufforderungen, $meint Ihr Linux-Terminal und mysql>MySQL-Client.

Juanjo Salvador
quelle
-1

Es gibt eine Reihe von Schritten, um MySQL unter Linux Ubuntu Terminal auszuführen.

  1. Führen Sie den MySQL-Client mit dem folgenden Befehl aus: mysql -u root -p
  2. Es ist wichtig, zuerst eine neue Datenbank mit dem folgenden Befehl zu erstellen: create database demo_db;
  3. Dann müssen Sie die Datenbank mit dem folgenden Befehl autorisieren: grant all on demo_db.* to ‘testuser’ identified by ‘12345’;
  4. Melden Sie sich dann über die Datenbank selbst mit dem folgenden Befehl an: mysql -u testuser -p
  5. Anschließend können Sie mit den eigentlichen SQL-Befehlen beginnen.

Ich habe auf den Artikel http://www.codingalpha.com/run-mysql-database-linux-ubuntu/ verwiesen, in dem die perfekten Schritte zur Ausführung von MySQL unter Linux Ubuntu erklärt wurden! Hoffe, ich habe Ihr MySQL perfekt zum Laufen gebracht.

Parag Vidhate
quelle
1
Bitte beachten Sie, dass dies mysqlder Client und nicht der Server ist. Überprüfen Sie vor dem Starten des Clients, ob der Server ausgeführt wird, indem Sie ihn ausstellen. sudo status mysqlWenn er nicht ausgeführt wird, starten Sie ihn mit sudo start mysql.
Guss
-2

Okay, im Grunde war es "SELECT Datenbankname"; dann meinen Befehl ausführen.

jc.yin
quelle
1
Sie können den Datenbanknamen auch in der Befehlszeile angeben, z. B. mysql -u root -p databasename- Passwort eingeben, wenn Sie dazu aufgefordert werden und die Datenbank verwenden.
David Purdue