1. 下载image
docker pull mysql
也可以指定版本: docker pull mysql:5.7,未指定时为latest。

2. 查看下载到的镜像
docker images

3. 启动mysql容器
docker run -p 3306:3306 --name dailycost -e MYSQL_ROOT_PASSWORD=123456 -d mysql
-p:端口映射,此处映射 主机3306端口 到 容器的3306端口
–name:容器名,此处命名为dailycost
-e:配置信息,此处配置mysql的root用户的登录密码
-d: 后台运行容器,并返回容器ID
mysql: 镜像名称

4. 检查容器是否正确运行
docker ps
看到对应的container id即表明已在运行

5. 进入容器
docker exec -it e76ba1e3fc75 bash
e76ba1e3fc75 为CONTAINER ID,按需替换即可。
可以当作是进入了装有mysql的服务器。
6. 在容器内连接mysql
mysql -uroot -p
回车输入密码即可访问到数据库,密码为docker启动mysql时设置的密码123456。

7. 创建数据库并新建用户授权远程连接
新建dailycost数据库
mysql> CREATE DATABASE dailycost;
创建可远程连接的用户mysql,密码也为mysql
mysql> create user 'mysql'@'%' identified by 'mysql';
给mysql用户授权dailycost库的读写权限
mysql> grant all privileges on dailycost.* to 'mysql'@'%';
刷新权限
mysql>flush privileges;

为了方便远程连接数据库,还需要修改远程连接用户的加密规则,否则远程连接时会报错Public Key Retrieval is not allowed。
mysql> alter user 'mysql'@'%' identified with mysql_native_password by 'mysql';
8. DBeaver远程连接数据库
连接配置如下图所示:

9. 重新启动container
当使用docker ps未查询到正在运行的MySQL时,可以使用-a参数查询到container id, 然后重新启动该container
docker ps -a

docker start 324d09e9b729
重启启动成功后就可以在DBeaver中连接到数据库了。
本文档详细介绍了如何使用Docker下载并启动MySQL8容器,包括端口映射、设置root密码、创建数据库和用户、授权远程连接,并通过DBeaver进行远程连接的步骤。
845

被折叠的 条评论
为什么被折叠?



