ySQL 9.6 Windows 详细安装与坑点修复教程

MySQL 9.6 Windows 详细安装与坑点修复教程

本文旨在提供一份完整的 MySQL 9.6 安装指南,并重点针对在 Windows 环境下由于“中文主机名”和“文件编码”导致的初始化失败问题提供深度解决方案。


第一部分:MySQL 9.6 标准安装步骤

1. 下载与运行安装程序

  • 从 MySQL 官网下载 MySQL Installer
  • 运行安装程序,选择 Server onlyFull 安装模式。

2. 配置服务器

  • Type and Networking:选择 Development Computer,端口默认为 3306
  • Authentication Method:建议选择 Use Strong Password Encryption
  • Accounts and Roles:设置 root 密码并添加需要的用户。
  • Windows Service:设置服务名称(如 MySQL96),勾选 Start the MySQL Server at System Startup

3. 应用配置 (Apply Configuration)

  • 点击 Execute 等待安装程序自动完成写入配置文件、更新防火墙、调整服务和初始化数据库。

4. 配置环境变量

  • 将 MySQL 的 bin 目录(默认:C:\Program Files\MySQL\MySQL Server 9.6\bin)添加到系统的 Path 环境变量中,以便在任意终端直接使用 mysql 命令。

第二部分:安装过程中遇到的核心问题

在执行到 “Initializing Database” 步骤时,许多用户会遇到如下报错:

在这里插入图片描述

问题 1:中文主机名导致的乱码报错

现象:日志显示无法找到文件,且文件名出现乱码。

mysqld: File '.\鏄ⅶ妗愬饯楦?bin.index' not found (OS errno 2 - No such file or directory) The designated data directory C:\ProgramData\MySQL\MySQL Server 9.6\Data\ is unusable. Database initialization failed. 

原因:MySQL 默认使用 Windows 计算机名作为日志文件前缀。若计算机名为中文(如 是梧桐彤鸭),在编码转换时会产生乱码,导致 mysqld 无法创建索引文件。

问题 2:配置文件编码 (BOM) 冲突

现象:手动修改 my.ini 后,初始化报错。

mysqld: [ERROR] Found option without preceding group in config file ... at line 1. 

原因:使用 PowerShell 或记事本保存文件时,默认添加了 UTF-8 BOM 标记。MySQL 无法识别文件头的字节顺序标记,认为配置文件格式非法。

问题 3:权限与文件锁定

现象:尝试删除损坏的 Data 目录时提示“访问被拒绝”。
原因C:\ProgramData 是受保护目录,且之前失败的 mysqld 进程可能仍在后台持有文件句柄。


第三部分:解决方案与深度修复

1. 彻底清理环境

在修复前,必须杀死所有残留进程并清理服务:

以管理员身份运行 PowerShell:

stop-process-name "mysqld"-ErrorAction SilentlyContinue sc.exe delete MySQL96 # 如果服务已创建但损坏,先删除

2. 修复 my.ini 编码与路径

不要使用普通记事本修改,建议使用以下方式确保 无 BOM 的 UTF-8 编码。

  • 修改点:将所有包含中文主机名的路径改为纯英文。
    • general_log_file="mysql-general.log"
    • slow_query_log_file="mysql-slow.log"
    • log-error="mysql-error.err"
    • log-bin="mysql-bin"

3. 自动化修复脚本 (推荐)

创建一个 fix_mysql.ps1 脚本,复制以下内容并运行,它可以自动处理编码和清理逻辑:

$myIniPath = "C:\ProgramData\MySQL\MySQL Server 9.6\my.ini"$dataPath = "C:\ProgramData\MySQL\MySQL Server 9.6\Data"$mysqlExe = "C:\Program Files\MySQL\MySQL Server 9.6\bin\mysqld.exe"# 1. 以无 BOM 格式重写 my.ini 并修复路径$content = Get-Content$myIniPath-Raw $content = $content-replace'general_log_file=".*?"','general_log_file="mysql-general.log"'$content = $content-replace'slow_query_log_file=".*?"','slow_query_log_file="mysql-slow.log"'$content = $content-replace'log-error=".*?"','log-error="mysql-error.err"'$content = $content-replace'log-bin=".*?"','log-bin="mysql-bin"'$Utf8NoBom = New-Object System.Text.UTF8Encoding($false)[System.IO.File]::WriteAllText($myIniPath,$content,$Utf8NoBom)# 2. 强制清理损坏的 Data 目录if(Test-Path$dataPath){Remove-Item-Recurse -Force $dataPath}# 3. 手动触发初始化 & $mysqlExe--defaults-file=$myIniPath--console --initialize-insecure=on --lower-case-table-names=1 

4. 启动与验证

初始化成功后(日志显示 MySQL Server Initialization - end),手动启动服务:

net start MySQL96 mysql -u root -p # 初始密码为空,直接回车

结语:MySQL 在 Windows 上的安装细节较多,尤其是对非 ASCII 字符的支持仍有改进空间。通过手动干预配置文件和强制初始化,可以有效解决 99% 的安装失败问题。

Read more

视频理解技术在产业级应用中的实践指南:从算法选型到本地化部署

视频理解技术在产业级应用中的实践指南:从算法选型到本地化部署 【免费下载链接】PaddleVideoAwesome video understanding toolkits based on PaddlePaddle. It supports video data annotation tools, lightweight RGB and skeleton based action recognition model, practical applications for video tagging and sport action detection. 项目地址: https://gitcode.com/gh_mirrors/pa/PaddleVideo 在数字化浪潮席卷各行各业的今天,视频作为信息传递的重要载体,其蕴含的丰富内容正等待被深度解读。如何让计算机真正"看懂"视频中的动作、行为和事件?

By Ne0inhk
【数据结构与算法】单链表综合练习:1.删除链表中等于给定值 val 的所有节点 2.反转链表 3.链表中间节点

【数据结构与算法】单链表综合练习:1.删除链表中等于给定值 val 的所有节点 2.反转链表 3.链表中间节点

🔥小龙报:个人主页 🎬作者简介:C++研发,嵌入式,机器人等方向学习者 ❄️个人专栏:《C语言》《【初阶】数据结构与算法》 ✨ 永远相信美好的事情即将发生 文章目录 * 前言 * 一、删除链表中等于给定值 val 的所有节点 * 1.1题目 * 1.2 算法原理 * 1.3代码 * 二、反转链表 * 2.1题目 * 2.2 算法原理 * 2.3代码 * 三、链表中间节点 * 3.1题目 * 3.2 算法原理 * 3.3代码 * 总结与每日励志 前言 链表是 C 语言和数据结构学习的核心考点,也是编程入门绕不开的经典题型。本文聚焦删除指定值节点、

By Ne0inhk

IVFFlat 与 HNSW 算法介绍与对比

一 核心概念与适用场景 * IVFFlat(Inverted File with Flat) * 基于K‑means 聚类将向量空间划分为多个簇(列表/桶),为每个簇维护倒排列表;查询时先找最近的若干簇,再在簇内做暴力精确距离计算(Flat 表示不压缩)。适合对召回精度较高、内存较充足、数据相对静态的场景。其优点是索引结构简单、可解释,缺点是需要训练、对数据分布变化敏感、频繁更新后可能需要重建索引。典型应用包括高精图像对比、需要可控召回的业务。 * HNSW(Hierarchical Navigable Small World) * 基于多层小世界图的近似最近邻搜索:顶层稀疏用于快速导航,底层稠密用于精检;查询从顶层入口点逐层下降,在底层通过贪婪/受限搜索找 Top‑K。优点是高召回、低延迟、对高维向量和大规模数据更稳健;缺点是构建更慢、内存占用更高(需存储图连接)。常用于RAG、语义搜索、推荐系统等对召回与时延都敏感的场景。 二

By Ne0inhk
【贪心算法】day7

【贪心算法】day7

📝前言说明: * 本专栏主要记录本人的贪心算法学习以及LeetCode刷题记录,按专题划分 * 每题主要记录:(1)本人解法 + 本人屎山代码;(2)优质解法 + 优质代码;(3)精益求精,更好的解法和独特的思想(如果有的话);(4)贪心策略正确性的 “证明” * 文章中的理解仅为个人理解。如有错误,感谢纠错 🎬个人简介:努力学习ing 📋本专栏:C++刷题专栏 📋其他专栏:C语言入门基础,python入门基础,C++学习笔记,Linux 🎀ZEEKLOG主页 愚润泽 你可以点击下方链接,进行其他贪心算法题目的学习 点击链接开始学习贪心day1贪心day2贪心day3贪心day4贪心day5贪心day6贪心day7贪心day8贪心day9贪心day10 也可以点击下面连接,学习其他算法 点击链接开始学习优选专题动态规划递归、搜索与回溯贪心算法 题单获取→ 【贪心算法】题单汇总 题目 * 55. 跳跃游戏 * 个人解 * 134. 加油站 * 优质解

By Ne0inhk