Windows 离线安装 MySQL 8
目录
1. 下载离线安装包
2. 上传解压
3 配置 my.ini 文件
4 设置系统环境变量
5 安装 MySQL
6 登录 MySQL
客户环境是内网环境,不能访问外网,只能离线安装 MySQL 了。
1. 下载离线安装包
MySQL 离线压缩包官网下载地址:MySQL :: Download MySQL Community Server (Archived Versions)
此次安装 8.0.20 版本!
2. 上传解压
解压后的文件目录:
可以看到,默认是没有 data 文件夹和 my.ini 文件的,则需要我们自己手动创建这两个目录和文件即可:
3 配置 my.ini 文件
[mysqld]
# 设置 3306 端口
port=3306# 设置 mysql 的安装目录,即 bin 目录
basedir="mysql 安装目录"# 设置 mysql 数据库的数据的存放目录,即 data 目录
datadir="mysql 安装目录再加上 \data"# 允许最大连接数
max_connections=200# 允许连接失败的次数
max_connect_errors=10# 服务端使用的字符集默认为 utf8
character-set-server=utf8# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB# 默认使用 “mysql_native_password” 插件认证
#mysql_native_password
default_authentication_plugin=mysql_native_password[mysql]
# 设置 mysql 客户端默认字符集
default-character-set=utf8[client]
# 设置 mysql 客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8
4 设置系统环境变量
5 安装 MySQL
以管理员身份启动 cmd 或 PowerShell 进行以下操作:
Windows PowerShell
版权所有 (C) Microsoft Corporation。保留所有权利。PS C:\Users\Administrator> cd E:\keymanTech\dbs\mysql-8.0.20-winx64\bin
PS E:\keymanTech\dbs\mysql-8.0.20-winx64\bin> mysqld --initialize --console
2023-02-14T06:59:51.688125Z 0 [System] [MY-013169] [Server] E:\keymanTech\dbs\mysql-8.0.20-winx64\bin\mysqld.exe (mysqld 8.0.20) initializing of server in progress as process 16856
2023-02-14T06:59:51.688225Z 0 [ERROR] [MY-010338] [Server] Can't find error-message file 'E:\keymanTech\dbs\mysql-8.0.20-winx6in\share\errmsg.sys'. Check error-message file location and 'lc-messages-dir' configuration directive.
2023-02-14T06:59:51.689181Z 0 [Warning] [MY-013242] [Server] --character-set-server: 'utf8' is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous.
2023-02-14T06:59:51.712993Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.
2023-02-14T06:59:52.262250Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended.
2023-02-14T06:59:53.741675Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: s-fqTBh.=7?e
但是在安装过程中有报错信息:
[ERROR] [MY-010338] [Server] Can't find error-message file 'E:\xxx\mysql-8.0.20-winx6in\share\errmsg.sys'. Check error-message file location and 'lc-messages-dir' configuration directive.
解决办法:
查了很多教程最后发现是转义字符出现了问题:MySQL Bugs: #90364: Can't find error-message file
因为我们在配置 MySQL 安装目录的时候,没有将安装目录配置到根目录下(就是 MySQL 解压文件根目录)或者没有加双斜杠:
- 错误路径:basedir="D:\\InstalledDevsoftware\\XXX" 或 D:\InstalledDevsoftware\XXX
- 正确路径:basedir="D:\\Devsoft\\mysql-8.0.20-winx64\\XXX"
还需要在 my.ini 多加一行内容:
······
# 设置 mysql 的安装目录,即 bin 目录
basedir="E:\\xxx\\mysql-8.0.20-winx64\\bin"# 设置 mysql 数据库的数据的存放目录,即 data 目录
datadir="E:\\xxx\\mysql-8.0.20-winx64\\data"lc-messages-dir="E:\\xxx\\mysql-8.0.20-winx64\\share\\english"
······
再次执行 mysqld --initialize --console 命令:
报另外一个错误信息: [ERROR] [MY-010457] [Server] --initialize specified but the data directory has files in it. Aborting.
解决办法:清空 data 文件夹下的内容即可!
再次执行 mysqld --initialize --console 命令:
PS E:\keymanTech\dbs\mysql-8.0.20-winx64\bin> mysqld --initialize --console
2023-02-14T07:17:13.196681Z 0 [System] [MY-013169] [Server] E:\keymanTech\dbs\mysql-8.0.20-winx64\bin\mysqld.exe (mysqld 8.0.20) initializing of server in progress as process 19932
2023-02-14T07:17:13.196777Z 0 [Warning] [MY-010339] [Server] Using pre 5.5 semantics to load error messages from E:\keymanTech\dbs\mysql-8.0.20-winx64\share\english\. If this is not intended, refer to the documentation for valid usage of --lc-messages-dir and --language parameters.
2023-02-14T07:17:13.197450Z 0 [Warning] [MY-013242] [Server] --character-set-server: 'utf8' is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous.
2023-02-14T07:17:13.219796Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.
2023-02-14T07:17:13.717398Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended.
2023-02-14T07:17:15.254780Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: h5(rJyMiFKn0
PS E:\keymanTech\dbs\mysql-8.0.20-winx64\bin> mysqld --install
Service successfully installed.
PS E:\keymanTech\dbs\mysql-8.0.20-winx64\bin> net start mysql
MySQL 服务正在启动 ...
MySQL 服务已经启动成功。
在任务管理器中库看到名为 MySQL 的服务:
6 登录 MySQL
用前面随机生成的密码登录:
PS E:\xxx\mysql-8.0.20-winx64\bin> mysql -u root -p
Enter password: ************# 修改密码
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';# 用新密码登录
PS E:\xxx\mysql-8.0.20-winx64\bin> mysql -u root -p
Enter password: **********
至此 MySQL 8 安装成功!!!
相关文章:

Windows 离线安装 MySQL 8
目录 1. 下载离线安装包 2. 上传解压 3 配置 my.ini 文件 4 设置系统环境变量 5 安装 MySQL 6 登录 MySQL 客户环境是内网环境,不能访问外网,只能离线安装 MySQL 了。 1. 下载离线安装包 MySQL 离线压缩包官网下载地址:MySQL :: Down…...
【前端攻城狮之vue基础】02路由+嵌套路由+路由query/params传参+路由props配置+replace属性+编程式路由导航+缓存路由组件
路由的基础知识1.路由简介2.路由基本使用3.嵌套路由4.传递路由的query传参# 5.传递路由的params参数6.路由的props传参配置7.路由router-link标签的replace属性8.编程式路由导航9.缓存路由组件1.路由简介 路由是一条条对应的key-value关系,key就是前端地址栏的路径…...

CHAPTER 1 Zabbix介绍及安装
Zabbix介绍及安装1.1 Zabbix监控1 为什么要监控1.1 网站可用性2 监控什么东西2.1 监控范畴3 怎么来监控3.1 远程管理服务器3.2 监控硬件3.3 查看cpu相关3.4 内存3.5 磁盘3.6 监控网络4 监控工具总览5 zabbix介绍5.1 zabbix的组成5.2 zabbix监控范畴1.2 安装zabbix1 环境检查2 安…...

认识V模型、W模型、H模型
软件测试与软件工程息息相关,软件测试是软件工程组成中不可或缺的一部分。 在软件工程、项目管理、质量管理得到规范化应用的企业,软件测试也会进行得比较顺利,软件测试发挥的价值也会更大。 要关注软件工程、质量管理以及配置管理与软件测试…...
excel ttest检测
1、excel函数含义 TTEST(array1,array2,tails,type) ▪ Array1: 第一组数据集 ▪ Array2: 第二组数据集 ▪ Tails: 用于定义所返回的分布的尾数: 1 代表单尾;2 代表双尾 ▪ Type: 用于定义 t-检验的类型: 1 代表成对检验;2 代表双样本等方差假设&am…...

PDFPrinting.Net操作进行细粒度控制
PDFPrinting.Net操作进行细粒度控制 PDFPrinting.Net能够容易且灵活地预测完美的打印结果以及用户文件的示例性显示。可以快速浏览.NET PDF打印中最关键的元素。如果用户需要获得更详细的概述,那么他可以查看快速入门手册,甚至是现有文档的详细概述参考。…...

SegPGD
在这项工作中,我们提出了一种有效和高效的分割攻击方法,称为SegPGD。此外,我们还提供了收敛性分析,表明在相同次数的攻击迭代下,所提出的SegPGD可以创建比PGD更有效的对抗示例。此外,我们建议应用我们的Seg…...

ESP-IDF + Vscode ESP32 开发环境搭建以及开发入门
ESP-IDF Vscode ESP32 开发环境搭建以及开发入门 文章目录ESP-IDF Vscode ESP32 开发环境搭建以及开发入门1. 前言2. 下载开发工具3. 配置工具4. 创建工程5. 解决vscode找不到头文件,波浪线警告6. 添加自己的组件6.1 组件说明6.2 添加项目组件6.3 添加扩展组件7. …...

SpringMvc的请求和响应
SpringMvc的数据响应 1.springmvc的数据相应方式 (1)页面跳转 直接返回字符串 通过ModelAndView对象返回 (2)回写数据 直接返回字符串 返回对象或集合 页面跳转 jsp页面 <% page contentType"text/html;charsetUTF-8&q…...

【Vue3】首页主体-面板组件封装
首页主体-面板组件封装 新鲜好物、人气推荐俩个模块的布局结构上非常类似,我们可以抽离出一个通用的面板组件来进行复用 目标:封装一个通用的面板组件 思路分析 图中标出的四个部分都是可能会发生变化的,需要我们定义为可配置主标题和副标题…...
部署 K8s 集群
1 .部署k8s的两种方式目前生产部署Kubernetes集群主要有两种方式:kubeadmKubeadm是一个K8s部署工具,提供kubeadm init和kubeadm join,用于快速部署Kubernetes集群。二进制包从github下载发行版的二进制包,手动部署每个组件&#x…...

关于北京君正:带ANC的2K网络摄像头用户案例
如果远程办公是您的未来,或者您经常通过视频通话与远方的朋友和亲戚交谈,那么您可以考虑购买网络摄像头以显著改善您的沟通。Anker PowerConf C200是个不错的选择。 Anker PowerConf C200专为个人工作空间而设计,能够以每秒30帧的速度拍摄2K…...

ccc-Backpropagation-李宏毅(7)
文章目录NotationBackpropagationForward passBackward passSummaryNotation 神经网络求解最优化Loss function时参数非常多,反向传播使用链式求导的方式提升计算梯度向量时的效率,链式法则如下: Backpropagation 损失函数计算为所有样本…...

找出字符串中第一个匹配项的下标-力扣28-java
一、题目描述给你两个字符串 haystack 和 needle ,请你在 haystack 字符串中找出 needle 字符串的第一个匹配项的下标(下标从 0 开始)。如果 needle 不是 haystack 的一部分,则返回 -1 。示例 1:输入:hayst…...
SpringBoot 监听Redis key过期回调
SpringBoot 监听Redis key过期回调 场景 Spring boot实现监听Redis key失效事件可应对某些场景例如:处理订单过期自动取消、用户会员到期… 开启Redis键过期回调通知 Redis默认是没有开启键过期监听功能的,需要手动在配置文件中修改。Linux操作系统 修…...

蓝桥杯C/C++VIP试题每日一练之回形取数
💛作者主页:静Yu 🧡简介:CSDN全栈优质创作者、华为云享专家、阿里云社区博客专家,前端知识交流社区创建者 💛社区地址:前端知识交流社区 🧡博主的个人博客:静Yu的个人博客 🧡博主的个人笔记本:前端面试题 个人笔记本只记录前端领域的面试题目,项目总结,面试技…...
四控、三管、一协调
四控指的是进度控制,质量控制,成本控制,变更控制。三管指的是合同管理,安全管理,资料管理。一协调指的是协调甲方,总包及设备材料供应方的关系。信息系统工程监理是指依法设立且具备相应资质的信息系统工程…...

jdk19下载与安装教程(win10)超详细
一、下载安装步骤 1、官网下载还需要注册,可以点【我的网盘】目录下载,目录也有其它低版本的,如果有需要大家根据需要自行选择。 2、下载后直接点击安装程序,点击【运行】。这里我使用的是64位的。 3、点击【下一步】。 4、默认安…...

来来来,手摸手写一个hook
hello,这里是潇晨,今天就带着大家一起来手写一个迷你版的hooks,方便大家理解hook在源码中的运行机制,配有图解,保姆级的教程,只求同学一个小小的👍,🐶。 第一步…...

【C++】AVL树
目录 1 简介 2 实现 2.1 框架构建 2.2 插入操作 2.2.1 平衡因子的更新 2.2.2 平衡因子异常时树的调整 3 检验 1 简介 AVL树基于二叉搜索树之上,又对其提出了平衡的要求,即:当向二叉搜索树插入新节点后,保证每个节点的左右…...

深入浅出Asp.Net Core MVC应用开发系列-AspNetCore中的日志记录
ASP.NET Core 是一个跨平台的开源框架,用于在 Windows、macOS 或 Linux 上生成基于云的新式 Web 应用。 ASP.NET Core 中的日志记录 .NET 通过 ILogger API 支持高性能结构化日志记录,以帮助监视应用程序行为和诊断问题。 可以通过配置不同的记录提供程…...

使用VSCode开发Django指南
使用VSCode开发Django指南 一、概述 Django 是一个高级 Python 框架,专为快速、安全和可扩展的 Web 开发而设计。Django 包含对 URL 路由、页面模板和数据处理的丰富支持。 本文将创建一个简单的 Django 应用,其中包含三个使用通用基本模板的页面。在此…...

【力扣数据库知识手册笔记】索引
索引 索引的优缺点 优点1. 通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性。2. 可以加快数据的检索速度(创建索引的主要原因)。3. 可以加速表和表之间的连接,实现数据的参考完整性。4. 可以在查询过程中,…...

Python:操作 Excel 折叠
💖亲爱的技术爱好者们,热烈欢迎来到 Kant2048 的博客!我是 Thomas Kant,很开心能在CSDN上与你们相遇~💖 本博客的精华专栏: 【自动化测试】 【测试经验】 【人工智能】 【Python】 Python 操作 Excel 系列 读取单元格数据按行写入设置行高和列宽自动调整行高和列宽水平…...
线程与协程
1. 线程与协程 1.1. “函数调用级别”的切换、上下文切换 1. 函数调用级别的切换 “函数调用级别的切换”是指:像函数调用/返回一样轻量地完成任务切换。 举例说明: 当你在程序中写一个函数调用: funcA() 然后 funcA 执行完后返回&…...

DAY 47
三、通道注意力 3.1 通道注意力的定义 # 新增:通道注意力模块(SE模块) class ChannelAttention(nn.Module):"""通道注意力模块(Squeeze-and-Excitation)"""def __init__(self, in_channels, reduction_rat…...
Go 语言接口详解
Go 语言接口详解 核心概念 接口定义 在 Go 语言中,接口是一种抽象类型,它定义了一组方法的集合: // 定义接口 type Shape interface {Area() float64Perimeter() float64 } 接口实现 Go 接口的实现是隐式的: // 矩形结构体…...

ESP32读取DHT11温湿度数据
芯片:ESP32 环境:Arduino 一、安装DHT11传感器库 红框的库,别安装错了 二、代码 注意,DATA口要连接在D15上 #include "DHT.h" // 包含DHT库#define DHTPIN 15 // 定义DHT11数据引脚连接到ESP32的GPIO15 #define D…...
第25节 Node.js 断言测试
Node.js的assert模块主要用于编写程序的单元测试时使用,通过断言可以提早发现和排查出错误。 稳定性: 5 - 锁定 这个模块可用于应用的单元测试,通过 require(assert) 可以使用这个模块。 assert.fail(actual, expected, message, operator) 使用参数…...
【android bluetooth 框架分析 04】【bt-framework 层详解 1】【BluetoothProperties介绍】
1. BluetoothProperties介绍 libsysprop/srcs/android/sysprop/BluetoothProperties.sysprop BluetoothProperties.sysprop 是 Android AOSP 中的一种 系统属性定义文件(System Property Definition File),用于声明和管理 Bluetooth 模块相…...