mysql数据库ROOT账号权限丢失问题解决方法_MySQL教程

编辑Tag赚U币
教程Tag:暂无Tag,欢迎添加,赚取U币!

推荐:hash和solr在海量数据分布式搜索引擎中的应用教程
Solr是一个独立的企业级搜索应用服务器,它对外提供类似于Web-service的API接口。用户可以通过http请求,向搜索引擎服务器提交一定格式的XML文件,生成索引. 互联网创业中大部分人都是草根创业,这个时候没有强劲的服务器,也没有钱去买很昂贵的海量数据库。在这样严峻

   ROOT账号权限丢失了我们就几乎不能做很多的事情了,今天本文章来为各位介绍mysql数据库ROOT账号权限丢失问题解决方法吧,希望文章可以帮助到各位.

  数据库的操作软件有很多,在线的话phpmyadmin是非常不错的软件,

  比较坑爹的是我的一个机器用的是amh的面板,遇到了一件无比郁闷的事.

  大家都知道在没有独立安装phpmyadmin的情况下,amh面板的数据库操作是AMYSQL…

  这个软件。。。怎么说呢,操作不当,引起的后果可是灰常严重的。(其他软件操作不当也会出大事)

  由于想给网站提速,数据库要迁移到阿里云RDS,数据库的迁移当然最简单的方法是直接迁移,这里就需要我们开放源数据库的远程连接.

  由于安全问题,我们默认的时候把数据库的链接设置的都是本地localhost,那么我们需要改为%。。OK 无比郁闷的是我在改为%之后,在amysql面板操作的,

  竟然直接导致我的root账号没有任何权限….直接等于账号被锁定。。root没有任何操作权限。。尼玛..

  对于我这样的计算机小白来说,这尼玛让我泪奔啊,刚开始不知道什么原因的时候我差点都要回滚磁盘了有木有….

  没办法,只能自己先折腾了。

  ———————————————————–

  解决办法: 首先.你要有服务器的root权限,,不然….那还搞什么啊..

  (这里介绍一个很使用的命令:skip-grant-tables →非常有用的mysql启动参数)

  先停止mysql的运行;这里建议是正常停止mysql,尽量不要pkill,因为你的pkill可能导致mysqld dead but subsys locked.

  如果已经pkill了那就再mysqld status下喽.然后再stop.

  然后运行# mysqld_safe –skip-grant-tables &

  &,表示在后台运行,不再后台运行的话,就再打开一个终端咯。这个&很实用哦~!

  然后mysql进入我们的数据库,跳过验证了,也就不必那么麻烦 直接mysql进入

  然后 use mysql;

  我们这里呢介绍下实用update赋予root账号权限.

  update user set Update_priv =’Y’ where user = ‘root';

  如果像我这样没有了所有权限。。。

  更新的MYSQL.USER表的所有字段中为N的为Y就可以了。

  update user set Select_priv ='Y' where user = 'root';

  update user set Insert_priv ='Y' where user = 'root';

  update user set Update_priv ='Y' where user = 'root';

  update user set Delete_priv ='Y' where user = 'root';

  update user set Create_priv ='Y' where user = 'root';

  update user set Drop_priv ='Y' where user = 'root';

  update user set Reload_priv ='Y' where user = 'root';

  update user set Shutdown_priv ='Y' where user = 'root';

  update user set Process_priv ='Y' where user = 'root';

  update user set File_priv ='Y' where user = 'root';

  update user set Grant_priv ='Y' where user = 'root';

  update user set References_priv ='Y' where user = 'root';

  update user set Index_priv ='Y' where user = 'root';

  update user set Alter_priv ='Y' where user = 'root';

  update user set Show_db_priv ='Y' where user = 'root';

  update user set Super_priv ='Y' where user = 'root';

  update user set Create_tmp_table_priv ='Y' where user = 'root';

  update user set Lock_tables_priv ='Y' where user = 'root';

  update user set Execute_priv ='Y' where user = 'root';

  update user set Repl_slave_priv ='Y' where user = 'root';

  update user set Repl_client_priv ='Y' where user = 'root';

  update user set Create_view_priv ='Y' where user = 'root';

  update user set Show_view_priv ='Y' where user = 'root';

  update user set Create_routine_priv ='Y' where user = 'root';

  update user set Alter_routine_priv ='Y' where user = 'root';

  update user set Create_user_priv ='Y' where user = 'root';

  update user set Event_priv ='Y' where user = 'root';

  update user set Trigger_priv ='Y' where user = 'root';

mysql数据库ROOT账号权限丢失问题解决方法  模板无忧

  权限问题最后要保证“mysql.user”表中 host为“localhost”和“%”都有root的所有权限。

  OK啦,如果你想修改下密码顺手再改root的数据库密码吧,不过改后记得要修改网站相对应文件啊

分享:23道安全门加铸MySQL数据库
使用MySQL,安全问题不能不注意。以下是MySQL提示的23个注意事项: 1.如果客户端和服务器端的连接需要跨越并通过不可信任的网络,那么就需要使用SSH隧道来加密该连接的通信。 2.用set password语句来修改用户的密码,三个步骤,先mysql -u root登陆数据库系统,然后mys

来源:模板无忧//所属分类:MySQL教程/更新时间:2015-02-10
相关MySQL教程