centos7 mysql压缩包安装教程

2026-10-15 11:34:57

下载与解压安装包

先去官网下载对应系统的通用版压缩包,推荐选择mysql80或者mysql57的版本。下载完成后,直接使用wget命令把文件拉到服务器,或者用sftp工具传到/tmp目录。拿到文件后执行解压命令,把压缩包释放出来。为了方便后续维护,把解压出来的长文件夹名重命名为mysql,然后整体移动到/usr/local目录下。这个路径是惯例做法,环境变量和脚本都能顺畅识别。移动过程中如果遇到权限拒绝,记得在命令前加sudo提权操作。整个过程不需要复杂的编译,纯解压即可进入下一步。

创建专用用户与目录权限

数据库服务绝对不能以root身份直接运行,这会带来严重的安全隐患。先通过adduser命令创建一个名为mysql的系统账户,并且禁止它登录终端。接着手动创建三个核心目录,分别是存放数据的data文件夹、存放慢查询日志的logs文件夹,以及存放进程pid文件的run文件夹。创建完毕后,用chown命令把这三个目录连同mysql整个主目录的所有权全部划归mysql用户,属组也一并修改。权限数值设为750,保证只有所有者和同组用户有读写执行权限。这一步做扎实了,后面启动时能避开绝大多数报错。

编写核心配置文件

在etc目录下新建mycnf文件,写入基础参数。客户端与服务端默认字符集统一配置为utf8mb4,这样可以完整支持中文繁体以及各类特殊符号。数据目录指向usrlocalmysqldata,socket通信文件放在varlibmysqlmysqlsock。日志文件路径设定为usrlocalmysqllogsmysqlslowquerylog。端口沿用标准的三千三百零六。如果机器内存较小,需要在配置末尾追加innodbbufferpoolsize参数,通常分配物理内存的一半即可,避免内存溢出导致服务崩溃。保存文件时注意不要有多余的空格或换行符,否则解析会失败。

初始化数据库实例

切换至mysql用户的bin目录,执行mysqld命令进行初始化。加上defaultsfile参数指向刚才写的配置文件,指定datadir数据目录,并设置default_authentication_plugin为mysqlnativepassword,这能大幅提升老旧客户端的连接成功率。执行完毕后,屏幕会滚动输出大量日志,最后一定会打印出一行包含临时密码的提示。务必第一时间复制保存,这是root账号首次登录的唯一凭证。初始化耗时视硬盘速度而定,看到successfully字样且无红色报错即表示底层数据结构已搭建完成。

启动服务与重置密码

使用systemctl命令启动mysql服务,并通过enable参数将其加入开机自启列表。服务跑起来后,用临时密码登录数据库命令行。进入系统后首要任务是修改密码,利用alteruser语句将新密码替换掉旧凭证。修改完成后必须执行flushprivileges命令使权限表生效。如果密码校验策略过于严格导致修改失败,可以在配置文件中关闭validatepassword组件,重启服务后即可自由设置简单密码。密码改好后,可以尝试建个测试库验证功能是否正常。

配置远程访问与防火墙

默认安装的数据库仅允许本地回环地址连接,外部管理软件无法直连。登录数据库后切换至mysql系统库,查询user表中的host字段。将原本限制为localhost的记录修改为百分号,代表放行所有网络请求。同步更新对应的密码哈希值,确保认证插件匹配。退出数据库后,需在操作系统层面放行端口。使用firewallcmd命令开放三千三百零六端口,并设置永久生效。若使用的是云服务器,还需登录控制台添加安全组入站规则,放行tcp协议的该端口段。配置无误后,即可使用图形化客户端进行远程管理。

日常排查与维护技巧

运行过程中难免遇到突发状况。若服务频繁重启或启动失败,优先查看varlogmessages和journalctl的输出记录,重点定位缺少的动态链接库或被占用的端口。端口冲突时直接用netstat抓包查看,杀掉残留进程即可恢复。忘记密码的情况下,可在配置文件中添加skipgranttables参数,以免密模式启动后手动更新密码表,恢复参数后重新拉起即可。压缩包安装的优势在于环境纯净,不包含多余的依赖项,非常适合生产环境的标准化部署。严格按照流程操作,基本不会踩坑。

相关文章