装 MySQL 时是不是总在 5.7 和 8.0 之间犯难?选了新版本怕旧程序不兼容,用了老版本又担心安全漏洞。好不容易选好版本,安装完点启动,服务却死活没反应?别愁,今天兔子哥就把版本选择的门道、全系统安装步骤,还有服务启动不了的终极解决办法都讲清楚,新手跟着走,少走不少弯路。
一、先搞懂 5.7 和 8.0 该怎么选?
很多朋友问,这俩版本到底差在哪?先看张对比表:
| 对比项 | MySQL 5.7 | MySQL 8.0 |
|---|---|---|
| 发布时间 | 2015 年 | 2018 年 |
| 默认加密方式 | 旧加密(mysql_native_password) | 强加密(caching_sha2_password) |
| 性能 | 稳定,适合老系统 | 优化更好,支持更多新功能 |
| 兼容性 | 对旧程序友好 | 部分老工具可能连接不上 |
为什么 8.0 要用新加密?因为更安全啊,但有些老的开发工具,比如低版本的 Navicat,连 8.0 会提示 “加密方式不支持”。这时候选 5.7 更稳妥。要是你装 MySQL 是为了学新东西,或者项目用的是新框架,8.0 的新功能(比如窗口函数、JSON 增强)会更顺手。
二、全系统安装步骤(挑自己的系统看)
1. Windows 系统(以 Win11 为例)
不管 5.7 还是 8.0,步骤差不多:
- 去官网下载对应版本的 MSI 安装包(记得选 64 位)。
- 双击安装,选 “Server Only” 就够了,别装些用不上的组件。
- 配置时,5.7 默认用旧加密,8.0 可以手动改成旧加密(新手建议改,省得后面连不上)。
- 设个密码,比如 “mysql123”(别太简单,也别太复杂记不住)。
- 安装完,在服务里看看 “MySQL57” 或 “MySQL80” 是不是启动了,没启动就右键 “启动”。
2. Linux 系统(Ubuntu 22.04)
用命令行装最方便:
- 装 5.7:
sudo apt install mysql-server-5.7 - 装 8.0:
sudo apt install mysql-server(默认就是 8.0) - 启动服务:
sudo systemctl start mysql - 设密码:5.7 直接
mysqladmin -u root password "新密码";8.0 得先sudo mysql进去,再ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码';
3. MacOS 系统(Ventura)
推荐用 Homebrew:
- 装 5.7:
brew install mysql@5.7,然后brew services start mysql@5.7 - 装 8.0:
brew install mysql,启动同上 - 第一次登录,5.7 可能不用密码,8.0 得用
mysql_secure_installation设密码
三、服务启动不了?终极解决办法
这是新手最常遇到的问题,别急,一步步排查:
- 端口被占用
MySQL 默认用 3306 端口,要是被别的程序占了,就启动不了。
- Windows:打开 cmd,输
netstat -ano | findstr 3306,看哪个进程占了,任务管理器里结束它。 - Linux/Mac:终端输
lsof -i:3306,找到进程号,kill -9 进程号杀掉。
- 数据目录损坏
这情况多发生在强制关机后。
- 先停服务:Windows 在服务里右键 “停止”;Linux/Mac 输
sudo systemctl stop mysql。 - 找到数据目录(Windows 一般在 “C:\ProgramData\MySQL...”,Linux 在 “/var/lib/mysql”),把里面的 “ib_logfile0” 和 “ib_logfile1” 删掉。
- 重新启动服务,试试能不能起来。
- 权限不够
Linux 和 Mac 容易出现,数据目录没权限。
- 终端输
sudo chown -R mysql:mysql /var/lib/mysql(Linux),或sudo chown -R _mysql:_mysql /usr/local/var/mysql(Mac)。 - 再启动服务,应该就没问题了。
四、自问自答几个关键问题
问:装了 8.0,老工具连不上怎么办?
答:登录 MySQL 后,输
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密码';,改成旧加密方式就行。问:5.7 以后会停更吗?
答:官方说 5.7 支持到 2026 年,现在用还很安全,但新项目建议直接上 8.0,省得以后升级麻烦。
兔子哥的个人建议
要是你是纯新手,先从 5.7 开始练手,出问题网上教程多,容易找到解决办法。等熟悉了,再试试 8.0 的新功能。安装时别图快,每一步看清楚再点,尤其是设密码和选加密方式的时候。
服务启动不了别慌,按上面的步骤排查,90% 的问题都能解决。实在搞不定,卸载干净重新装一次,有时候比死磕更快。我自己刚开始学的时候,光因为端口占用就卡了一下午,后来才发现是之前装的另一个数据库占了 3306,删掉就好了。
希望这篇教程能帮到你,有啥解决不了的,评论区问我,我看到会回的!
标签: mysql-server-5.7 mysql-server
版权声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。
还木有评论哦,快来抢沙发吧~