Site is under maintenance mode. Please wait few min!
Saltar al contenido

Introducción a los nuevos módulos ECMAScript en el Nodo v12

marzo 4, 2020

 

Introducción

olvido ocurre contraseñas a lo mejor de nosotros. Si olvida o pierde la raíz contraseña para su base de datos MySQL o MariaDB, todavía se puede acceder y restablecer la contraseña si tiene acceso al servidor y una cuenta de usuario con privilegios sudo.

Nota: En fresca Ubuntu 18.04 instalaciones, el defecto de MySQL o configuración MariaDB por lo general le permite acceder a la base de datos (con privilegios administrativos completos) sin proporcionar una contraseña siempre y cuando se haga la conexión de la raíz del sistema cuenta. En este escenario, puede no ser necesario para restablecer la contraseña. Antes de continuar con el restablecimiento de su base de datos raíz contraseña intente acceder a la base de datos con el comando sudo mysql. Si esto resulta en un acceso negaron error, siga los pasos de este tutorial.

Este tutorial muestra cómo restablecer la raíz contraseña para bases de datos MySQL y MariaDB instalados con el gestor de paquetes apt en Ubuntu 18.04. El procedimiento para cambiar las raíces difiere de contraseñas dependiendo de si se ha instalado MySQL o MariaDB, así como la configuración por defecto systemd el que se incluye con la distribución o paquetes de otros proveedores. Mientras que las instrucciones de este tutorial pueden trabajar con otro sistema o versiones de servidor de base de datos, que han sido probados específicamente con Ubuntu 18.04 y paquetes de distribución-suministrado.

Requisitos previos

para recuperar sus MySQL o raíz MariaDB contraseña , necesitará:

  • El acceso al servidor de Ubuntu 18.04 ejecutar MySQL o MariaDB con un usuario sudo u otra forma de acceder al servidor con privilegios de root. Con el fin de probar los métodos de recuperación de este tutorial sin afectar a su servidor de producción, utilice el tutorial de configuración inicial del servidor para crear un servidor de prueba con un usuario normal, no root con privilegios sudo. A continuación, instalar MySQL siguiendo Cómo instalar MySQL en Ubuntu 18.04.

Paso 1 – Identificación de la base de datos de versión y detener el servidor

Ubuntu 18.04 carreras ya sea MySQL o MariaDB, una caída en el popular reemplazo que es totalmente compatible con MySQL. Tendrá que utilizar diferentes comandos para recuperar la contraseña de root en función de cuál de ellas ha instalado, así que siga los pasos de esta sección para determinar el servidor de base de datos que se está ejecutando.

Comprobación de la versión con el siguiente comando:

mysql --version

  • MySQL –version

Si está ejecutando MariaDB, verá “MariaDB” precedido por el número de versión en la salida:

MariaDB outputmysql Ver 15.1 Distrib 10.1.29-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2

podrás ver una salida como ésta MySQL si se está ejecutando:

MySQL outputmysql Ver 14.14 Distrib 5.7.22, for Linux (x86_64) using EditLine wrapper

Tome nota de qué base de datos, ya que esto determina los comandos apropiados a seguir en el resto de este tutorial.

Con el fin de cambiar la raíz contraseña, tendrá que cerrar el servidor de base de datos. Si está ejecutando MariaDB, puede hacerlo con el siguiente comando:

sudo systemctl stop mariadb

  • sudo parada systemctl MariaDB

Para MySQL, apagar el servidor de base de datos ejecutando:

sudo systemctl stop mysql

  • sudo parada systemctl MySQL

Con la base de datos detuvo, se puede reiniciar en modo seguro para restablecer la contraseña de root.

Paso 2 – Reinicio del servidor de base de datos Sin Comprobaciones de permisos

ejecutar MySQL y MariaDB sin comprobación de permisos permite acceder a la base de datos de línea de comandos con privilegios de root sin proporcionar una contraseña válida. Para ello, tiene que dejar la base de datos de carga de las tablas de permisos , que almacenan la información de privilegios de usuario. Puesto que esto es un poco de un riesgo para la seguridad, es posible que también desea desactivar la creación de redes para evitar que otros clientes se conecten al servidor temporalmente vulnerables.

en función del servidor de base de datos que haya instalado, la forma de iniciar el servidor sin tener que cargar las tablas de permisos difiere.

Configuración MariaDB empezar sin tablas de permisos

Con el fin de iniciar el servidor MariaDB sin las tablas de permisos, vamos a utilizar el archivo unidad de systemd para configurar parámetros adicionales para el demonio del servidor MariaDB.

Ejecutar el siguiente comando que establece la variable de entorno MYSQLD_OPTS utilizado por MariaDB en el arranque. Los –skip-grant-tables y opciones –skip-networking dicen MariaDB para poner en marcha sin cargar las tablas de permisos o funciones de red:

sudo systemctl set-environment MYSQLD_OPTS="--skip-grant-tables --skip-networking"

  • sudo MYSQLD_OPTS systemctl conjunto con el medio = «- skip-grant-tables – skip-networking»

a continuación, iniciar el servidor MariaDB:

sudo systemctl start mariadb

  • sudo MariaDB inicio systemctl

Este comando no producirá salida, pero se reiniciará el servidor de base de datos, teniendo en cuenta los nuevos valores de variables de entorno.

puede asegurarse que comenzó con sudo systemctl estado MariaDB.

Ahora usted debería ser capaz de conectarse a la base de datos como el usuario root MariaDB sin proporcionar una contraseña:

sudo mysql -u root

  • sudo mysql -u root

Inmediatamente verá una base de datos Indicador Shell:

MariaDB promptType 'help;' or 'h' for help. Type 'c' to clear the current input statement.

MariaDB [(none)]>

Ahora que tiene acceso a la base de datos del servidor, puede cambiar la raíz contraseña como se muestra en el Paso 3.

Configuración de MySQL se inicie sin tablas de permisos

con el fin de iniciar el servidor MySQL sin sus tablas de permisos, se le altera la configuración systemd para MySQL pasar parámetros adicionales de línea de comandos al servidor en el arranque.

Para ello, ejecute el siguiente comando:

sudo systemctl edit mysql

  • sudo systemctl editar mysql

Este comando se abrirá un nuevo archivo en el editor nano, que va a utilizar para el servicio edición de MySQL anulaciones . Estos cambios los parámetros de servicio por defecto para MySQL. Este archivo estará vacío, por lo que añadir el siguiente contenido:

[Service]
ExecStart=
ExecStart=/usr/sbin/mysqld --daemonize --pid-file=/run/mysqld/mysqld.pid --skip-grant-tables --skip-networking

La primera declaración ExecStart borra el valor por defecto, mientras que el segundo proporciona systemd con el nuevo comando de inicio que incluye parámetros de carga a desactivar las tablas de permisos y capacidades de red.

Presione Ctrl-x para salir del archivo, entonces Y para guardar los cambios realizados, a continuación, ENTER para confirmar el nombre del archivo.

Actualizar la configuración systemd para aplicar estos cambios:

sudo systemctl daemon-reload

  • sudo systemctl daemon-recarga

Ahora iniciar el servidor MySQL:

sudo systemctl start mysql

  • sudo mysql inicio systemctl

El comando mostrará ninguna salida, pero la base de datos servidor se iniciará. Las tablas de permisos y las redes no serán habilitadas.

Conectar a la base de datos como usuario root:

sudo mysql -u root

  • sudo mysql -u root

Inmediatamente verá una cáscara de base de datos de línea de comandos:

MySQL promptType 'help;' or 'h' for help. Type 'c' to clear the current input statement.

mysql>

Ahora que tiene acceso al servidor, se puede cambiar el contraseña de root .

Paso 3 – Cambio de la contraseña de root

El servidor de base de datos ya está funcionando en un modo limitado; las tablas de permisos no están cargados y no hay soporte de red habilitada. Esto le permite acceder al servidor sin proporcionar una contraseña, pero le prohíbe la ejecución de comandos que los datos de alter. Para restablecer la raíz contraseña, debe cargar las tablas de permisos ahora que ha obtenido acceso al servidor.

indicar al servidor de base de datos para recargar las tablas de permisos con el comando FLUSH PRIVILEGIOS. FLUSH PRIVILEGES

FLUSH PRIVILEGES;

  • ;

Ahora puede cambiar la raíz contraseña. El método que se utiliza depende de si se está utilizando MariaDB o MySQL.

Cambio de la contraseña MariaDB

Si está utilizando MariaDB, ejecute la siguiente instrucción para establecer la contraseña de la cuenta raíz , asegurándose de reemplazar new_password con una fuerte nueva contraseña que recordará.

UPDATE mysql.user SET password = PASSWORD('new_password') WHERE user = 'root';

  • ACTUALIZACIÓN mysql.user SET password = PASSWORD ( ‘new_password’) donde el usuario = ‘root’;

Verá esta salida que indica que la contraseña ha cambiado:

OutputQuery OK, 1 row affected (0.00 sec)
Rows matched: 1 Changed: 1 Warnings: 0

MariaDB permite el uso de mecanismos de autenticación personalizados, por lo que ejecutar las dos instrucciones siguientes para asegurarse de MariaDB utilizará su mecanismo de autenticación por defecto para la nueva contraseña que asignó a la raíz cuenta:

UPDATE mysql.user SET authentication_string = '' WHERE user = 'root';
UPDATE mysql.user SET plugin = '' WHERE user = 'root';

  • ACTUALIZACIÓN mysql.user SET authentication_string = » donde el usuario = ‘root’;
  • ACTUALIZACIÓN mysql.user conjunto de plugin = » donde el usuario = ‘root’;

Verá la siguiente salida para cada declaración:

OutputQuery OK, 0 rows affected (0.01 sec)
Rows matched: 1 Changed: 0 Warnings: 0

La contraseña ha sido cambiada. Escriba exit para salir de la consola MariaDB y vaya al paso 4 para reiniciar el servidor de base de datos en modo normal.

Cambio de la contraseña de MySQL

Para MySQL, ejecute la siguiente instrucción para cambiar la raíz la contraseña del usuario , en sustitución de new_password con una contraseña que usted recuerde:

UPDATE mysql.user SET authentication_string = PASSWORD('new_password') WHERE user = 'root';

  • ACTUALIZACIÓN mysql.user SET authentication_string = PASSWORD ( ‘new_password ‘) donde el usuario = ‘root’;

Verá esta salida que indica la contraseña se cambió correctamente:

OutputQuery OK, 1 row affected (0.00 sec)
Rows matched: 1 Changed: 1 Warnings: 0

MySQL permite el uso de mecanismos de autenticación personalizados, por lo que ejecutar la siguiente instrucción para decirle a MySQL touse su mecanismo de autenticación predeterminado para autenticar al usuario root utilizando la nueva contraseña :

UPDATE mysql.user SET plugin = 'mysql_native_password' WHERE user = 'root';

  • ACTUALIZACIÓN mysql.user conjunto de plugin ‘mysql_native_password’ = = donde el usuario ‘root’;

Usted verá una salida similar a la orden anterior:

OutputQuery OK, 1 row affected (0.00 sec)
Rows matched: 1 Changed: 1 Warnings: 0

La contraseña ha sido cambiada. Salir de la consola de MySQL por la salida a escribir. de

permita que se reinicie la base de datos en el modo de funcionamiento normal.

Paso 4 – Reversión de su base de datos del servidor de configuración normal

Con el fin de reiniciar el servidor de base de datos en su modo normal, tiene que revertir los cambios realizados de manera que la creación de redes está habilitada y las tablas de permisos se cargan. Una vez más, el método que utilice depende de si usó MariaDB o MySQL.

Para MariaDB, desactivar la variable MYSQLD_OPTS entorno en el que previamente establecido:

sudo systemctl unset-environment MYSQLD_OPTS

  • sudo systemctl desarmar con el medio MYSQLD_OPTS

A continuación, reinicie el servicio mediante systemctl:

sudo systemctl restart mariadb

  • sudo systemctl reinicio MariaDB

Para MySQL, retire systemd la configuración modificada:

sudo systemctl revert mysql

  • sudo systemctl Revert MySQL

Usted verá una salida similar a la siguiente:

OutputRemoved /etc/systemd/system/mysql.service.d/override.conf.
Removed /etc/systemd/system/mysql.service.d.

a continuación, vuelva a cargar la configuración systemd para aplicar los cambios:

sudo systemctl daemon-reload

  • sudo systemctl daemon-recarga

Por último, reinicie el servicio:

sudo systemctl restart mysql

  • sudo systemctl reiniciar MySQL

la base de datos se reinicia y ahora ha vuelto a su estado normal. Confirmar que la nueva contraseña funciona mediante el registro como usuario raíz con una contraseña:

mysql -u root -p

  • root de mysql -u -p

se le pedirá una contraseña. Ingrese su nueva contraseña y podrás acceder a la línea de base de datos como se esperaba.

Conclusión

Ha restaurado el acceso administrativo al servidor MySQL o MariaDB. Asegúrese de que la nueva contraseña que ha elegido es fuerte y seguro y mantenerlo en un lugar seguro.

Para obtener más información sobre la gestión de usuarios, mecanismos de autenticación, o maneras de restablecer la contraseña de base de datos para otra versión de MySQL o MariaDB, por favor refiérase a la documentación de MySQL oficial o documentación MariaDB.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *