¿Cómo ejecutar el comando mysql desde la terminal?

23

Tengo el siguiente comando sql que generalmente ejecuto en phpmyadmin seleccionando la base de datos y luego ejecutándolo en la ventana de comandos.

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

Sin embargo, nunca he hecho esto a través de la terminal antes. Mi pregunta es, ¿cómo "apunto" este comando a una base de datos específica y luego lo ejecuto?

jc.yin
fuente
1
Tratar mysql -u root -p.
Mitch
1
¿Cómo puede ejecutar cualquier comando sin iniciar sesión en MySQL? Primero en la terminal, debe iniciar sesión con su MySQL usernamey, por passwordejemplo: mysql -uroot -pluego de iniciar sesión, seleccione su base de datos y use <yourdatabasenameluego puede ejecutar este comando.
Saurav Kumar
También puede poner la base de datos frente a la tabla de esta manera: DELETE FROM {databasename}.wp_posts WHERE post_type` = "adjunto" `
Rinzwind
Consulte también la pregunta relacionada: askubuntu.com/q/1077725/295286
Sergiy Kolodyazhnyy

Respuestas:

33

Para ejecutarlo desde la terminal, primero debe iniciar sesión en mysql y luego ejecutar su programa. El código ideal sería

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

Estoy seguro de que esto funciona, espero que ayude

sosytee
fuente
2
Debe
13

Creo que ha olvidado su nombre de usuario para mySQL. así que ingrese el nombre de usuario y contraseña correctos cuando escriba el comando mysql. por ej.

$ mysql   -u  root   -p 
Enter Password:

Nota: El nombre de usuario y contraseña predeterminados son root

Ashish Saini
fuente
1
El acceso a la raíz predeterminada necesita sudo,sudo mysql -u root -p
Peter Krauss
El acceso a la raíz predeterminada necesita sudo,sudo mysql -u root -p
Peter Krauss
9

Simplemente escriba el siguiente comando en la terminal para usar el intérprete mysql:

mysql -u root -p nombre_basedatos

Ingrese su contraseña, luego puede ejecutar sus comandos mysql.

Otra forma es usar:

mysql -u root -p nombre_basedatos << EF
BORRAR DE `wp_posts` WHERE` post_type` = "adjunto"
eof
Radu Rădeanu
fuente
4

Prueba esto:

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

Utilizando el cliente MySQL CLI.

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

Tenga en cuenta que estoy usando un -unombre de usuario, pero -pno estoy configurando nada. MySQL le pedirá su contraseña.

Y si está tratando de usarlo en línea, puede usar

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

Aquí, observe que estoy usando también -eargumento. Significa ejecutar .

Consejo profesional

En el cliente MySQL puede usar:

mysql> show databases;

si quieres ver todas las dabatasas en tu servidor. Y puedes usar:

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

si desea ver todas las tablas en una base de datos.

Estoy usando $y mysql>como indicaciones, $significa su terminal de Linux y mysql>cliente MySQL.

Juanjo Salvador
fuente
-1

Hay una serie de pasos para ejecutar MySQL en Linux Ubuntu Terminal.

  1. Ejecute MySQL Client usando el siguiente comando: mysql -u root -p
  2. Es importante crear una nueva base de datos primero con el comando: create database demo_db;
  3. Luego debe Autorizar la Base de Datos con el comando: grant all on demo_db.* to ‘testuser’ identified by ‘12345’;
  4. Luego, inicie sesión desde la base de datos con el comando: mysql -u testuser -p
  5. Entonces, puede comenzar con los comandos SQL reales.

¡Me referí al artículo http://www.codingalpha.com/run-mysql-database-linux-ubuntu/ donde explicaron los pasos perfectos para ejecutar MySQL en Linux Ubuntu! Espero tener tu MySQL funcionando perfectamente.

Parag Vidhate
fuente
1
Tenga en cuenta que mysqles el cliente y no el servidor. Antes de iniciar el cliente, verifique que el servidor se esté ejecutando emitiendo sudo status mysqly, si no se está ejecutando, comience con sudo start mysql.
Guss
-2

De acuerdo, básicamente era "SELECT databasename"; luego ejecutando mi comando.

jc.yin
fuente
1
También puede especificar el nombre de la base de datos en la línea de comando, como mysql -u root -p databasename- ingrese la contraseña cuando se le solicite y esté utilizando la base de datos.
David Purdue