蛙扑下载站:安全、绿色、放心的专业下载站! 首页|最近更新|专题集合|站内导航

MySQL 8.0.20在Linux系统下的完整安装配置指南

时间:2026-10-07 13:07:28 来源:www.vaopo.com 人气:人

很多开发者在Linux环境下部署新项目时,都会选择MySQL作为核心数据库。虽然现在云数据库很流行,但自己手动搭建本地或云服务器环境依然能带来更高的可控性和学习价值。本文以CentOS 7和Ubuntu 20.04为例,详细讲解如何从零开始安装并配置MySQL 8.0.20版本,全程避开常见坑点,确保你一次成功。

第一步:准备安装包与环境检查

在安装之前,先确认你的Linux系统已经关闭了防火墙或者开放了相关端口,同时检查是否已安装过旧版MySQL。如果存在冲突文件,建议先彻底卸载干净。打开终端,输入命令查看当前系统版本和依赖库情况。MySQL 8.0.20对系统的glibc和libaio库有明确要求,大多数主流发行版默认都自带这些组件,无需额外折腾。接下来去官网下载页面找到对应的通用二进制包,通常选择tar.gz格式的压缩包最为稳定,解压速度快且不会自动覆盖系统配置。

第二步:解压与目录权限分配

将下载好的压缩包上传到服务器根目录的opt文件夹下,执行解压命令。解压完成后你会得到一个mysql目录,里面包含bin、data、log等子文件夹。为了安全起见,千万不要直接用root用户运行数据库服务。我们需要新建一个专门的管理账户,比如叫mysqladmin,然后把这个账户设为mysql目录的所有者。执行chown和chmod命令调整读写权限,这样后续启动服务时就不会因为权限不足而报错,也能有效防止误操作导致的核心文件丢失。

第三步:编写基础配置文件

MySQL启动时需要读取配置文件,默认路径通常在etc/my.cnf。如果没有现成的,我们可以手动创建一个。打开文本编辑器,写入基础的参数设置。重点要配置的是basedir指向解压后的mysql主目录,datadir指向新建的data文件夹,port保持默认的三十三零六。另外,八零版本默认采用caching_sha2_password认证插件,如果你的客户端连接工具比较老,建议在配置末尾加上default_authentication_plugin=mysql_native_password,这样能避免大量远程连接失败的问题。保存退出后检查一下语法是否正确。

第四步:初始化数据目录与生成临时密码

这是最关键的一步。切换到mysql管理账户,进入bin目录,执行初始化命令。注意一定要带上initialize-insecure参数,这样初始密码会直接留空,方便我们后续自行设置强密码。执行完毕后,系统会在data目录下生成一系列系统表文件和日志。终端最后几行通常会打印出一串随机生成的临时密码,务必立刻复制保存到记事本里。如果不小心关掉了窗口,可以删除data目录重新初始化,但不要跳过这一步,否则服务根本无法拉起。

第五步:注册服务并启动数据库

为了让MySQL开机自启并且能用systemctl统一管理,需要把启动脚本复制到init.d或systemd目录下。执行copy命令将mysql.server文件放到指定位置,然后赋予执行权限。接着刷新系统服务列表,用start命令拉起数据库。启动成功后,立即用客户端尝试连接。此时应该会让你输入刚才保存的临时密码,登录进去后系统会强制要求修改新密码。按照提示设置一个包含大小写和数字的复杂密码,刷新权限表,之后就能正常使用了。

第六步:配置远程访问与优化建议

默认情况下MySQL只允许本机连接,外部工具根本连不上。我们需要进入数据库控制台,切换到底层mysql库,更新user表里的host字段为百分号,代表允许任意IP访问。执行完flush privileges语句后,记得去云服务器的安全组或者本地iptables里放行三十三零六端口。测试阶段建议暂时关闭selinux,避免它拦截网络请求。日常维护中,定期备份data目录和慢查询日志是保住数据资产的最佳习惯。遇到连接超时或者内存溢出,优先检查配置文件里的innodb_buffer_pool_size参数,将其设置为物理内存的百分之七十左右即可满足绝大多数业务场景。