¿Cómo restaurar los privilegios del usuario root de MySQL?
Pregunta
Por error, he eliminado la mayor parte de los privilegios de mi usuario root de MySQL, incluyendo la capacidad de conceder privilegios. ¿Hay alguna manera de que pueda restaurar a este usuario a su estado original?
Solución
Es posible que todavía será capaz de hacer una UPDATE
en user
tabla en la base de datos mysql
:
USE mysql;
UPDATE user SET Grant_priv='1' WHERE User='root';
FLUSH PRIVILEGES;
Si el paso 3 no funciona, reiniciar el servidor MySQL tendrá el mismo efecto. Si el paso 2 no funciona, es necesario restaurar mysql.user
de copia de seguridad. Si usted no tiene una copia de seguridad, haga una copia de seguridad, vuelva a instalar MySQL y luego restaurar la copia de seguridad de forma selectiva, dejando de lado las tablas dentro de la base de datos mysql
.
Actualizar
Te estás volviendo Acceso denegado durante la primera etapa. En este punto, estás abajo a las soluciones alternativas con las copias de seguridad. No hay manera (que yo sepa o puedo imaginar fácilmente) que se está recuperando esas tablas de otra manera.
ACTUALIZACIÓN 2
El mensaje de error exacto es básicamente diciendo que, además de la pérdida de privilegios grant
de raíz, que ha caído el acceso de root en el mysql
DB. Sin tener acceso a esa base de datos y sin tener privilegios grant
, la única forma que veo de vuelta es la obtención de alguna manera una nueva copia del mysql
DB.
Cualquier oportunidad que tiene un esclavo de replicación configurado?