Linux本地部署deepseek大模型之 5. 使用docker来安装MySQL
·
一. 使用docker拉取mysql镜像
root@VM-0-16-ubuntu:/home# docker pull mysql:8.4.4
8.4.4: Pulling from library/mysql
Digest: sha256:23818b7d7de427096ab1427b2e3d9d5e14a5b933f9a4431a482d6414bc879091
Status: Image is up to date for mysql:8.4.4
docker.io/library/mysql:8.4.4
root@VM-0-16-ubuntu:/home# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
hello-world latest 1b44b5a3e06a 2 months ago 10.1kB
mysql 8.4.4 4a8a163431d3 9 months ago 769MB
## 在home创建mysql8目录
root@VM-0-16-ubuntu:/home# mkdir mysql8
root@VM-0-16-ubuntu:/home# cd mysql8/
root@VM-0-16-ubuntu:/home/mysql8# ls
### 创建一系列mysql 要使用到的目录
root@VM-0-16-ubuntu:/home/mysql8# mkdir conf
root@VM-0-16-ubuntu:/home/mysql8# mkdir data
root@VM-0-16-ubuntu:/home/mysql8# mkdir log
root@VM-0-16-ubuntu:/home/mysql8# mkdir mysql-files
root@VM-0-16-ubuntu:/home/mysql8# ls
conf data log mysql-files
二.使用docker来运行MySQL
### 使用docker来运行MySQL
# 设置mysql的端口号和名称
root@VM-0-16-ubuntu:/home/mysql8/conf# docker run -p 3306:3306 --name mysql8-imooc \
# 设置mysql的目录挂载
-v /home/mysql8/log:/var/log/mysql \
-v /home/mysql8/data:/var/lib/mysql \
-v /home/mysql8/conf:/etc/mysql/conf.d \
-v /home/mysql8/mysql-files:/var/lib/mysql-files \
# 设置mysql的登录密码
-e MYSQL_ROOT_PASSWORD=Abc_123456789 \
# 设置mysql在后台运行
-d mysql:8.4.4 \
# 绑定所有ip
--bind-address=0.0.0.0 \
# 设置mysql的字符集
--character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
### 查看docker中运行的进程
root@VM-0-16-ubuntu:/home/mysql8/conf# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
14ba5e4e7da7 mysql:8.4.4 "docker-entrypoint.s…" 26 seconds ago Up 25 seconds 0.0.0.0:3306->3306/tcp, [::]:3306->3306/tcp, 33060/tcp mysql8-imooc
参数说明:
-
-p 3306:3306:映射宿主机与容器的端口。
-
-v:挂载日志、数据和配置文件目录。
-
-e MYSQL_ROOT_PASSWORD=123456:设置 root 用户密码。
三.启动完成之后一定要记得在云服务器中开启3306端口
注意啦: 端口号3306一定不要写错了,不要写错成3360了!!

四. 进入docker容器中创建远程访问用户
1.进入进入MySQL容器
# 进入MySQL
root@VM-0-16-ubuntu:/home# docker exec -it mysql8-imooc mysql -uroot -p
2.在MySQL中执行以下命令: # 创建远程访问用户(替换'your_password'为实际密码)
CREATE USER 'root'@'%' IDENTIFIED BY 'your_password';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;
EXIT;
3.完整的操作演示如下:
# 进入MySQL
root@VM-0-16-ubuntu:/home# docker exec -it mysql8-imooc mysql -uroot -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 10
Server version: 8.4.4 MySQL Community Server - GPL
Copyright (c) 2000, 2025, Oracle and/or its affiliates.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
# 在MySQL中执行以下命令:
# 创建远程访问用户(替换'Abc_123456789'为你自己的实际密码)
mysql> CREATE USER 'root'@'%' IDENTIFIED BY 'Abc_123456789';
GRANT OPTION;
FLUSH PRIVILEGES;
EXIT;ERROR 1396 (HY000): Operation CREATE USER failed for 'root'@'%'
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
Query OK, 0 rows affected (0.00 sec)
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)
mysql> EXIT;
Bye
五.在Windows本地使用idea连接云服务器中的mysql


更多推荐
所有评论(0)