Docker安装mysql8-超详细、每步都有截图

news2024/9/28 11:18:18

1.下载mysql8镜像(版本根据自己选择:这里是8.0.20)

docker pull mysql:8.0.20

在这里插入图片描述

2.启动镜像

docker run -p 3307:3306 --name mysql8 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:8.0.20

在这里插入图片描述
这里特殊的地方只是说明一下、对每个参数有个了解。没其他实际意义、因为下面还会删除这个容器重新启动。
在这里插入图片描述
检查是否启动成功

docker ps

在这里插入图片描述
3.配置挂载

创建挂载目录(请检查保证创建成功)

mkdir -p /docker/mysql8.0.20/

在这里插入图片描述
拷贝配置文件到创建的目录下

docker cp  mysql:/etc/mysql /docker/mysql8.0.20/

在这里插入图片描述
4.删除原有容器

docker stop mysql8

在这里插入图片描述

docker rm -f mysql8

在这里插入图片描述
5.启动mysql挂载配置文件,数据持久化到宿主主机

重要、重要、重要

新增my.cnf

进入到上面挂载目录下、因为已经做了cp复制。到目录下新增

cd /docker/mysql8.0.20/mysql/conf.d
vim my.cnf

内容(一定不能复制错下面的内容、保存后记得检查是否一致):

[mysqld]
user=mysql
character-set-server=utf8
default_authentication_plugin=mysql_native_password
secure_file_priv=/var/lib/mysql
expire_logs_days=7
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
max_connections=1000
 
[client]
default-character-set=utf8
 
[mysql]

创建一个sh脚本、把docker启动mysql的命令放到脚本里面。因为后续如果想找到当时启动mysql时候所设置的一些参数和信息、可以查看这个脚本里面是怎么写的。(容器启动有些参数如果不记录、想找的时候忘记当时写了什么参数、很难受有木有)

vim docker_insert_mysql8.0.20.sh

内容:

#!/bin/sh
docker run \
-p 3307:3306 \
--name mysql8 \
--privileged=true \
--restart unless-stopped \
-v /docker/mysql8.0.20/mysql:/etc/mysql \
-v /docker/mysql8.0.20/logs:/logs \
-v /docker/mysql8.0.20/data:/var/lib/mysql \
-v /etc/localtime:/etc/localtime \
-e MYSQL_ROOT_PASSWORD=123456 \
-d mysql:8.0.20

解释:

-p 端口映射 【这里有个特殊的地方是把3306映射给了3307、后续链接数据库的时候用3307链接不用3306】

--name mysql8  名称是mysql8

--privileged=true 挂载文件权限设置

--restart unless-stopped 设置 开机后自动重启容器

-v /docker/mysql8.0.20/mysql:/etc/mysql \ 挂载配置文件【路径是上面创建的挂载路径】

-v /docker/mysql8.0.20/logs:/logs \  挂载日志【路径是上面创建的挂载路径】

-v /docker/mysql8.0.20/data:/var/lib/mysql \ 挂载数据文件 持久化到主机【路径是上面创建的挂载路径】

-v /etc/localtime:/etc/localtime 容器时间与宿主机同步

-e MYSQL_ROOT_PASSWORD=123456 设置密码

-d mysql:8.0.20 后台启动,mysql

执行docker_insert_mysql8.0.20.sh

sh docker_insert_mysql8.0.20.sh

在这里插入图片描述
检查是否启动成功

docker ps 

在这里插入图片描述
6.配置链接信息
到这里已经成功启动了、但是连接还需要在配置之后才可以链接。

进入mysql8 容器

docker exec -it mysql8 bash

在容器内登录mysql

 mysql -u root -p

如果出现异常:(初始密码不成功,密码默认为空,直接Enter)保证进入到mysql命令行。
在这里插入图片描述
设置权限(为root分配权限,以便可以远程连接)

grant all PRIVILEGES on *.* to root@'%' WITH GRANT OPTION;
use mysql

update user set host='%' where user='root';

在这里插入图片描述
由于Mysql5.6以上的版本修改了Password算法,这里需要更新密码算法,便于使用Navicat连接

在这里插入图片描述

grant all PRIVILEGES on *.* to root@'%' WITH GRANT OPTION;


ALTER user 'root'@'%' IDENTIFIED BY '123456' PASSWORD EXPIRE NEVER;


ALTER user 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';


FLUSH PRIVILEGES;

7.Navicat链接数据库
肯定搜到了很多篇安装教程、看我的这篇一步成功。

ps:还有一些防火墙没关闭、等其它情况请自行百度。。。

点个赞收藏一下呗
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/695531.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

webassembly添加调试

本文主要参考:webassembly下C调试 一、安装扩展程序 如果有条件的:DevTools下载 使用第三方Chrome扩展插件搜索下载网站地址 ,搜索DWARF下载。 二、使用扩展程序 解压安装包后,直接将crx文件拖入到web浏览器上,如果…

vue element-ui的<el-tag>实现文字超过自动换行

目录 前言 解决方法 前言 今天我在使用element-ui的<el-tag>标签&#xff0c;但我发现一个问题&#xff0c;当我字体过多的时候&#xff0c;会出现这样的情况&#xff1a; 文字远远超出了蓝色框的宽度&#xff0c;那么如何解决呢&#xff1f; 解决方法 .el-tag{white…

VSCode RESTClient 返回结果中文乱码

VSCode RESTClient 返回结果中文总是显示为乱码 &#xff08;其实是 unicode 方式&#xff09; 进入设置 – 扩展 – REST Client &#xff0c; 找到 Rest-clien&#xff1a; DecodeEscaped Unicode Charactors &#xff0c;勾选上即可&#xff01; 再来运行就出来正常的中文了…

在线PDF格式转换器推荐,小圆象PDF转换器满足您的办公需求

作为上班族&#xff0c;我们都知道在办公应用中经常使用PDF文件。PDF具有较高的内容安全性&#xff0c;并且可以在多种设备上打开和浏览而不会出现格式混乱的问题。然而&#xff0c;PDF文件的一个短板是其不易编辑。通常情况下&#xff0c;我们需要将PDF文件转换为Word文档&…

Qt控件(按钮、单选、复选、list、tree、table)

一、布局 工具栏图标文字一起显示&#xff0c;背景透明。 二、代码 widget.ui <?xml version"1.0" encoding"UTF-8"?> <ui version"4.0"><class>Widget</class><widget class"QWidget" name"Widg…

Windows 安装 Redis

安装和配置Redis Redis的安装有两种安装形式&#xff0c;一种是安装包式&#xff0c;另一种是压缩包 注意&#xff1a;windows没有32位的&#xff0c;所以32位机器的朋友考虑换一下机器。 一、安装包式 1、windows环境下的redis需要去github上获取: https://github.com/Mic…

MATLAB matlab图像压缩程序--采用嵌入式小波零树编码算法源码

MATLAB matlab图像压缩程序--采用嵌入式小波零树编码算法源码 function varargout ezw(varargin) % EZW MATLAB code for ezw.fig % EZW, by itself, creates a new EZW or raises the existing % singleton*. % % H EZW returns the handle to a new EZW or…

【裸机开发】GPT 定时器(三) —— 使用GPT实现高精度延时

延时最简单粗暴的方式就是使用空循环来延时&#xff0c;依赖的是时钟主频&#xff08;默认是396M&#xff09;来计数&#xff0c;一旦修改了 6ull 的时钟主频&#xff0c;延时效果就会存在偏差。 因此我们可以使用 EPIT 或者 GPT 的计数功能实现高精度延时&#xff0c;EPIT 是…

电气设备无线测温技术的优势有哪些?安科瑞 许敏

摘 要&#xff1a; 无线测温技术以其安装方便灵活、测温精度高、安全可靠、环境适应性好、便于集中管理等优点&#xff0c; 解决了电气设备长期带电运行状态下的温度在线监测问题&#xff0c; 提高了电气设备的运行可靠性&#xff0c; 在电力行业得到了广泛的应用。本文主要介…

将当前conda环境导出为yaml文件

conda环境的转移和复制 conda导出已有环境&#xff0c;环境会被保存在environment.yaml文件中。 conda env export > environment.yaml 当我们想再次创建该环境&#xff0c;或根据别人提供的.yaml文件复现环境时&#xff0c;就可以通过下面的命令来复现安装环境了。 conda …

【深度学习】Stable Diffusion

Stable Diffusion原理&#xff1a; https://zhuanlan.zhihu.com/p/632866251 训练过程&#xff1a; 文生图方法&#xff1a; 图生图方法&#xff1a;

CSS实现多头像叠加ui效果

第一种实现方式 简单粗暴直接使用margin-right实现&#xff0c;缺点是第一行右侧最右边头像溢出容器&#xff0c;代码中的三行注释的代码放开后可解决这个问题。 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8">&…

SQLyog登录错误解决

sqlyog登录错误号码2058解决 登录本地MySQL数据库 Microsoft Windows [版本 6.1.7601] 版权所有 (c) 2009 Microsoft Corporation。保留所有权利。C:\Users\Administrator>mysql -u root -p Enter password: **** Welcome to the MySQL monitor. Commands end with ; or \…

windows10 Linux子系统 Ubuntu 文件互相访问

ubuntu 访问Windows windows的磁盘被挂载到了/mnt下&#xff0c;可以看到我的电脑的c,d,e,f盘&#xff0c; windows 访问 ubuntu 在文件夹输入\wsl$ 再点击Ubuntu-22.04,进入文件夹

CSS 弹性布局

提示&#xff1a;这章比较重要&#xff0c;做复杂页面时经常会用到&#xff01;会不断更新❗ 文章目录 前言主轴和侧轴flex-direction 主轴方向flex-wrap 折行justify-content 主轴排列方式flex-start&#xff1a;默认左对齐flex-end&#xff1a;右对齐center&#xff1a;居中s…

如何在Maven中发布项目到Nexus私有服务器

本篇环境 nexus-3.55.0-01&#xff0c; Nexus安装在本地服务器 http://localhost:8081/maven-3.9.2 发布步骤 在项目机器的Maven的 settings.xml 配置Nexus的账号/密码 在settings.xml 的 <servers>节点增加 <server> 节点&#xff0c; 配置 Nexus 的登陆账号和…

Java使用pdf模板生成pdf文件

文章目录 前言如何生成pdf文件1. 制作pdf模板2. 填充pdf模板生成文件 前言 有时候&#xff0c;业务中我们需要使用pdf模板生成一份pdf文件。如何生成pdf文件&#xff1f; 如下&#xff0c;我们把左侧的模板生成为右侧的填充文件。 如何生成pdf文件 1. 制作pdf模板 &#xff…

【Linux】C++项目实战-UDP服务器

目录 UDP通信函数解析代码举例 广播函数解析代码举例 橙色 UDP通信 函数解析 #include <sys/types.h> #include <sys/socket.h> ssize_t sendto(int sockfd, const void *buf, size_t len, int flags, const struct sockaddr *dest_addr, socklen_t addrlen);- 参…

避雷器在线测试仪

一、产品概述 KDYZ-306氧化锌避雷器带电测试仪是用于检测氧化锌避雷器电气性能的专用仪器&#xff0c;该仪器适用于各种电压等级的氧化锌避雷器的带电或停电检测&#xff0c;从而及时发现设备内部绝缘受潮及阀片老化等危险缺陷。 仪器操作简单、使用方便&#xff0c;测量全过…

创建固定大小的文件(window 和 UBUNTU)

1、Windows Windows提供了一个强大的文件系统管理工具&#xff1a;fsutil.exe 例&#xff0c;在D盘上创建一个空文件file.txt&#xff0c;文件大小10k字节 fsutil file createnew D:\file.txt 1000 2、Ubuntu Ubuntu创建一个指定大小的文件用全零填充这个文件&#xff0c;例…