天天看点

docker安装mysql并Navicat连接

1.docker search mysql  搜索镜像

docker安装mysql并Navicat连接

2.下载镜像:

docker pull mysql     

3.下载完成后,创建mysql容器, 挂虚拟文件路径到真实主机上,不然重启数据就没了

docker run  -p 3306:3306 --name mysql -v /mysqldocker/conf:/etc/mysql  -v /mysqldocker/mysql-files:/var/lib/mysql-files  -v /mysqldocker/logs:/var/log/mysql -v /mysqldocker/data:/var/lib/mysql -v /mysqldocker/my.cnf:/etc/mysql/my.cnf -e MYSQL_ROOT_PASSWORD=root -d mysql --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci

docker安装mysql并Navicat连接

支持表情符号:

          修改mysql表字段的编码为uft8mb4

           可以直接navicat工具操作

        修改数据表的编码为utf8mb4

           可以直接navicat工具操作

        修改连接数据库的连接代码

修改前:
jdbc_url=jdbc:mysql://10.1.10.76:3306/ebus?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull

修改后:
jdbc_url=jdbc:mysql://10.1.10.76:3306/ebus?useUnicode=true&zeroDateTimeBehavior=convertToNull
           

4. 查看mysql容器id(container id):

docker ps

5.进入容器:

docker exec -it 7681b85e73a1 /bin/sh

6. mysql8 之前的版本中加密规则是mysql_native_password,而在mysql8之后,加密规则是caching_sha2_password, 所以需要把mysql用户登录密码加密规则还原成mysql_native_password. 

进入mysql

mysql -h localhost -p

修改远程权限:

alter user 'root'@'%' identified with mysql_native_password by 'root';

7. 租的云服务器,很多有安全组的限制,需要添加白名单

点击控制台服务器ip后找到安全组

docker安装mysql并Navicat连接

点击默认安全组,在入方向规则里添加2个如下安全规则开放ping和3306端口就可以了

docker安装mysql并Navicat连接