【mysql】Windows MySQL 8.4.10 绿色免安装喂饭教程

Windows MySQL 8.4.11 绿色免安装喂饭教程

包:mysql-8.4.11-winx64.zip(Release正式版,不是debug-test ,适合项目打包分发、本地开发、演示环境)

特点:解压即用,无安装程序,可随项目一起打包;自带完整卸载流程;Windows10/11 64位

前置:管理员权限;系统缺少VC++运行库时,安装 vc_redist.x64

统一根目录:D:\data\env\mysql-8.4.11-winx64

安装前运行微软常用运行库全集(也可能称为依赖)

一、下载与解压

  1. 下载官方 mysql-8.4.11-winx64.zip

    https://www.mysql.com/

  2. 解压到:D:\data\env\mysql-8.4.11-winx64

❌ 禁止中文、空格、特殊符号路径

  1. 进入解压目录,确认存在 bin 文件夹(内含 mysqld.exe、mysql.exe)

绿色包默认没有 data 文件夹、没有 my.ini,需要手动创建/初始化。

二、新建 my.ini(放在mysql根目录 D:\data\env\mysql-8.4.11-winx64\my.ini)

新建记事本,粘贴下面内容,另存为 my.ini,编码选 ANSI

ini 复制代码
[mysqld]
port=3306
basedir=D:/data/env/mysql-8.4.11-winx64
datadir=D:/data/env/mysql-8.4.11-winx64/data
character-set-server=utf8mb4
default-storage-engine=INNODB
max_connections=100
# 开发环境开启,忽略表名大小写(Windows推荐)
lower_case_table_names=1

[mysql]
default-character-set=utf8mb4

路径写法:/ 或者 \\,不能直接单个反斜杠 \

三、初始化数据库(仅第一次解压执行1次!)

  1. 管理员身份打开 CMD / PowerShell
  2. cd 切换到 bin 目录
cmd 复制代码
cd D:\data\env\mysql-8.4.11-winx64\bin
  1. 执行初始化,会生成data目录,并输出root临时密码
cmd 复制代码
mysqld --initialize --console

如果使用Powershell则写成

powershell 复制代码
./mysqld --initialize --console

  • 成功后根目录自动生成 data 文件夹
  • 控制台输出示例:[Note] [MY-010454] [Server] A temporary password is generated for root@localhost: 3dq%)D:625>j(中文释义:已为 root@localhost 生成临时密码,密码为3dq%)D:625>j)

3dq%)D:625>j` 就是临时root密码,立刻复制保存!
备选(开发打包用,初始化后root无密码,方便演示)

cmd 复制代码
mysqld --initialize-insecure

如果使用powershell则

cmd 复制代码
./mysqld --initialize-insecure

⚠️ 无密码模式仅本地项目演示,不适合公网/生产。
报错处理:

  • 已有data文件夹:删除data文件夹,重新初始化
  • 缺少vcruntime:安装微软VC++2019-2022 x64运行库

四、两种启动方式(二选一)

方式A:注册Windows服务(推荐,开机自启,适合常驻开发环境)

管理员CMD,bin目录执行:

cmd 复制代码
mysqld --install MySQL84

MySQL84 是自定义服务名,可随便改

启动服务:

cmd 复制代码
net start MySQL84

方式B:直接控制台启动(打包项目演示首选,不注册系统服务)

管理员CMD,bin目录执行:

cmd 复制代码
mysqld --console

这个窗口不能关闭,一关数据库就停止;新开CMD窗口用来连接数据库。

五、连接数据库 + 修改root密码

新开CMD,进入bin目录

cmd 复制代码
cd D:\data\env\mysql-8.4.11-winx64\bin
mysql -uroot -p

回车,粘贴刚才的临时密码,进入mysql命令行。

修改root密码(MySQL8.4必须用ALTER USER)

sql 复制代码
ALTER USER 'root'@'localhost' IDENTIFIED BY '你的新密码';
FLUSH PRIVILEGES;
exit;

密码规则:至少8位,大小写+数字+符号;本地开发可简化,但不能纯数字。
可选:开启远程访问(项目联调使用)

sql 复制代码
CREATE USER 'root'@'%' IDENTIFIED BY '你的新密码';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;

六、环境变量(可选,任意位置调用mysql命令)

  1. 按WIN键 → 输入env→ 编辑系统环境变量

  2. 系统变量 Path → 编辑 → 新增路径:D:\data\env\mysql-8.4.11-winx64\bin

  3. 保存,重启CMD,任意目录都可以执行 mysql / mysqld

七、项目打包分发(重点)

Release正式版适合打包给项目、演示、客户本地部署,性能稳定。

  1. 停止MySQL服务/关闭mysqld控制台
  2. 整个mysql文件夹打包(data文件夹一起打包)
  3. 接收方操作:解压到 D:\data\env\mysql-8.4.11-winx64 → 管理员CMD进入bin,注册服务或者直接 mysqld --console 启动,无需再次初始化

注意:data目录保存账号密码与业务数据,不要打包带敏感业务数据分发,仅用于演示库。

八、完整卸载步骤(绿色版无注册表残留)

  1. 管理员CMD停止服务
cmd 复制代码
net stop MySQL84
  1. 删除Windows服务(如果注册过服务,没注册直接跳过)
cmd 复制代码
mysqld --remove MySQL84
  1. 任务管理器结束所有 mysqld.exe 进程
  2. 删除整个mysql解压文件夹 D:\data\env\mysql-8.4.11-winx64
  3. 【可选清理】环境变量:删除Path内mysql bin条目
  4. 【可选】检查 C:\ProgramData\MySQL,如有残留目录手动删除(绿色版一般不会生成)

九、常见坑

  1. 3306端口占用:修改my.ini中port=3307,重启mysql
  2. mysqld一闪而过:my.ini路径写错、权限不足、data损坏;用 mysqld --console 看报错
  3. Access denied:密码错误,删除data文件夹重新初始化
  4. my.ini修改后必须重启mysql配置才生效

十、批处理脚本(打包直接附带,放mysql根目录 D:\data\env\mysql-8.4.11-winx64)

新建 install.bat(管理员运行,注册服务)

bat 复制代码
@echo off
%1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",1)(window.close)&&exit
cd /d "%~dp0bin"
mysqld --install MySQL84
echo 服务MySQL84注册完成
pause

start.bat

bat 复制代码
@echo off
%1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",1)(window.close)&&exit
net start MySQL84
echo MySQL启动完成
pause

stop.bat

bat 复制代码
@echo off
%1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",1)(window.close)&&exit
net stop MySQL84
echo MySQL已停止
pause

uninstall.bat(卸载)

bat 复制代码
@echo off
%1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",1)(window.close)&&exit
cd /d "%~dp0bin"
net stop MySQL84
mysqld --remove MySQL84
echo 服务已移除,可以手动删除整个文件夹
pause
相关推荐
斯内普吖1 小时前
(开源)宠物饲养系统实战指南 基于 Java + SSM + Vue + MySQL
java·vue.js·mysql·开源·宠物
传奇开心果编程1 小时前
【Compose Multiplatform 跨端开发学与练】第8课 资源管理与主题
android·windows·学习·ios·kotlin·web·composer
ao-weilai1 小时前
MySQL数据库:表约束
数据库·mysql·adb
sukalot2 小时前
Windows 驱动实例分析系列:libwdi 驱动分析 - 应用篇(一)
windows·驱动开发
小道士写程序3 小时前
Windows Rust 环境安装指导
开发语言·windows·rust
传奇开心果编程3 小时前
【Compose Multiplatform 跨端开发学与练】第4课 导航与路由
android·windows·学习·ui·ios·kotlin·composer
Tisfy3 小时前
两台旧电脑修复 —— 绕过WinXP密码登录、备份和恢复Win7数据、安装Win10
windows·数据恢复·系统重装
传奇开心果编程3 小时前
【Compose Multiplatform 跨端开发学与练】第2课 Compose 基础语法
android·windows·学习·ui·ios·kotlin·composer
supabc1234 小时前
Celium:连接 Windows、Mac、Linux 与 Android,让远程访问和设备管理更简单
android·linux·windows·macos·远程访问·网络管理·celium