unknown programmingerror for español errors error code mysql privileges mysql-error-1045

mysql - programmingerror - navicat error 1045



¿Cómo puedo restaurar los privilegios completos del usuario raíz de MySQL? (7)

Le había negado los privilegios de insertar y volver a cargar en la raíz. Entonces, después de actualizar los permisos, FLUSH PRIVILEGES no funcionaba (debido a la falta de privilegio de recarga). Así que utilicé el usuario debian-sys-maint en Ubuntu 16.04 para restaurar los privilegios de user.root. Puede encontrar la contraseña de user.debian-sys-maint desde este archivo

sudo cat /etc/mysql/debian.cnf

Accidentalmente eliminé algunos de los privilegios de mi usuario raíz de MySQL, incluida la capacidad de modificar las tablas. ¿Hay alguna forma de restaurar este usuario a su estado original (con todos los privilegios)?

UPDATE mysql.user SET Grant_priv = ''Y'', Super_priv = ''Y'' WHERE User = ''root''; # MySQL returned an empty result set (i.e. zero rows). FLUSH PRIVILEGES ; # MySQL returned an empty result set (i.e. zero rows). #1045 - Access denied for user ''root''@''localhost'' (using password: YES) GRANT ALL ON *.* TO ''root''@''localhost''


Si el GRANT ALL no funciona, intente:

  1. Detener mysqld y reiniciarlo con la opción --skip-grant-tables .
  2. Conéctese al servidor mysqld con solo: mysql (es decir, sin la opción -p , y es posible que no se requiera un nombre de usuario).
  3. Emita los siguientes comandos en el cliente mysql:

    UPDATE mysql.user SET Grant_priv=''Y'', Super_priv=''Y'' WHERE User=''root'';

    FLUSH PRIVILEGES;

Después de eso, debería poder ejecutar GRANT ALL ON *.* TO ''root''@''localhost''; y haz que funcione


Si está usando WAMP en su computadora local (versión 5.7.14 de mysql) Paso 1: abra el archivo my.ini Paso 2: elimine el comentario de esta línea ''skip-grant-tables'' eliminando el punto y coma 3: reinicie mysql paso 4 del servidor: iniciar la consola mySQL paso 5:

UPDATE mysql.user SET Grant_priv=''Y'', Super_priv=''Y'' WHERE User=''root''; FLUSH PRIVILEGES;

Paso 6: problema resuelto !!!!


Si ha eliminado a su usuario root por error, puede hacer una cosa:

  1. Detener el servicio de MySQL
  2. Ejecute mysqld_safe --skip-grant-tables &
  3. Escriba mysql -u root -p y presione enter.
  4. Ingresa tu contraseña
  5. En la línea de comando mysql, ingrese: use mysql;

Luego ejecuta esta consulta:

insert into `user` (`Host`, `User`, `Password`, `Select_priv`, `Insert_priv`, `Update_priv`, `Delete_priv`, `Create_priv`, `Drop_priv`, `Reload_priv`, `Shutdown_priv`, `Process_priv`, `File_priv`, `Grant_priv`, `References_priv`, `Index_priv`, `Alter_priv`, `Show_db_priv`, `Super_priv`, `Create_tmp_table_priv`, `Lock_tables_priv`, `Execute_priv`, `Repl_slave_priv`, `Repl_client_priv`, `Create_view_priv`, `Show_view_priv`, `Create_routine_priv`, `Alter_routine_priv`, `Create_user_priv`, `ssl_type`, `ssl_cipher`, `x509_issuer`, `x509_subject`, `max_questions`, `max_updates`, `max_connections`, `max_user_connections`) values(''localhost'',''root'','''',''Y'',''Y'',''Y'',''Y'',''Y'',''Y'',''Y'',''Y'',''Y'',''Y'',''Y'',''Y'',''Y'',''Y'',''Y'',''Y'',''Y'',''Y'',''Y'',''Y'',''Y'',''Y'',''Y'',''Y'',''Y'',''Y'','''','''','''','''',''0'',''0'',''0'',''0'');

luego reinicia el mysqld


Simplemente inserte o actualice mysql.user con el valor Y en cada privilegio de columna.

Lo mismo arriba.

Respuesta completa: http://www.myee.web.id/?p=869


También eliminé privilegios de raíz y base de datos que no se muestran en la consola de mysql cuando era usuario root, así que cambié de usuario por mysql>mysql -u ''userName'' -p; y contraseña;

UPDATE mysql.user SET Grant_priv=''Y'', Super_priv=''Y'' WHERE User=''root''; FLUSH PRIVILEGES;

después de este comando, todo muestra la base de datos en la raíz.

Gracias


GRANT ALL ON *.* TO ''user''@''localhost'' with GRANT OPTION;

Simplemente inicie sesión desde la raíz utilizando la contraseña correspondiente, si la hay, y simplemente ejecute el comando anterior para lo que sea que el usuario sea.

Por ejemplo:

GRANT ALL ON *.* TO ''root''@''%'' with GRANT OPTION;