Recibo continuamente este error.
Estoy usando mySQL Workbench y lo que encuentro es que los privilegios de esquema de root son nulos. No hay ningún privilegio.
Tengo problemas en las plataformas para las que se usa mi servidor y esto ha sido un problema repentino.
[email protected] aparentemente tiene mucho acceso, pero estoy conectado así, pero de todos modos solo se asigna a localhost: localhost no tiene privilegios.
He hecho algunas cosas como FLUSH HOSTS
, FLUSH PRIVILEGES
etc., pero no he tenido éxito ni en eso ni en Internet.
¿Cómo puedo recuperar el acceso de root? Encuentro esto frustrante porque cuando miro a mi alrededor, la gente espera que "tengas acceso", pero yo no tengo acceso, así que no puedo entrar en la línea de comandos ni nada y GRANT
yo mismo nada.
Al ejecutar SHOW GRANTS FOR root
esto es lo que obtengo a cambio:
Código de error: 1141. No existe tal concesión definida para el usuario 'root' en el host '%'
fuente
SHOW GRANTS FOR root
una consulta, publique el resultado en su pregunta.Respuestas:
Use las instrucciones para restablecer la contraseña de root , pero en lugar de restablecer la contraseña de root, insertaremos forzosamente un registro en la tabla mysql.user
En el archivo init, use esto en su lugar
fuente
"C:\Program Files\MySQL\MySQL Server 5.6\bin\mysqld.exe" --defaults-file="C:\\Program Files\\MySQL\\MySQL Server 5.6\\my.ini" --init-file=C:\\mysql-init.txt
Todo está donde se supone que debe estar y lo que tiene arriba lo puse en el archivo en consecuencia. También tengo el servicio detenido. Acabo de obtener este resultado: prntscr.com/1ilxau Y todo (complementos) apagado. Realmente confuso.ERROR 1054 (42S22): Unknown column 'Password' in 'field list'
error. @AndyJonesSi tiene el mismo problema en MySql 5.7. +:
es porque MySql 5.7 por defecto permite conectarse con socket, lo que significa que simplemente se conecta con
sudo mysql
. Si ejecuta sql:entonces lo verás:
Para permitir la conexión con root y contraseña, actualice los valores en la tabla con el comando:
Luego ejecute el comando select nuevamente y verá que ha cambiado:
Y eso es. Puede ejecutar este proceso después de ejecutar y completar el
sudo mysql_secure_installation
comando.Para mariadb, utilice
para establecer la contraseña. Más en https://mariadb.com/kb/en/set-password/
fuente
auth_socket
paramysql_native_password
solucionar mi problema. ¡Gracias!mysql_secure_installation
. Muchas gracias por esta respuesta.No le gustó mi privilegio de usuario, así que lo SUDO. (en bash << sudo establece usuario y contraseña) (esto proporciona el nombre de usuario de root y no establece la contraseña en nada) (En Mac)
fuente
Prueba los siguientes comandos
fuente
sudo mysqld_safe
me consiguió esto/var/run/mysqld for UNIX socket file don't exists
, luego despuésmkdir -p /var/run/mysqld
ysudo chown -R mysql:mysql /var/run/mysqld/
funcionó y comenzó el demonio.para las personas que enfrentan el siguiente error en la versión de mysql 5.7+ -
Abrir nueva terminal
sudo /etc/init.d/mysql stop
... MySQL Community Server 5.7.8-rc está detenidosudo mysqld_safe --skip-grant-tables &
esto omitirá todos los privilegios de nivel de concesión e iniciará mysql en modo seguro.A veces el proceso se atasca solo porgrep: error de escritura: tubería rota 180102 11:32:28 mysqld_safe Registro en '/var/log/mysql/error.log'.
Simplemente presione Ctrl + Z o Ctrl + C para interrumpir y salir del proceso
mysql -u root
Bienvenido al monitor MySQL. Los comandos terminan con; o \ g. Su ID de conexión MySQL es 2 Versión del servidor: 5.7.8-rc MySQL Community Server (GPL)
Copyright (c) 2000, 2015, Oracle y / o sus filiales. Todos los derechos reservados.
Oracle es una marca registrada de Oracle Corporation y / o sus afiliadas. Otros nombres pueden ser marcas comerciales de sus respectivos propietarios.
Escriba 'ayuda'; o '\ h' para obtener ayuda. Escriba '\ c' para borrar la declaración de entrada actual.
use mysql;
Lectura de la información de la tabla para completar los nombres de las tablas y las columnas Puede desactivar esta función para obtener un inicio más rápido con -A
Base de datos cambiada
mysql>
update user set authentication_string=password('password') where user='root';
Consulta OK, 4 filas afectadas, 1 advertencia (0.03 seg) Filas coincidentes: 4 Cambiado: 4 Advertencias: 1mysql>
flush privileges;
Consulta OK, 0 filas afectadas (0.00 seg)mysql>
quit
Adióssudo /etc/init.d/mysql stop
..180102 11:37:12 mysqld_safe mysqld del archivo pid /var/run/mysqld/mysqld.pid finalizó. * MySQL Community Server 5.7.8-rc se detiene arif @ ubuntu: ~ $ sudo /etc/init.d/mysql start .. * MySQL Community Server 5.7.8-rc se inicia
mysql -u root -p
Introducir la contraseña:
Bienvenido al monitor MySQL. Los comandos terminan con; o \ g. Su ID de conexión MySQL es 2 Versión del servidor: 5.7.8-rc MySQL Community Server (GPL)
después de la versión de mysql 5.7+, la contraseña de la columna se reemplazó por el nombre authentication_string de la tabla mysql.user.
Espero que estos pasos ayuden a todos, gracias.
fuente
Estaba usando ubuntu 18 y simplemente instalé MySQL (contraseña: root) con los siguientes comandos.
Cuando intenté iniciar sesión con el usuario normal de ubuntu, me estaba lanzando este problema.
Pero pude iniciar sesión en MySQL a través del superusuario. Usando los siguientes comandos, pude iniciar sesión a través de un usuario normal.
Entonces debería poder iniciar sesión en Mysql con la cuenta normal.
fuente
Una forma sencilla de restablecer la contraseña de root en sistemas Linux:
Consulte algunas otras razones por las que se deniega el acceso:
https://dev.mysql.com/doc/refman/5.7/en/problems-connecting.html
fuente
Si recibe este error en Workbench pero puede iniciar sesión desde la terminal, siga estos pasos.
Primero, simplemente inicie sesión con su contraseña actual:
Luego, cambie su contraseña porque tener una contraseña de baja seguridad da error a veces.
Luego simplemente salga y vuelva a iniciar sesión con su nueva contraseña:
Una vez que haya iniciado sesión con éxito, escriba el comando:
Debería mostrar un mensaje como 'Base de datos cambiada' y luego escriba:
Después de ese tipo:
Luego escriba:
Luego simplemente sal:
Ahora intente iniciar sesión con su nueva contraseña en su WORKBENCH. Espero que funcione. Gracias.
fuente
Enfrenté este problema al instalar Testlink en el servidor Ubuntu, seguí estos pasos
Ahora detenga la instancia y comience de nuevo, es decir
fuente
Bueno, la forma más fácil de restablecer la contraseña de root es:
reiniciar mysqld opción --skip-grant-tables . Esto permite que cualquiera pueda conectarse sin contraseña y con todos los privilegios. Debido a que esto no es seguro, es posible que desee usar --skip-grant-tables junto con --skip-networking para evitar que los clientes remotos se conecten.
Conéctese al servidor mysqld con este comando:
shell> mysql Emita las siguientes declaraciones en el cliente mysql. Reemplace la contraseña con la contraseña que desea utilizar.
mysql> ACTUALIZAR mysql.user SET Password = PASSWORD ('MyNewPass') -> DONDE Usuario = 'root'; mysql> PRIVILEGIOS DE FLUSH;
Detenga el servidor, luego reinícielo normalmente (sin las opciones --skip-grant-tables y --skip-networking).
Fuente de documentación de Mysql y experiencia personal:
http://dev.mysql.com/doc/refman/5.6/en/resetting-permissions.html
fuente
en mysql 5.7, el campo de contraseña ha sido reemplazado con authentication_string, por lo que haría algo como esto en su lugar
Vea este enlace La base de datos de usuario de MySQL no tiene columnas de contraseña - Instalación de MySQL en OSX
fuente
Resolví el mismo problema ejecutando Workbench como administrador.
... Supongo que es por restricciones en las computadoras de la empresa, en mi caso ...
fuente
Pruebe los siguientes pasos para solucionar este problema:
mysqld --console
.171010 14:58:22 [Note] --secure-file-priv
está establecida en NULL. Las operaciones relacionadas con la importación y exportación de datos se desactivan después de ejecutar el comando anterior desde el símbolo del sistema.mysqld
esté bloqueado por el Firewall de Windows u otro programa.mysqld
omysql
, siga los pasos a continuación:wf.msc
para abrir la configuración del firewall.mysqld
omysqld
están disponibles en la lista y marque la casilla de verificación del dominio, público y privado, y guarde la configuración.¡Debería ser posible ejecutar la consola MySQL sin ningún problema ahora!
fuente
Resolví el mismo problema usando el siguiente sql y reiniciando el servidor MySQL:
fuente
Trabajé en Access Denied for User 'root' @ 'localhost' (usando contraseña: SÍ) durante varias horas, he encontrado la siguiente solución,
fuente
No creo que tengas que escapar del
--init-file
parámetro:"C:\Program Files\MySQL\MySQL Server 5.6\bin\mysqld.exe" --defaults-file="C:\\Program Files\\MySQL\\MySQL Server 5.6\\my.ini" --init-file=C:\\mysql-init.txt
Debiera ser:
"C:\Program Files\MySQL\MySQL Server 5.6\bin\mysqld.exe" --defaults-file="C:\\Program Files\\MySQL\\MySQL Server 5.6\\my.ini" --init-file=C:\mysql-init.txt
fuente
para el problema anterior, su contraseña en el sistema debe coincidir con la contraseña que ha pasado en el programa porque cuando ejecuta el programa, verifica la contraseña del sistema, ya que ha dado root como usuario, por lo que le da un error y al mismo tiempo el registro no se elimina de la base de datos.
Mantenga la contraseña de su sistema como jacob234 y luego ejecute el código.
fuente
Para mí fue el mismo problema, pero fue causado porque estaba usando el servidor mysql en 32 (bits) y el banco de trabajo se estaba ejecutando en la versión de 64 (bits). el servidor y el banco de trabajo deben tener la misma versión.
xpress
fuente
Para mí, estaba usando MYSQLWorkbench y el puerto era 3306 MAMP usando 8889
fuente
Estaba enfrentando el mismo problema cuando intento conectar la base de datos Mysql usando la aplicación Laravel. Me gustaría recomendar que compruebe la contraseña del usuario. La contraseña de MySQL no debe tener caracteres especiales como # , & , etc.
fuente