美文网首页
Navicat连接mysql8

Navicat连接mysql8

作者: Chting | 来源:发表于2018-07-27 11:10 被阅读0次

这几天尝试了下,看看mysql8的性能如何,使用的docker,下载了mysql8的镜像,现把安装和链接遇到的问题归纳如下

Docer使用多个mysql

由于我使用的docker作为开发工具,之前有使用mysql5.7的版本,现在增加容器,需要修改mysql端口

    mysql:
        build:
            context: ./mysql
            args:
                - MYSQL_DATABASE=homestead
                - MYSQL_USER=homestead
                - MYSQL_PASSWORD=secret
                - MYSQL_ROOT_PASSWORD=root
        volumes:
            - mysql:/var/lib/mysql8
        此处指定mysql新端口为3309##
        ports:
            - "3309:3306"

运行之后,mysql容器正常起来了,但是navicat死活链接不上,没办法接着搞;

修改mysql初始密码和host

原来mysql8的安全机制更高可能,不允许初始化密码链接,所以首先要修改初始密码
进入容器修改 docker-compose exec mysql bash

image.png
由于我已经修改过密码了,直接使用修改后的123456登录,第一次修改可以自己使用mysql或者是你设置的初始密码
  • 修改初始密码
select host,user,plugin,authentication_string from mysql.user;
image.png

备注:host为 % 表示不限制ip localhost表示本机使用 plugin非mysql_native_password 则需要修改密码所以直接修改密码

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';

更新user为root,host为localhost 的密码为123456


image.png

修改完之后,再次链接,还是报错,,没办法继续搞

  • 修改host
    之前咱们已经看到host为localhost,可以大多数时候咱们并不一定是使用本地连接,所以修改你的mysqlhost为你的常用ip或者干脆点直接%
update user set host = '%' where user = 'root';
  • 重启容器,再次链接


    image.png
  • 查看mysql版本

mysql> select version(); 
+-----------+
| version() |
+-----------+
| 8.0.11    |
+-----------+
1 row in set

mysql> 

相关文章

网友评论

      本文标题:Navicat连接mysql8

      本文链接:https://www.haomeiwen.com/subject/lbuwmftx.html