news 2026/1/23 17:56:12

Docker 之mysql从头开始——Docker下mysql安装、启动、配置、进入容器执行(查询)sql

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Docker 之mysql从头开始——Docker下mysql安装、启动、配置、进入容器执行(查询)sql

一、Docker 之mysql安装配置

步骤一:拉取镜像

1. 查看是否包含已安装的mysql。

docker images | grep mysql

2. 如上图所示,我们有mysql镜像,所以不必对mysql镜像进行拉取,如若没有上图中的惊喜,使用如下命令进行拉取(8.0.20是mysql版本号,根据自己需求填写即可):

docker pullmysql:8.0.20

步骤二:启动镜像

1. 启动镜像,这里面最后的“:latest”是根据步骤一中“1”截图中的版本来的,可根据自己情况输入。启动容器的同时将/data/yueshen5/codeProgram/KG-2.2-C中的文件挂载到容器中的/data目录下

docker run-v /data/yueshen5/codeProgram/KG-2.2-C:/data -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:latest

以下命令是没有挂载操作的命令,如需挂载如上述命令所示

2. 查看是否启动成功

步骤三:拷贝配置文件

启动成功后,进入容器内部拷贝配置文件到宿主主机。因此,在宿主主机中需要提前创建存储配置文件的文件夹,这里我们使用mysqllatest存储

mkdir mysqllatest

docker cp mysql:/etc/mysql /data/yueshen5/codeProgram/KG-2.2-C/mysqllatest

步骤四:删除mysql容器,重新创建容器

docker stop mysql

docker rm mysql

步骤五:启动mysql ,挂载配置文件,数据持久化到宿主主机

1. 在系统目录下创建并运行脚本文件mysqllatest.sh,输入命令sh mysqllatest.sh

#!/bin/sh

docker run

-v /data/yueshen5/codeProgram/KG-2.2-C:/data

-p 3306:3306

–name mysql

–privileged=true

–restart unless-stopped

-v /data/yueshen5/codeProgram/KG-2.2-C/mysqllatest/mysql:/etc/mysql

-v /data/yueshen5/codeProgram/KG-2.2-C/mysqllatest/logs:/logs

-v /data/yueshen5/codeProgram/KG-2.2-C/mysqllatest/data:/var/lib/mysql

-v /etc/localtime:/etc/localtime

-e MYSQL_ROOT_PASSWORD=123456

-d mysql:latest

命令解释:

挂载本地文件

-v /data/yueshen5/codeProgram/KG-2.2-C:/data

端口映射

-p 3306:3306

挂载文件权限设置

–privileged=true

设置 开机后自动重启容器

–restart unless-stopped

挂载配置文件

-v /data/yueshen5/codeProgram/KG-2.2-C/mysqllatest/mysql:/etc/mysql

挂载日志

-v /data/yueshen5/codeProgram/KG-2.2-C/mysqllatest/logs:/logs

挂载数据文件 持久化到主机

-v /data/yueshen5/codeProgram/KG-2.2-C/mysqllatest/data:/var/lib/mysql

容器时间与宿主机同步

-v /etc/localtime:/etc/localtime

设置密码

-e MYSQL_ROOT_PASSWORD=123456

后台启动mysql:latest

-d mysql:latest

2. 查看是否启动成功

docker ps -a

二、Docker 之进入容器执行sql

1. 进入容器,并进入mysql数据库

docker exec -it mysql bash #mysql 是容器名

mysql -u root -p密码 #mysql没有任何含义,这只是进入mysql的必须命令

2. 查看数据库

show databases;

3. 使用数据库,在数据库里对表格进行增删改查操作

use mysql; # 此处mysql是数据库的名字

show tables; # 查看数据库中包含的表格

4. 创建数据库

create database test; #test是数据库的名字

5. 创建表格

6. 向表格插入数据

三、和NAVICAT进行连接以及执行sql文件方法

可参考:

Docker 之mysql从头开始——Docker下mysql安装、启动、配置、恢复备份sql、进入容器执行(查询)sql_docker mysql 查看数据库-CSDN博客

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/1/20 8:20:55

Git合并时忽略文件的6种技巧

有几种方法可以在 git merge 时忽略特定文件的合并:方法一:使用 .gitattributes 文件(推荐)在项目根目录创建或编辑 .gitattributes 文件:infostation.js mergeours *.js mergeours # 如果需要忽略所有js文件的合并然…

作者头像 李华
网站建设 2026/1/23 1:26:00

超越能源使用:数据中心可持续运营策略

随着越来越多的数据中心建设以适应AI的日益普及和广泛采用,未能优先考虑更可持续运营的运营商将面临挑战。根据一项报告,截至2024年底,美国有1,240个数据中心建成或获批建设。美国数据中心的快速增长引发了关于数据中心能源和自然资源消耗的日…

作者头像 李华
网站建设 2026/1/23 16:34:53

联想和摩托罗拉推出自有设备端AI助手

联想和摩托罗拉正在推出自有的设备端AI助手联想和摩托罗拉正在推出自有的设备端AI助手Qira将在本季度晚些时候到来。如果世界上的数字助手还不够多的话,联想正在向这个堆积如山的助手队伍中再添加一个。周二晚上,该公司宣布推出Qira,这是一个…

作者头像 李华
网站建设 2026/1/13 3:36:28

探讨 C++ 在工程实践中的独特价值、其对底层能力的深刻影响,以及在复杂系统设计中不可替代的作用,揭示技术发展的新趋势与面对的挑战

在互联网行业的早期阶段,技术红利极为明显。只要掌握一门主流语言,熟悉常见框架,就可以迅速参与项目、完成需求、获得不错的职业回报。但随着行业逐渐成熟,一个现实问题开始浮现:为什么技术工作年限相近的工程师&#…

作者头像 李华
网站建设 2026/1/13 8:27:35

AI Coding后端开发实战,非常详细收藏我这一篇就够了

前言:AI时代,我们该如何与AI Coding协作? 随着AI技术在软件开发领域的快速发展,AI Coding作为一款强大的AI辅助开发工具,正在深刻改变着我们的开发模式。然而,在实际应用过程中,许多开发人员在早…

作者头像 李华