Accediendo al servidor mysql localhost usando bash

Accediendo al servidor mysql localhost usando bash

Supongamos que quiero acceder al servidor MySQL e imprimir todas las tablas y bases de datos y sus datos en localhost usando un script bash.

El script que tengo se ve así:

mysql -u raíz -p contraseña

Después de ejecutar el script, se abre el shell mysql en lugar de bash. Entonces, ¿cómo puedo ejecutar un comando con MySQL?

Además, ¿qué comando debo ejecutar para imprimir todas las bases de datos, tablas y sus datos?

Editar: ahora entiendo qué comando debo usar, pero aún persiste la pregunta:

Necesito incluirlo en el script, pero al ingresar el comando mysqldump, me solicita la contraseña de forma interactiva.

Entonces, ¿cómo puedo manejar la contraseña en un script bash?

Respuesta1

Vermysqldumpque hace lo que quieres.

Ejemplo de uso:

mysqldump -u root -p --all-databases

Consulte el manual para obtener más interruptores que se adapten a su situación particular.

Respuesta2

prueba esto..

mysqldump -u root -p databasename > filename.sql

todas las tablas se almacenan en nombre de archivo.sql. es como una copia de seguridad.

y si desea volver a almacenar tablas en la base de datos, utilice este comando.

mysqldump -u root -p databasename < filename.sql

Respuesta3

Si ejecuta man mysqldump, obtendrá el siguiente resultado:

--contraseña[=contraseña], -p[contraseña]

La contraseña que se utilizará al conectarse al servidor. Si utiliza el formulario de opción corta (-p), no puede haber un espacio entre la opción y la contraseña. Si omite el valor de la contraseña después de la opción --password o -p en la línea de comando, mysqldump solicitará una.

Especificar una contraseña en la línea de comando debe considerarse inseguro. Consulte la Sección 6.1.2.1, "Directrices para el usuario final sobre seguridad de contraseñas". Puede utilizar un archivo de opciones para evitar dar la contraseña en la línea de comando.

Suponiendo que su contraseña de root sea CONTRASEÑA, simplemente intente con el siguiente comando:

mysqldump -u root -pPASSWORD --all-databases > database.sql

información relacionada