yes usuario usando solucion password para for error documentación dicho denegado clave acceso mysql mariadb

mysql - solucion - Acceso denegado para el usuario ''root'' @ ''localhost''(usando la contraseña: YES) después de una nueva instalación en Ubuntu



error 1045 mysql ubuntu (10)

Ejecute mysql_upgrade.

Mira esto

GRANT ALL PRIVILEGES ON ... WITH GRANT OPTION

dice

sudo mysql -u root use mysql; update user set plugin='''' where User=''root''; flush privileges; exit;

Compruebe que la tabla existe _mysql.proxies_priv_.

Acceso denegado para el usuario ''root'' @ ''localhost'' al intentar otorgar privilegios. ¿Cómo otorgo privilegios?

Hoy hice un inicio de sesión como root en Ubuntu 14.04.1 LTS ll

y luego apt-get install mariadb-server (sin sudo pero como root).

Con mySQL -h localhost -u root --password=<PW> obtuve

Acceso denegado para el usuario ''root'' @ ''localhost'' (usando la contraseña: YES)

Con mySQL -u root -p sesión en la base de datos e hice

GRANT ALL PRIVILEGES ON *.* TO ''root''@''localhost'' IDENTIFIED BY ''<PW>''; FLUSH ALL PRIVILEGES;

Pero esto no ayudó. ¿Tiene usted alguna idea? No encontré la respuesta para las preguntas similares.


El nuevo comando para eliminar los privilegios es:

FLUSH PRIVILEGES

El antiguo comando FLUSH ALL PRIVILEGES ya no funciona.

Obtendrá un error similar al siguiente:

MariaDB [(none)]> FLUSH ALL PRIVILEGES; ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ''ALL PRIVILEGES'' at line 1

Espero que esto ayude :)


El sistema como Ubuntu prefiere usar el complemento auth_socket . Intentará autenticarse comparando su nombre de usuario en DB y el proceso que realiza la solicitud mysql; se describe here

El complemento de socket comprueba si el nombre de usuario del socket (el nombre de usuario del sistema operativo) coincide con el nombre de usuario de MySQL especificado por el programa cliente al servidor, y permite la conexión solo si los nombres coinciden.

En cambio, es posible que desee volver con la contraseña mysql_native_password , que requerirá usuario / contraseña para autenticarse.

Sobre el método para lograr eso, recomiendo this en this lugar.


En Ubuntu 16.04 LTS limpio, el inicio de sesión raíz de MariaDB para localhost cambió del estilo de contraseña al estilo de inicio de sesión sudo ...

entonces, solo haz

sudo mysql -u root

ya que queremos iniciar sesión con contraseña, cree otro usuario ''usuario''

en la consola MariaDB ... (obtienes en la consola MariaDB con ''sudo mysql -u root'')

use mysql CREATE USER ''user''@''localhost'' IDENTIFIED BY ''yourpassword''; /q

entonces en bash shell prompt,

mysql-workbench

y puede iniciar sesión con ''usuario'' con ''su contraseña'' en localhost


Prueba el comando

sudo mysql_secure_installation

presione enter y asigne una nueva contraseña para root en mysql / mariadb .

Si obtiene un error como

ERROR 2002 (HY000): No se puede conectar al servidor MySQL local a través del socket ''/var/run/mysqld/mysqld.sock''

habilitar el servicio con

service mysql start

ahora si vuelves a entrar con

mysql -u root -p

si sigue el problema, ingrese con sudo su y mysql -u root -p ahora aplique permisos a root

GRANT ALL PRIVILEGES ON *.* TO ''root''@''localhost'' IDENTIFIED BY ''<password>'';

Esto solucionó mi problema en MariaDB .

Buena suerte


Solo necesitas usar sudo para que funcione

sudo mysql_secure_installation


Tuve que iniciar sesión en Ubuntu como root para acceder a Mariadb como root. Puede tener algo que ver con ese "Endurecimiento ..." que te indica que hagas la primera vez que lo instales. Entonces:

$ sudo su [sudo] password for user: yourubunturootpassword # mysql -r root -p Enter password: yourmariadbrootpassword

y estas dentro




TL; DR: Para acceder a las versiones más recientes de mysql / mariadb después como usuario root, después de una nueva instalación, debe estar en un shell raíz (es decir, sudo mysql -u root , o mysql -u root dentro de un shell iniciado por su - o sudo -i primero)

Habiendo hecho la misma actualización, en Ubuntu, tuve el mismo problema.

Lo extraño fue que

sudo /usr/bin/mysql_secure_installation

Aceptaría mi contraseña y me permitiría configurarla, pero no pude iniciar sesión como root través del cliente mysql

Tuve que comenzar mariadb con

sudo mysqld_safe --skip-grant-tables

para obtener acceso como root, mientras que todos los demás usuarios aún pueden acceder bien.

Al observar la tabla mysql.user , noté que la raíz del plugin está configurada en unix_socket mientras que todos los demás usuarios está configurada en ''mysql_native_password''. Un vistazo rápido a esta página: https://mariadb.com/kb/en/mariadb/unix_socket-authentication-plugin/ explica que el Unix Socket permite iniciar sesión haciendo coincidir uid del proceso que ejecuta el cliente con el del usuario en la tabla mysql.user . En otras palabras, para acceder a mariadb como root , debe iniciar sesión como root.

Efectivamente, reiniciar mi demonio mariadb con autenticación requerida puedo iniciar sesión como root con

sudo mysql -u root -p

o

sudo su - mysql -u root -p

Una vez hecho esto, pensé en cómo acceder sin tener que hacer el sudo, que es solo una cuestión de ejecutar estas consultas mysql

GRANT ALL PRIVILEGES on *.* to ''root''@''localhost'' IDENTIFIED BY ''<password>''; FLUSH PRIVILEGES;

(reemplazando <password> con la contraseña de root mysql deseada). Esta contraseña habilitada inicia sesión para el usuario root.

Alternativamente, ejecutando la consulta mysql:

UPDATE mysql.user SET plugin = ''mysql_native_password'' WHERE user = ''root'' AND plugin = ''unix_socket''; FLUSH PRIVILEGES;

Cambiará la cuenta de root para usar la contraseña de inicio de sesión sin cambiar la contraseña, pero esto puede dejarlo con una instalación de mysql / mariadb sin contraseña de root.

Después de cualquiera de estos, debe reiniciar mysql / mariadb:

sudo service mysql restart

Y voila tuve acceso desde mi cuenta personal a través de mysql -u root -p

TENGA EN CUENTA QUE HACER ESTO REDUCE LA SEGURIDAD Presumiblemente, los desarrolladores de MariaDB han optado por que el acceso a la raíz funcione de esta manera por una buena razón.

Pensando en ello, estoy bastante feliz de tener que sudo mysql -u root -p así que estoy volviendo a eso, pero pensé en publicar mi solución ya que no pude encontrar una en otro lugar.