环境准备与依赖检查
在开始安装之前,首先要确认你的Linux服务器运行正常。推荐使用CentOS 7或Ubuntu 16.04及以上版本,这两个系统的兼容性最好。安装前务必检查系统中是否已经存在旧版本的MySQL或MariaDB。如果存在,请先通过命令停止相关服务并彻底卸载,避免端口冲突和文件覆盖。同时,需要确保系统安装了必要的底层依赖库,主要是libaio和net-tools。执行yum install libaio net-tools或者apt-get install libaio net-tools即可完成安装。这些库是MySQL读写磁盘和网络通信的基础,缺少它们会导致后续初始化失败。
获取安装包并上传服务器
MySQL 5.7.13属于经典稳定版,官方虽然已下线部分旧链接,但你依然可以通过官网归档页面或可信的镜像站下载通用二进制包。建议下载文件名包含glibc的tar.gz压缩包,例如mysql-5.7.13-linux-glibc2.12-x86_64.tar.gz。下载完成后,使用scp命令将文件传输到服务器的临时目录下。上传结束后,进入该目录执行md5sum校验命令,确保文件传输过程中没有损坏。如果校验值与官网提供的哈希值一致,说明安装包完好无损,可以放心进行下一步操作。
创建专用用户与规范目录结构
为了系统安全,强烈不建议直接使用root用户运行数据库服务。我们需要创建一个专用的mysql用户和组。执行groupadd mysql和useradd -r -g mysql mysql命令即可。接着规划好数据存放位置,通常在opt目录下建立data、logs和tmp三个子目录。将所有目录的所有权赋给mysql用户,权限设置为750。规范的目录划分不仅能方便后续的数据备份和日志轮转,还能在遇到空间不足时快速调整挂载策略,提升运维效率。
解压文件与编写核心配置文件
使用tar zxvf命令将下载的压缩包解压到opt/mysql目录中,并将主程序目录重命名为mysql。接下来是配置my.cnf文件的位置通常在etc下。你需要手动创建该文件,并在其中定义基础路径。关键参数包括basedir指向mysql主目录,datadir指向刚才创建的data目录,port保持默认的3306。字符集务必设置为utf8mb4以支持完整的emoji表情和多语言。同时调整sql_mode参数以适应不同客户端的连接需求。保存文件后,记得将所有者改为mysql,防止启动时因权限问题报错。
初始化数据库并开启自启服务
配置文件就绪后,进入mysql的bin目录执行mysqld命令进行初始化。加上initialize-insecure参数可以让root账户初始密码为空,方便首次登录调试。指定user为mysql,datadir指向正确路径。初始化过程会生成系统表空间,控制台会打印出相关信息,请留意是否有error字样。初始化成功后,使用systemctl命令将mysql加入开机自启列表,并立即启动服务。通过systemctl status mysql查看状态,显示active running且无报错即为成功。
安全加固与远程连接配置
服务跑起来后,第一步就是修改默认密码。直接输入mysql命令进入交互界面,执行alter user命令设置新的强密码。出于安全考虑,root账户默认只能从本地登录。如果需要其他机器远程管理数据库,需要新建一个允许任意IP访问的用户账号,或者修改root的host字段为通配符。执行grant授权语句后一定要刷新权限表。最后别忘了在服务器防火墙中放行3306端口,如果使用云主机,还需在安全组规则中添加对应条目,否则外网客户端始终无法建立连接。
日常维护与故障排查要点
安装完成不代表一劳永逸。数据库运行一段时间后,建议定期检查错误日志,位置通常在data目录下的主机名err文件中。如果发现连接数爆满或查询缓慢,可以通过show processlist命令查看当前活跃会话。定期清理慢查询日志也是优化性能的关键步骤。当遇到服务无法启动时,优先检查端口是否被占用,以及data目录的属主是否正确。大部分启动失败都源于权限错乱或配置语法错误。养成每次修改配置后重启验证的习惯,能大幅减少线上故障的发生概率。



