通过 TAR 包安装 MySQL8提供了高度的灵活性和自定义选项
本文将详细介绍如何在 CentOS7 上通过 TAR 包安装 MySQL8,确保每个步骤都清晰明了,帮助你顺利完成安装
一、安装前准备 在安装 MySQL8 之前,你需要进行一些必要的准备工作,以确保安装过程顺利进行
1.卸载 MariaDB CentOS7 默认安装了 MariaDB,这是 MySQL 的一个分支
在安装 MySQL8 之前,你需要先卸载 MariaDB
打开终端,输入以下命令来检查是否安装了 MariaDB: bash rpm -qa | grep mariadb 如果系统返回了 MariaDB 的相关包信息,那么你需要卸载它们
使用以下命令卸载 MariaDB: bash rpm -e --nodeps mariadb-libs rpm -e --nodeps mariadb-devel 再次运行检查命令,确保 MariaDB已被完全卸载
2.检查并安装依赖 MySQL8 需要一些依赖包才能正常运行
在安装 MySQL 之前,你需要确保这些依赖包已经安装
检查并安装`libaio`: bash rpm -qa | grep libaio 如果未安装,则执行: bash yum -y install libaio 此外,根据某些安装需求,你可能还需要安装`numactl`: bash rpm -qa | grep numactl 如果未安装,则执行: bash yum -y install numactl 二、下载和解压 MySQL8 TAR 包 1.下载 MySQL 8 TAR 包 访问 MySQL官网的下载页面(【https://dev.mysql.com/downloads/mysql/】(https://dev.mysql.com/downloads/mysql/)),选择适合你 CentOS7 系统架构的 MySQL8 二进制版本
下载完成后,将 TAR 包上传到 CentOS7 服务器的指定目录,例如`/usr/local/`
2.解压 MySQL 8 TAR 包 使用`tar` 命令解压下载的 TAR 包
假设你下载的包名为`mysql-8.0.xx-el7-x86_64.tar.gz`,解压命令如下: bash cd /usr/local/ tar -zxvf mysql-8.0.xx-el7-x86_64.tar.gz 解压完成后,你会看到一个名为`mysql-8.0.xx-el7-x86_64` 的目录
三、安装和配置 MySQL8 1.重命名并移动目录 为了方便管理和配置,你可以将解压后的目录重命名为`mysql`,并将其移动到`/usr/local/`目录下(如果尚未在那里的话)
bash mv mysql-8.0.xx-el7-x86_64 /usr/local/mysql 2.创建数据存储目录 MySQL 需要一个专门的目录来存储数据库文件
你可以在`/usr/local/mysql/`目录下创建一个名为`mysqldb` 的目录作为数据存储目录
bash mkdir /usr/local/mysql/mysqldb 3.设置用户和权限 为了安全起见,你需要为 MySQL创建一个专门的用户和组,并设置相应的权限
创建`mysql` 组: bash groupadd mysql 创建`mysql` 用户,并将其添加到`mysql` 组中: bash useradd -r -g mysql -s /bin/false mysql 更改 MySQL 目录的属主和组为`mysql`: bash chown -R mysql:mysql /usr/local/mysql 设置 MySQL 目录的权限,以确保 MySQL 能够正常访问和操作这些文件
通常,你可以将权限设置为`755` 或`777`(出于安全考虑,建议使用`755`): bash chmod -R755 /usr/local/mysql 4.初始化 MySQL 在进入 MySQL 的`bin` 目录后,你可以使用`mysqld --initialize` 命令来初始化数据库
这个步骤会生成一个临时的 root 密码,你需要记下这个密码,以便在后续步骤中使用
bash cd /usr/local/mysql/bin ./mysqld --initialize --user=mysql --datadir=/usr/local/mysql/mysqldb --basedir=/usr/local/mysql 初始化完成后,你会在终端输出中看到一个类似于`root@localhost: xxxxxx` 的临时密码
记下这个密码
5.配置 MySQL 创建并编辑 MySQL 的配置文件`my.cnf`
你可以将配置文件放在`/etc/`目录下,或者放在 MySQL 的安装目录下
这里以`/etc/my.cnf` 为例
bash vi /etc/my.cnf 在配置文件中,你需要添加一些基本的配置参数,例如端口号、安装目录、数据目录等
以下是一个示例配置文件: ini 【mysqld】 port=3306 basedir=/usr/local/mysql datadir=/usr/local/mysql/mysqldb socket=/usr/local/mysql/mysqldb/mysql.sock character-set-server=utf8mb4 collation-server=utf8mb4_unicode_ci 【mysql】 default-character-set=utf8mb4 【client】 port=3306 default-character-set=utf8mb4 socket=/usr/local/mysql/mysqldb/mysql.sock 根据你的实际需求,你可以调整这些配置参数
四、启动和管理 MySQL 服务 1.启动 MySQL 服务 你可以使用 MySQL提供的`mysql.server` 脚本来启动 MySQL 服务
bash /usr/local/mysql/support-files/mysql.server start 或者,你可以将 MySQL 服务添加到系统的服务列表中,并使用`systemctl` 命令来管理它
这需要将`mysql.server`脚本复制到`/etc/init.d/`目录下,并为其创建一个符号链接
bash cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld chkconfig --add mysqld chkconfig --level345 mysqld on service mysqld start 2.设置开机自启动 如果你希望 MySQL 在系统启动时自动启动,你可以按照上一步中的说明将 MySQL 服务添加到系统的服务列表中,并设置其开机自启动
3.管理 MySQL 服务 使用`systemctl` 或`service` 命令来管理 MySQL 服务
例如,停止 MySQL 服务: bash service mysqld stop 或者 systemctl stop mysqld 重启 MySQL 服务: bash service mysqld restart 或者 systemctl restart mysqld 查看 MySQL 服务状态: bash service mysqld status 或者 systemctl status mysqld 五、修改 root 密码和开放远程连接 1.修改 root 密码 在首次登录 MySQL 后,你需要使用初始化时生成的临时密码来修改 root用户的密码
登录 MySQL: bash mysql -u root -p 输入临时密码后,执行以下命令来修改密码: sql ALTER USER root@localhost IDENTIFIED BY 新密码; FLUSH PRIVILEGES; 请注意,MySQL8 对密码策略有严格要求,新密码必须包含大小写字母、数字和特殊