Docker 安装 Mysql 最新版
版本信息
软件 | 版本 |
---|---|
Docker | 26.0.0 |
Ubuntu | 22.04.3 LTS |
Mysql | 8.4.0 |
拉取镜像
docker pull mysql
创建本地Mysql数据、配置目录
sudo mkdir -p /data/mysql/{config,data}
复制配置文件到本地
启动一个临时容器
docker run -itd --name mysqltest
将配置文件拷贝到宿主机
sudo docker cp mysqltest:/etc/my.cnf /data/mysql/config/
删除临时容器
docker stop mysqltest
docker rm mysqltest
启动Myql容器
docker run -itd --name mysql8 -p 3306:3306 --privileged=true --restart=always -v /data/mysql/data:/var/lib/mysql -v /data/mysql/config/my.cnf:/etc/my.cnf -e MYSQL_ROOT_PASSWORD=123456 mysql
Navcat 连接
查看宿主机IP
ifconfig
使用 Navcat 连接
可能遇到的问题
第一次登陆可能遇到如下图的报错
这个错误意味着当前主机没有连接权限
查看mysql.user表
select User,Host from mysql.user;
如何没有User为root对应的Host为%表示所有主机的root用户没有登陆权限
使用以下命令创建root用户,设置密码,赋权,刷新。
CREATE USER 'root'@'%' REQUIRE NONE;
ALTER USER 'root'@'%' IDENTIFIED BY '123456';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;