mysql的root用户没有任何mysql root权限丢失,菜鸟求教

恢复Mysql丢失的root用户权限
恢复Mysql丢失的root用户权限
今天安装了某个程序时, 由于程序很傻X的 新建了一个 root@localhost 用户 并把 root权限全部改为了 no
这下 我也 傻X 了.服务器上所有程序都崩溃了. 此时即使用root用户登陆进去也无法再修改权限了.
赶紧 service d stop 先停掉mysql 然后用安全模式 启动mysql&
/usr/bin/mysqld_safe --skip-grant-tables&
root 登陆 ..不需要密码
进入 mysql 这个(注意数据库名是mysql) ,把user表的 root@localhost 干掉 或者 把权限都改成yes 即可.
然后重启 mysql服务
权限恢复...用户名:gfsunny
文章数:118
访问量:40431
注册日期:
阅读量:1297
阅读量:3317
阅读量:583044
阅读量:468077
51CTO推荐博文
&&&&在用复制账号对mysql salve管理过程中,使用哪些权限合适?首先看一下mysql官方提供的权限表:权限列上下文CREATECreate_priv数据库、表或索引DROPDrop_priv数据库或表GRANT OPTIONGrant_priv数据库、表或保存的程序REFERENCESReferences_priv数据库或表ALTERAlter_priv表DELETEDelete_priv表INDEXIndex_priv表INSERTInsert_priv表SELECTSelect_priv表UPDATEUpdate_priv表CREATE VIEWCreate_view_priv视图SHOW VIEWShow_view_priv视图ALTER ROUTINEAlter_routine_priv保存的程序CREATE ROUTINECreate_routine_priv保存的程序EXECUTEExecute_priv保存的程序FILEFile_priv服务器主机上的文件访问CREATE TEMPORARY TABLESCreate_tmp_table_priv服务器管理LOCK TABLESLock_tables_priv服务器管理CREATE USERCreate_user_priv服务器管理PROCESSProcess_priv服务器管理RELOADReload_priv服务器管理REPLICATION CLIENTRepl_client_priv服务器管理REPLICATION SLAVERepl_slave_priv服务器管理SHOW DATABASESShow_db_priv服务器管理SHUTDOWNShutdown_priv服务器管理SUPERSuper_priv服务器管理& & 怎样找到复制账户的最小权限?&&&&首先使用root账号登陆,收回复制账号repl_user的所有权限:mysql& select user();+----------------+| user() & & & & |+----------------+| root@localhost |+----------------+1 row in set (0.00 sec)mysql& revoke all on *.* from repl_Query OK, 0 rows affected (0.01 sec)mysql&Query OK, 0 rows affected (0.00 sec)&&&&其次使用repl_user登陆:mysql& show slave status\G;ERROR ): A you need (at least one of) the SUPER,REPLICATION CLIENT privilege(s) for this operation&&&&错误提示,至少需要SUPER和REPLICATION CLIENT这两个权限之一。&&&&(1)赋予REPLICATION CLIENT权限给repl_usermysql& grant REPLICATION CLIENT ON *.* TO repl_Query OK, 0 rows affected (0.00 sec)mysql& show slave status\G;*************************** 1. row ***************************& & & & & & & &Slave_IO_State: Connecting to master& & & & & & & & & Master_Host: 192.168.6.100& & & & & & & & & Master_User: repl_user& & & & & & & & & Master_Port: 3306& & & & & & & & Connect_Retry: 60&&&&&&&&&&&&&&&&&&&&&&&&&&&&......&&&&show slave status\G;状态查看正常,但是管理slave提示如下:mysql&ERROR ): Access denied for user 'repl_user'@'%' (using password: YES)&&&&(2)赋予REPLICATION SLAVE权限给repl_user:mysql& grant REPLICATION SLAVE ON *.* TO repl_Query OK, 0 rows affected (0.00 sec)mysql&ERROR ): Access denied for user 'repl_user'@'%' (using password: YES)mysql& SELECT Repl_slave_priv,Repl_client_priv,super_priv FROM mysql.USER WHERE USER='repl_user';+-----------------+------------------+------------+| Repl_slave_priv | Repl_client_priv | super_priv |+-----------------+------------------+------------+| Y & & & & & & & | Y & & & & & & & &| N & & & & &|+-----------------+------------------+------------+1 row in set (0.00 sec)&&&&(3)赋予SUPER权限给repl_user:mysql& grant SUPER ON *.* TO repl_Query OK, 0 rows affected (0.00 sec)mysql&Query OK, 0 rows affected, 1 warning (0.00 sec)mysql&Query OK, 0 rows affected, 1 warning (0.00 sec)&&&&(4)赋予RELOAD权限给repl_user&&&&在没有RELOAD权限时提示如下错误:mysql&ERROR ): A you need (at least one of) the RELOAD privilege(s) for this operationmysql& grant reload on *.* to repl_Query OK, 0 rows affected (0.00 sec)mysql&Query OK, 0 rows affected (0.00 sec)&&&&最后,总结如下:&&&&REPLICATION CLIENT(客户端)、REPLICATION SLAVE(服务端)、SUPER(管理)和RELOAD四个权限最好在创建用户时就赋予,以免造成不必要的麻烦,当然,要是主主配置,最好给予ALL权限。&&&&上述只是在工作中的一点思考,希望看到这篇博文的博友给予指正。&&&&
了这篇文章
类别:┆阅读(0)┆评论(0)}

我要回帖

更多关于 mysql root用户权限 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信