Este artículo le mostrará cómo utilizar la línea de comandos para exportar, importar o eliminar bases de datos MySQL, así como restablecer la contraseña de root de MySQL.
La línea de comandos es una herramienta de administración de servidor poderosa, rápida y flexible que permite a los administradores realizar una variedad de funciones con comandos simples. En general, la línea de comando en aplicaciones remotas funciona sobre SSH, lo que garantiza la seguridad del canal de comunicación y toda la información transmitida. SSH permite a los administradores administrar archivos, bases de datos y otras aplicaciones web.
Aunque la línea de comandos requiere memorizar algunos comandos y puede parecer difícil para los usuarios que están acostumbrados a la GUI, tiene ventajas como estas:
- Mejor control sobre los sistemas operativos y de archivos
- Rendimiento más rápido
- Las computadoras para emitir comandos requieren menos recursos del sistema que una GUI
- La mayoría de los comandos permanecen casi iguales, en contraste con una interfaz GUI, que puede cambiar con el tiempo debido a mejoras en el diseño o en las funciones.
- No tiene restricciones de tamaño y puede funcionar con archivos y bases de datos muy grandes.
Para usar la línea de comando, debe conectarse al servidor remoto a través de un cliente SSH. Esto puede variar según el sistema operativo. Lea Cómo conectarse a un servidor mediante SSH en Linux y Mac
Usar la línea de comando para administrar bases de datos MySQL
Una vez que acceda al servidor remoto, puede usar la línea de comando para realizar una variedad de funciones. Aunque puede realizar otras funciones, en este artículo solo vamos a discutir cómo puede usar la línea de comandos para administrar bases de datos MySQL.
Cómo exportar una base de datos MySQL desde la línea de comandos
- Abrir terminal o símbolo del sistema
- Utilice la utilidad mysqldump para crear la copia de seguridad o el archivo de exportación
Sintaxis: mysqldump-u[user name] -pag[password] [database name] > [backupfile]
Por ejemplo, para hacer una copia de seguridad de la base de datos sampledb en un archivo llamado sampled-backup, ejecute el comando;
$ mysqldump -u root -p sampledb > sampledb_backup.sql
El sistema le pedirá que ingrese la contraseña.
- Ingrese la contraseña y presione Enter. La exportación comenzará y el mensaje volverá a aparecer cuando finalice.
Si desea guardar la base de datos en una carpeta específica, incluya su ruta en el comando.
mysqldump-u [username] -pag [database-to-dump] > [destination path and filename]
Por ejemplo, para generar el archivo en la carpeta / home / userfolder /, use el comando;
mysqldump -u root -p mydatabase > /home/userfolder/sampledb-dump.sql
Exportar una sola tabla
Si desea exportar una sola tabla
mysqldump -p –user = nombre de usuario nombre-base-datos nombre-tabla> nombre-tabla.sql
Exportar tablas específicas
$ mysqldump -u root -p sampledb table1 table2 > sampledb_tables_backup.sql
Varias bases de datos
Para hacer una copia de seguridad de varias bases de datos con un solo comando, use la sintaxis
$ mysqldump -u root -p --databases sampledb2 sampledb4 sampledb5 > sampledb245_backup.sql
Cómo hacer una copia de seguridad de todas las bases de datos
$ mysqldump -u root -p --all-databases > alldb_backup.sql
Exportar y comprimir el archivo de respaldo
Exportar y crear una versión gzip del archivo SQL
mysqldump -u [user] -p [database_name] | gzip > [file_name].sql.gz
Cómo importar o restaurar los datos de la base de datos desde un archivo de volcado de MySQL
Primero, debe crear una base de datos de destino vacía que será el destino de los datos que se importarán. Puede usar una línea de comando o cPanel para crear la nueva base de datos con un nombre similar o diferente al del archivo de datos de la base de datos de volcado.
Inicie sesión como usuario root con el comando. en el servidor MySQL
mysql -u root -p
Ingresa tu contraseña
Esto le dará el indicador mysql>.
Para crear la nueva base de datos, ejecute
CREATEDATABASE newdatabase_name;
Cierre sesión en el shell de MySQL con el comando exit
mysql>exit
Cuando haya terminado, ahora use el comando mysql para restaurar los datos del archivo de volcado al nuevo archivo de base de datos.
mysql -u [username] -p[password] [newdatabase] < [databasebackupfile.sql]=
Asegúrese de que la versión de origen y destino de MySQL sean la misma versión para evitar problemas de compatibilidad
Cómo eliminar una base de datos en MySQL usando la línea de comando
Para eliminar la base de datos del servidor;
- Inicie sesión con el comando mysql -u yourusername -p. en el servidor MySQL
Para el usuario root, el comando es
mysql -u root -p
La –p le dice al servidor que solicite una contraseña
- Ingrese su contraseña y presione enter. Esto lo llevará al símbolo del sistema de MySQL – mysql>, donde ahora puede usar el comando drop para eliminar la base de datos
- Escriba DROP DATABASE sample_database y presione Entrar. El comando es como
Mysql> DROP DATABASE sample-database;
Esto eliminará sample_database de su servidor y debe tener mucho cuidado ya que no puede deshacer la operación. Si no hay ningún archivo con ese nombre de archivo en su servidor, aparece el error 1008 ‘ERROR 1008 (HY000): No se puede eliminar la base de datos’ tutorial_database ‘; La base de datos no existe ‘.
Si no desea ver este error, agregue la condición ‘si está presente’.
DROPDATABASEIFEXISTSsample-database;
Cómo restablecer la contraseña raíz de la base de datos MySQL
Para restablecer la contraseña de root, debe detener los servicios de MySQL, acceder a MySQL en modo seguro, configurar la nueva contraseña y finalmente reiniciar los servicios.
Detenga el proceso de MySQL con el comando
Sudo /etc/init.d/mysql stop
Inicie MySQL en modo seguro.
sudo mysqld_safe --skip-grant-tables --skip-networking &
Esto inicia el servidor sin cargar las tablas de concesión o la red. El modo seguro le permite acceder y realizar cambios sin la contraseña de root de MySQL.
Después de arrancar en modo seguro, inicie el shell de MySQL ejecutando el comando
mysql -u root mysql
Ingrese la contraseña de root predeterminada y presione Enter
Establecer la nueva contraseña de la base de datos MySQL
Ejecuta el comando
updateusersetpassword=PASSWORD("newprd") whereUser="root";
Recargue todo ejecutando el comando.
FLUSHPRIVILEGES;
Reinicie el servidor de la base de datos normalmente
Detenga el proceso de mysqld y vuelva a iniciarlo
sudo /etc/init.d/mysql stop
sudo /etc/init.d/mysql start
Conclusión
La línea de comandos es una forma rápida y poderosa de administrar bases de datos MySQL y realizar otras funciones del servidor tanto de forma local como remota. A diferencia de las herramientas basadas en GUI, que pueden diferir significativamente con los cambios de versión, los comandos permanecen más o menos iguales a lo largo del tiempo.
Para utilizar la línea de comandos de manera eficaz, debe comprender y recordar cada uno de los comandos relevantes. Sin embargo, también puede utilizar la ayuda incorporada para obtener la sintaxis correcta para la mayoría de los comandos.