vlambda博客
学习文章列表

记录自己删除mysql的root用户

    删除root用户之后没想到和想象中差距这么大


1:本着root用户只是一个用户的想法,进入mysql删除了用户,之后mysql就进入不了了

        根据网上的教程,找到mysql的配置文件mysql,.ini,在上面加上
skip-grant-table,跳过权限验证后,不用用户和密码直接登录,之后按要求在添加上root用户
        https://www.it610.com/article/1280476974166327296.htm
      :发现在添加完skip-grant-table之后没办法插入,报错什么skip-grant-table这个开启没法插入,然后就接着找,使用 flush privileges;之后能成功插入了,好,接下来就是删除配置文件中的 skip-grant-tables重启,使用root用户登录,结果又报错,报错信息为 Access denied for user 'root'@'localhost' Account is locked,这就不动了,查看mysql数据库中的user表数据,一切正常,放弃了,就再度加上 skip-grant-table 跳过权限验证,然后备份数据库
        备份完成后,就卸载重装,好了。在去看看mysql的user表中的用户,和我添加的有什么区别,发现,貌似没区别,至少我没看出来,至今没搞懂,那么多问题是什么原因产生。

           深入研究:  深入个锤子深入,按照流程步骤来就是正确的,至于上面的出错,要么你在本地,你本地电脑不行,要么你中途出现了其他错误,总之一句话,心急就会出错,要想不心急,找台垃圾电脑,多操作几次,越垃圾的电脑,出的错越离谱,越锻炼你


        

2:mysql的索引问题

    mysql的索引问题真的比较高深,比如这两句

这就涉及到not in ,<>等,这几个操作付要记住,还有就是。string和int类型的转换,mysql会做自动转换,导致索引失效,还有就是主动失效。还有那些,对索引字段进行函数操作的,使用order by也会操作索引,这些


参考博文

https://www.cnblogs.com/wdss/p/11186411.html
https://www.cnblogs.com/liehen2046/p/11052666.html

这个全表扫描就比较神奇,

这个全表扫描有时候会促使mysql判断失误,这就需要使用强制索引,强制索引如下所示。

     何为全表扫描,就是查询表中所有得数据,经常在inner join,这样多表联合时,有的时候你明明设置了索引,结果还是全表扫描,就是因为虽然你命中了索引,但是索引确实命中了全表,这就是索引设置得不合理了。一句话,索引并不是万能,具体sql需要具体分析,但是基本情况,一是查询得数据量,二十命中 索引,三就是分库分表以及事务隔离机制得问题。这些遇到再说吧,说实话工作这么多年,遇到的基本都是网上能搜到的,看过的深入点还真碰到过。所以也是一知半解,