Linux系统下二进制方式安装MySQL指南

linux安装二进制mysql

时间:2025-07-11 10:25


Linux安装二进制MySQL的详细指南 在Linux环境下安装MySQL数据库,尤其是通过二进制包进行安装,是一个既灵活又高效的选择

    本文将详细介绍如何在Linux系统中,从下载二进制包开始,逐步完成MySQL的安装、配置和启动

    无论你是系统管理员还是数据库开发者,本文都将为你提供一个全面、详细的操作指南

     一、为什么选择二进制包安装MySQL? 二进制包是经过源码编译后,解压即可用的安装包

    相比于RPM包和源码包,官方更推荐在生产环境中使用二进制包安装MySQL,原因如下: 1.安装路径可控:使用二进制包安装,你可以自由选择安装路径,避免了与系统其他组件的潜在冲突

     2.安装过程简单:相比于源码包,二进制包安装省去了编译步骤,大大简化了安装流程

     3.功能性与性能优势:二进制包通常经过官方优化,提供了最佳的功能性和性能表现

     4.安全性:官方提供的二进制包经过严格的安全测试,确保了安装过程的安全性

     二、系统环境准备 在安装MySQL之前,你需要对系统环境进行一些准备工作

     1.查看系统架构类型: 使用`uname -m`命令查看系统架构类型

    例如,你可能会得到`x86_64`这样的输出,表示你的系统是64位架构

     2.查看glibc版本: 使用`ldd --version | grep libc`命令查看glibc版本

    glibc是GNU C Library的缩写,是Linux系统中的一个基础库

    确保你的glibc版本与MySQL二进制包兼容

     3.检查并卸载已安装的MySQL或MariaDB: 使用`rpm -qa | grep mysql`和`rpm -qa | grep mariadb`命令检查系统中是否已安装MySQL或MariaDB

    如果已安装,你需要卸载它们,以避免与新安装的MySQL产生冲突

    使用`rpm -e <软件包名`命令卸载软件包,如果需要强制卸载,可以使用`rpm -e --nodeps <软件包名`命令

     三、下载并安装MySQL二进制包 1.下载MySQL二进制包: 访问MySQL官方网站(如【MySQL下载页面】(https://downloads.mysql.com/archives/community/))下载合适的二进制安装包

    根据你的系统架构和glibc版本选择合适的安装包

    例如,你可能会下载一个名为`mysql-8.4.3-linux-glibc2.28-x86_64.tar.xz`的安装包

     2.上传并解压安装包: 将下载的安装包上传到服务器上的某个目录,例如`/opt`目录

    然后使用`tar`命令解压安装包,并可选地对解压后的目录进行重命名

    例如: bash cd /opt tar -xvJf mysql-8.4.3-linux-glibc2.28-x86_64.tar.xz mv mysql-8.4.3-linux-glibc2.28-x86_64 mysql-8.4.3 四、配置MySQL 1.创建数据目录和日志目录: 创建一个专门用于存放MySQL数据和日志的目录

    例如,你可以创建`/data/mysql/data`作为数据目录,创建`/data/mysql/log`作为日志目录

     2.添加my.cnf配置文件: 在`/etc`目录下添加MySQL的配置文件`my.cnf`

    配置文件的内容如下: ini 【mysqld】 user=root port=13306 basedir=/opt/mysql-8.4.3 datadir=/data/mysql/data max_connect_errors=10 character-set-server=utf8mb4 default-storage-engine=INNODB general_log =1 general_log_file = /data/mysql/log/mysql.log slow_query_log =1 slow_query_log_file = /data/mysql/log/slow.log long_query_time =2 log_error = /data/mysql/log/error.log server_id =1 log_bin = /data/mysql/log/mysql-bin log_bin_index=/data/mysql/log/mysql-bin.index binlog_format=MIXED binlog_expire_logs_seconds =604800 max_binlog_size=500M 【mysql】 default-character-set=utf8mb4 【client】 default-character-set=utf8mb4 这个配置文件包含了MySQL服务器的基本设置,如启动用户、端口号、安装目录、数据目录、字符集等

    同时,还配置了查询日志、慢查询日志、错误日志以及二进制日志等

     3.初始化数据库: 执行MySQL bin目录下的`mysqld`文件,初始化数据库

    使用以下命令: bash cd /opt/mysql-8.4.3/bin ./mysqld --initialize --user=root --basedir=/opt/mysql-8.4.3 --datadir=/data/mysql/data 初始化成功后,你可以在初始化日志中获取临时密码

    如果终端没有输出日志,你可以在配置文件中指定的错误日志文件中查找

     4.启动MySQL服务: 执行MySQL support-files目录下的`mysql.server`脚本,启动数据库服务

    使用以下命令: bash cd /opt/mysql-8.4.3/support-files ./mysql.server start 你也可以使用`./mysql.server stop`命令停止数据库服务,使用`./mysql.server`命令查看支持的参数

     五、配置环境变量并优化启动方式 1.添加MySQL bin目录到全局环境变量: 编辑`/etc/profile`文件,在文件最后添加以下语句: bash export PATH=$PATH:/opt/mysql-8.4.3/bin 然后执行`source /etc/profile`命令使配置立即生效

     2.将mysql.server脚本拷贝到/etc/init.d目录下: 为了方便使用`systemctl`命令启动和停止MySQL服务,你可以将`mysql.server`脚本拷贝到`/etc/init.d`目录下

    但是请注意,这种方式可能需要重启服务器才能使`systemctl`识别新的服务

    使用以下命令: bash cp /opt/mysql-8.4.3/support-files/mysql.server /etc/init.d/ systemctl start mysql systemctl stop mysql 如果在拷贝脚本后无法直接使用`systemctl`命令启动服务,你可以尝试重启服务器或者创建systemd服务配置文件来解决问题

     六、登录MySQL并修改密码 1.登录MySQL: 使用`mysql -uroot -p`命令登录MySQL服务,然后输入初始化时生成的临时密码

     2.修改root密码: 登录成功后,你可以使用以下SQL语句修改root密码: sql ALTER USER root@localhost IDENTIFIED BY 新密码; 3.允许远程登录(可选): 如果你需要允许root用户从远程登录MySQL,你可以使用以下SQL语句更新用户表中的host字段: sql USE mysql; UPDATE user SET host=% WHERE user=root; FLUSH PRIVILEGES; 这样设置后,root用户就可以从任何IP地址登录MySQL了

    但是请注意,出于安全考虑,生产环境中通常不建议这样做

    你可以根据需要为特定的IP地址或用户授予远程访问权限

     七、其他注意事项 1.防火墙设置: 确保你的防火墙允许MySQL服务的端口(默认是3306,但你在配置文件中可能已更改为其他端口)进行通信

    如果你使用的是`firewalld`服务,你可以使用以下命令开放端口: bash firewall-cmd --zone=public --add-port=13306/tcp --permanent firewall-cmd --reload 2.备份与恢复: 定期备份MySQL数