废话不多说,上实操!!!
一、彻底卸载旧版本mysql(核心步骤)
彻底卸载是避免安装冲突的关键,请按顺序执行以下操作:
停止所有mysql服务
终止mysql进程,防止文件占用:- 打开「服务」窗口:按
win + r输入services.msc回车。 - 找到含「mysql」的服务(如
mysql57),右键「停止」。 - 若失败,以管理员身份打开cmd执行:
taskkill /f /im mysqld.exe # 强制结束所有mysql进程
- 打开「服务」窗口:按
卸载mysql程序组件
移除所有安装的程序:- 打开「程序和功能」:按
win + r输入appwiz.cpl回车。 - 卸载所有含「mysql」的组件(如
mysql server 5.7、mysql workbench)。 - 确保无遗漏,卸载后重启电脑。
- 打开「程序和功能」:按
删除残留文件目录
手动清除残留文件:- 删除mysql安装目录(如
d:\mysql5),若提示占用则重启后删除。 - 开启「显示隐藏文件」:在「此电脑」→「查看」→勾选「隐藏的项目」。
- 删除以下路径(若存在):
c:\program files\mysqlc:\program files (x86)\mysqlc:\programdata\mysql(核心残留,必须删除)。
- 删除mysql安装目录(如
清理注册表
注册表残留是安装失败主因,谨慎操作:- 打开注册表编辑器:按
win + r输入regedit回车。 - 删除以下路径中的含「mysql」子项:
hkey_local_machine\system\currentcontrolset\services(删除如mysql57)hkey_local_machine\software\mysql ab(删除整个文件夹)hkey_current_user\software\mysql ab(若存在)hkey_local_machine\software\wow6432node\mysql ab(64位系统)。
⚠️ 注意:仅删除明确含「mysql」的项,避免误删系统文件!
- 打开注册表编辑器:按
删除环境变量
移除mysql配置:- 右键「此电脑」→「属性」→「高级系统设置」→「环境变量」。
- 在「系统变量」的
path中,删除所有含mysql\bin的路径(如d:\mysql5\bin)。 - 点击「确定」保存。
重启电脑
完成以上步骤后必须重启,确保所有残留清除。
二、mysql 5.7重新安装与配置
确保按顺序操作,避免路径错误:
下载并解压安装包
- 从官网下载mysql 5.7 zip包(如
mysql-5.7.44-winx64.zip)。 - 解压到无空格、无中文的路径(如
d:\mysql-5.7.44),避免使用旧路径。
- 从官网下载mysql 5.7 zip包(如
配置my.ini文件
在mysql根目录(如d:\mysql-5.7.44)新建my.ini,内容如下(替换路径):[mysqld] port = 3306 # 端口号,冲突时可改(如3307) basedir = d:\mysql-5.7.44 # 替换为你的解压路径 datadir = d:\mysql-5.7.44\data # 数据目录,初始必须为空 max_connections = 200 character-set-server = utf8 default-storage-engine = innodb sql_mode = no_engine_substitution,strict_trans_tables [mysql] default-character-set = utf8
初始化数据目录
以管理员身份打开cmd执行:cd d:\mysql-5.7.44\bin # 切换到bin目录 mysqld --initialize --console # 初始化,输出含初始密码
- 关键输出:记录
root@localhost:后的随机密码(如abcd-1234-efgh),用于首次登录。
- 关键输出:记录
安装并启动服务
在管理员cmd中继续执行:mysqld --install mysql57 # 安装服务,建议用mysql57避免冲突 net start mysql57 # 启动服务
- 若提示「服务已存在」,先运行
mysqld --remove mysql57卸载旧服务,再重新安装。 - 若启动失败,检查
my.ini路径是否正确(无空格/中文)。
- 若提示「服务已存在」,先运行
修改初始密码
- 登录mysql:在cmd中输入初始密码:
输入密码后显示
mysql -uroot -p
mysql>即成功。 - 修改密码:执行以下sql命令(替换
你的新密码):alter user 'root'@'localhost' identified by '你的新密码'; flush privileges; # 刷新权限 exit; # 退出
- 验证登录:重新打开cmd,用新密码登录确认:
mysql -uroot -p
- 登录mysql:在cmd中输入初始密码:
三、常见问题解决
安装过程中的常见错误及解决方案:
初始化提示“data目录非空”
原因:datadir目录有残留文件。
解决:删除data目录下所有内容,重新执行mysqld --initialize --console。登录提示“error 1045 (28000): access denied”
原因:密码错误或未生效。
解决:- 检查密码大小写。
- 若密码遗忘:
- 在
my.ini中添加skip-grant-tables。 - 重启服务:
net stop mysql57+net start mysql57。 - 无密码登录后修改密码,再注释掉
skip-grant-tables并重启服务。
- 在
服务启动失败(net start mysql57 错误)
原因:路径错误、端口冲突或权限问题。
解决:- 检查
my.ini中basedir和datadir路径(确保无中文/空格)。 - 更换端口(修改
my.ini中port为3307)。 - 以管理员身份运行cmd执行命令。
- 检查
总结
通过彻底卸载旧版残留(重点在注册表和文件清理)和正确配置新版本(确保路径无中文/空格),mysql 5.7安装成功率极高。核心在于:卸载时重启电脑,安装时记录初始密码并修改。
发表评论