docker安装MySQL8:docker离线安装MySQL、docker在线安装MySQL、MySQL镜像下载、MySQL配置、MySQL命令

ops/2025/1/30 22:47:43/

一、镜像下载

1、在线下载

在一台能连外网的linux上执行docker镜像拉取命令

docker pull mysql:8.0.41

2、离线包下载

两种方式:

方式一:

-)在一台能连外网的linux上安装docker执行第一步的命令下载镜像

-)导出

# 导出镜像到本地当前目录
docker save -o mysql-8.0.41.tar mysql:8.0.41

方式二:

-)Window桌面程序:Docker Desktop

-)下载镜像

-)安装镜像导出插件

-)将镜像文件保存到window本地(图略)

3、Oracle Container Registry

Home

4、官方安装程序下载

不是docker镜像

https://dev.mysql.com/downloads/mysql/

二、安装

1、在线安装

见离线安装(只比离线安装少一步导入动作)

2、离线安装

-)导入镜像

docker load -i mysql_8_0_38.tar

-)查看镜像

[docker@GZ***-PM153160 mysql]$ docker images
REPOSITORY                                 TAG       IMAGE ID       CREATED        SIZE
mysql                                      8.0.38    6c54cbcf775a   6 months ago   572MB、

-)创建映射目录

创建mysql配置文件目录、数据文件目录,并修改目录权限

sudo mkdir -p /opt/mysql/docker-mysql/conf
sudo mkdir -p /data1/mysql/docker-mysql/data
sudo chown -R docker.docker /opt/mysql
sudo chown -R docker.docker /data1

-)启动容器

docker run -d \
-p 3307:3306 \
-v /opt/mysql/docker-mysql/conf:/etc/mysql/conf.d \
-v /data1/mysql/docker-mysql/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=F1c1X****** \
--name mysql8.0.38 \
--restart=always \
mysql:8.0.38

-)查看容器

[docker@GZCRM-PM153160 mysql]$ docker ps
CONTAINER ID   IMAGE          COMMAND                  CREATED          STATUS          PORTS                                                    NAMES
48ea6d74fc20   mysql:8.0.38   "docker-entrypoint.s…"   11 minutes ago   Up 11 minutes   33060/tcp, 0.0.0.0:3307->3306/tcp, [::]:3307->3306/tcp   mysql8.0.38

-)从容器内部拷贝配置文件

这一步和下一步可跳过(如果嫌麻烦),如果需要添加时区配置,可简单在容器中修改配置文件

[docker@GZ***-PM153160 ~]$ docker cp 48ea6d74fc20:/etc/my.cnf /opt/mysql/docker-mysql/conf/my.cnf
Successfully copied 3.07kB to /opt/mysql/docker-mysql/conf/my.cnf

-)添加时区配置(中国大陆)

vi /opt/mysql/docker-mysql/conf/my.cnf 

default-time-zone='+08:00'

-)重启容器

[docker@GZ***-PM153160 ~]$ docker restart 48ea6d74fc20
48ea6d74fc20

三、使用/基本操作

-)进入容器

[docker@GZ***-PM153160 ~]$ docker exec -it 48ea6d74fc20 /bin/bash
bash-5.1# 
bash-5.1# 

-)命令登陆mysql

[docker@GZ***-PM153160 ~]$ docker exec -it 48ea6d74fc20 /bin/bash
bash-5.1# 
bash-5.1# 
bash-5.1# mysql -uroot -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 8.0.38 MySQL Community Server - GPLCopyright (c) 2000, 2024, 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> 
mysql> 

-)创建数据库

mysql> CREATE DATABASE nacos;
Query OK, 1 row affected (0.00 sec)

-)创建用户

# 同时指定密码
CREATE USER 'nacos'@'%' IDENTIFIED BY '#!FlGO****';

-)授权

mysql> GRANT ALL PRIVILEGES ON nacos.* TO 'nacos'@'%';
Query OK, 0 rows affected (0.01 sec)mysql> 
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)

遇到的问题总结

1、将镜像推到内网镜像仓库时报错

[zhao****@GZ***-PM153160 ~]$ docker push 10.130.***.106:30089/library/zookeeper:3.9.3
The push refers to repository [10.130.153.***:30089/library/zookeeper]
Get "https://10.130.153.***:30089/v2/": x509: cannot validate certificate for 10.130.153.*** because it doesn't contain any IP SANs

 解决:换成域名

[zhao***@GZ***-PM153160 ~]$ docker login harbor.***.com:30089
Username: admin
Password: 
WARNING! Your password will be stored unencrypted in /home/zhaozheng/.docker/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credential-storesLogin Succeeded

可能会用到的其他命令

-)创建卷

docker volume create mysql_data

-)验证卷

docker volume ls

-)使用卷

docker run --name some-mysql -v mysql_data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag

 这种docker卷作者没有用过,有兴趣的可自行尝试~

如果喜欢我的文章,请帮我点赞,谢谢~  


http://www.ppmy.cn/ops/154320.html

相关文章

基于vscode的cppcmake调试环境配置

1. 创建项目文件 创建cpp文件及CMakeLists.txt文件 helloOpenCV.cpp #include <opencv2/opencv.hpp> int main() {// 创建图像&#xff0c;初始化为黑色cv::Mat image cv::Mat::zeros(200, 300, CV_8UC3);// 设置为纯绿色 (BGR格式&#xff1a;0, 255, 0)image.setTo…

Nacos 2.5.0 全文详解及配置(并解决WebServerException: Unable to start mbedded Tomcat)

Nacos 2.5.0 下载&#xff1a; 已放置在博文中&#xff1a;https://download.csdn.net/download/xxiaobaibaibai/90299781 启动报错&#xff1a; 修改内容参考下方 Windows 配置 Nacos 中 第四项&#xff08;将Nacos启动修改为单机模式&#xff09;。 Nacos 概述 什么是 N…

记录 | 基于Docker Desktop的MaxKB安装

目录 前言一、MaxKBStep 1Step2 二、运行MaxKB更新时间 前言 参考文章&#xff1a;如何利用智谱全模态免费模型&#xff0c;生成大家都喜欢的图、文、视并茂的文章&#xff01; MaxKB的Github下载地址 参考视频&#xff1a;【2025最新MaxKB教程】10分钟学会一键部署本地私人专属…

一文讲解CMS收集器的垃圾收集过程

CMS就是Concurrent Mark Sweep CMS使用标记-清除算法进行垃圾收集&#xff0c;分为4大步&#xff1a; 初始标记&#xff1a;标记所有从GC Roots直接可达的对象&#xff0c;这个阶段需要STW&#xff0c;但速度很快并发标记&#xff1a;从初始标记的对象出发&#xff0c;遍历所…

网易前端开发面试题200道及参考答案 (下)

阐述如何实现 img 按照原比例最大化放置在 div 中? 要让 img 按照原比例最大化放置在 div 中,可通过以下几种方式实现: 使用 object - fit 属性 object - fit 是 CSS 中用于规定如何调整替换元素(如 <img>、<video>)的内容以适应其容器的属性。 object - fit…

用深度学习优化供应链管理:让算法成为商业决策的引擎

用深度学习优化供应链管理&#xff1a;让算法成为商业决策的引擎 引言 供应链管理一直是商业运营中至关重要的部分。从库存管理到运输调度&#xff0c;从需求预测到供应商选择&#xff0c;任何一个环节的失误都可能导致成本增加甚至业务中断。然而&#xff0c;随着数据的爆炸…

572. 另一棵树的子树

前导题&#xff1a;100. 相同的树 回顾一下 判断两棵二叉树相同&#xff0c;根结点相同 且 左子树相同 且 右子树相同。 于是判断如下&#xff1a; 根结点都为null&#xff0c;返回true根结点不都为null&#xff0c;返回false根结点都不为null&#xff0c;但是值不相同&#…

IDEA 中 Maven 依赖变灰并带斜线的解决方法及原理分析

目录 前言1. 直奔主题2. 原理分析 前言 &#x1f91f; 找工作&#xff0c;来万码优才&#xff1a;&#x1f449; #小程序://万码优才/r6rqmzDaXpYkJZF 这部分知识点比较好操作&#xff0c;对应放在运维专栏上了&#xff01; 1. 直奔主题 在使用 IntelliJ IDEA 构建 Maven 项目…