
MySQL作为开源的关系型数据库管理系统,凭借其高性能、可靠性和易用性,在各类应用场景中占据了重要地位
然而,在某些特定的环境下,如没有网络连接或需要严格控制软件版本的服务器,离线安装MySQL成为了必要之选
本文将详细介绍如何在CentOS操作系统下离线安装MySQL,确保读者能够在无网络环境下顺利完成安装
一、准备工作 离线安装MySQL的首要步骤是准备好所有必要的安装包和依赖项
这些文件通常可以从MySQL的官方网站或其他可信的镜像站点下载
1.下载MySQL安装包 -访问【MySQL官方网站】(https://dev.mysql.com/downloads/mysql/),下载与CentOS版本相匹配的MySQL RPM包
确保下载的是完整的安装包集合,包括server、client、common等组件
- 如果无法直接访问官方网站,可以尝试从可信的镜像站点下载,如华为云、阿里云等提供的镜像
2.下载依赖项 - 根据MySQL安装包的要求,下载所需的依赖项RPM包
这些依赖项可能包括libaio、libaio-devel、openssl、openssl-devel等
- 同样,这些依赖项也可以从CentOS的官方镜像或其他可信的镜像站点下载
3.传输安装包到CentOS服务器 - 使用USB设备、局域网共享或其他外部存储设备将下载的安装包和依赖项传输到目标CentOS服务器
二、卸载旧版MySQL(如有) 在安装新版MySQL之前,如果系统中已存在旧版MySQL,需要先将其卸载,以避免版本冲突或配置错误
1.查找并删除MySQL文件 - 使用`find`命令查找系统中的MySQL文件,并使用`rm`命令删除它们
例如: bash find / -name mysql rm -rf /path/to/mysql 2.删除MySQL配置文件 - 删除旧的MySQL配置文件,如`/etc/my.cnf`
3.删除MySQL用户和组(如有) - 使用`userdel`命令删除MySQL用户,使用`groupdel`命令删除MySQL组
例如: bash userdel mysql groupdel mysql 三、安装MySQL 1.解压安装包 - 将下载的MySQL安装包解压到指定的目录
例如,如果下载的是`.tar.gz`格式的安装包,可以使用`tar`命令解压: bash tar -xzvf mysql-.tar.gz -C /path/to/destination 2.安装MySQL RPM包 - 使用`rpm`命令安装解压后的MySQL RPM包
由于可能存在依赖关系问题,可能需要单独安装一些依赖项RPM包
例如: bash rpm -ivh MySQL-.rpm - 如果遇到依赖关系错误,根据提示安装缺失的依赖项RPM包
3.初始化MySQL数据库 - 在安装MySQL服务器组件后,需要初始化数据库
使用`mysqld --initialize`命令进行初始化,并指定用户和数据目录
例如: bash /usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data -初始化过程会创建必要的系统数据库和权限表,并生成一个临时root密码
四、配置MySQL 1.创建MySQL用户和组 - 为了安全起见,创建一个专门用于运行MySQL服务的用户和组
例如: bash groupadd mysql useradd -r -g mysql -s /bin/false mysql 2.设置目录权限 - 为MySQL安装目录和数据目录设置适当的权限,确保MySQL用户和组能够访问这些目录
例如: bash chown -R mysql:mysql /usr/local/mysql chown -R mysql:mysql /usr/local/mysql/data 3.修改配置文件 - 根据需要修改MySQL配置文件`/etc/my.cnf`
常见的配置项包括端口号、数据目录、socket文件位置等
例如: ini 【mysqld】 port=3306 basedir=/usr/local/mysql datadir=/usr/local/mysql/data socket=/var/lib/mysql/mysql.sock 4.创建socket目录 - 如果配置文件中指定了socket文件位置,需要确保该目录存在并设置适当的权限
例如: bash mkdir -p /var/lib/mysql chown -R mysql:mysql /var/lib/mysql 五、启动和管理MySQL服务 1.创建系统服务文件 - 为了方便管理MySQL服务的启动和停止,可以创建一个系统服务文件
例如,在`/etc/systemd/system/`目录下创建一个名为`mysql.service`的文件,并添加以下内容: ini 【Unit】 Description=MySQL Community Server After=network.target 【Service】 User=mysql Group=mysql ExecStart=/usr/local/mysql/bin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid ExecStop=/usr/local/mysql/bin/mysqladmin shutdown Restart=on-failure 【Install】 WantedBy=multi-user.target 2.重新加载系统服务 - 在创建或修改系统服务文件后,需要重新加载系统服务配置
例如: bash systemctl daemon-reload 3.启动MySQL服务 - 使用`systemctl`命令启动MySQL服务
例如: bash systemctl start mysql 4.设置MySQL开机自启动 - 为了确保MySQL在系统启动时自动启动,可以使用`systemctl enable`命令
例如: bash systemctl enable mysql 六、安全配置 1.设置root密码 - 在首次登录MySQL后,使用`ALTER USER`语句设置root密码
例如: sql ALTER USER root@localhost IDENTIFIED BY new_password; 2.运行安全配置脚本 - MySQL提供了一个安全配置脚本`mysql_secure_insta
MySQL索引:加速查询,提升性能利器
CentOS系统下MySQL离线安装全攻略
MySQL索引优化:NotNull约束的重要性与应用
西部数据MySQL配置文件详解:优化性能,提升数据库运行效率
MySQL表解锁技巧大揭秘
解决mysql5.7缺失my.ini配置文件的困扰
MySQL技巧:单行数据转多行秘籍
MySQL索引:加速查询,提升性能利器
MySQL索引优化:NotNull约束的重要性与应用
西部数据MySQL配置文件详解:优化性能,提升数据库运行效率
MySQL表解锁技巧大揭秘
解决mysql5.7缺失my.ini配置文件的困扰
MySQL技巧:单行数据转多行秘籍
先删Redis还是MySQL?数据清理顺序解析
MySQL SQL排名函数:轻松实现数据排名操作
如何高效地在MySQL中删除表内所有数据:操作步骤详解
MySQL分区技术深度识别指南
MySQL外键约束设置教程,保障数据一致性
Python脚本助力卸载MySQL教程