zoukankan      html  css  js  c++  java
  • navicat for mysql连接本地数据库

          navicat for mysql连接本地数据库

       打算使用navicat连接本地数据库,连接的时候,一直连接不上。然后猜想是不是本地数据库没有设置好。输入mysql,出错内容:access denied for user root @localhost 。查阅了一波资料,大概意思是用户root没有使用密码访问localhost主机时被拒绝。(数据库默认账号密码是root ""空字符串)

      解决的办法: 

        第一步: 编辑mysql配置文件my.ini ,在[mysqld]这个条目下加入 skip-grant-tables 保存退出后重启mysql。那如何知道我们的这个配置文件的位置呢,操作如下:运行,输入   services.msc 然后在打开的"服务管理器"中找到mysql并双击,会弹出来个属性框框,"常规"选项卡里面有个"执行路径",从这个路径你就可以看到它的bin目录在哪,以及这个my.ini文件的位置了。还有通过这个步骤,我们发现服务的名称为“MYSQL57”, 所以启动和关闭服务,应该使用 net start mysql57 以及 net  stop mysql57 (网上一遍都是net start mysql),我们要根据实际名称运行。

        第二步:这时候在cmd里面输入mysql -u root -p就可以不用密码登录了,出现 password:的时候直接回车可以进入,不会出现ERROR 1045 (28000),但很多操作都会受限制,因为我们不能grant(没有权限)。

        第三步: 进入mysql数据库, mysql> use mysql;  Database changed 

        第四步:  网上很多是给root用户设置新密码,是使用update user set password=password("新密码") where user="root";  会报错Unknown column 'password' in 'field list。

        查找资料,原来是mysql数据库下已经没有password这个字段了,password字段改成了authentication_string 。因此终端输入 mysql 直接登录MySQL数据库,然后use mysql,接着update mysql.user set authentication_string=password('密码名称') where user='root'这样密码就设置好了。

        第五步: .刷新数据库 flush privileges;

        第六步: 退出mysql ,输入quit;  然后再修改一下my.ini这个文件,把我们刚才加入的 "skip-grant-tables"这行删除,保存退出再重启mysql就可以了。

        第七步: 输入mysql -uroot -p 回车, 输入我们设置好的密码。进入就可以开始快乐的玩耍了。

        补充一些常用语句:  show databases; (注意后面的分号一定要,否则不执行)  显示所有的数据库

                 use <数据库名>  使用这个数据库  ,然后屏幕会显示Database changed .

                  如果我们想使用其他数据库,直接use 数据库名称,就可以使用其他数据库了,也很方便。

                  参考文献: https://blog.csdn.net/better_space/article/details/53523353

  • 相关阅读:
    bzoj3110
    idea 设置系列 各种乱码
    vim 系列
    idea 神键
    简单工厂,工厂方法,抽象工厂
    log4 按包进行日志输出
    maven依赖本地宝
    kafka 理论学习
    kafka windows环境搭建 测试
    linux 查找文件的命令
  • 原文地址:https://www.cnblogs.com/cleaverlove/p/8653012.html
Copyright © 2011-2022 走看看