
本文将详细介绍如何在 CentOS7 上解压安装 MySQL5.7 版本,确保每一步都清晰明了,让您轻松完成安装与配置
一、准备工作 在进行 MySQL 解压安装之前,我们需要做一些准备工作,以确保安装过程顺利进行
1.卸载系统自带的 MariaDB CentOS 系统默认安装了 MariaDB,这是 MySQL 的一个分支
为了避免冲突,我们需要先卸载 MariaDB
打开终端,执行以下命令来查找并卸载 MariaDB: bash yum list installed | grep mariadb 找到已安装的 MariaDB 包(通常是 mariadb-libs),然后执行卸载命令: bash yum remove mariadb-libs.x86_64 2.删除配置文件 如果系统中存在 MariaDB 或 MySQL 的配置文件(如 /etc/my.cnf),最好也将其删除,以免干扰新安装的 MySQL 配置
bash rm -rf /etc/my.cnf 3.检查 MySQL 是否存在 在安装新 MySQL 之前,检查系统中是否已存在 MySQL 服务或相关文件,如果有,则进行清理
bash rpm -qa | grep mysql 如果找到 MySQL相关的包,使用以下命令卸载: bash rpm -e --nodeps【mysql-package-name】 然后删除 MySQL 的相关目录: bash rm -rf /usr/local/mysql/ 二、下载并解压 MySQL 1.下载 MySQL 解压版安装包 访问 MySQL官方网站(【MySQL Download Page】(https://dev.mysql.com/downloads/mysql/)),选择适合 CentOS 的 MySQL5.7 版本安装包
推荐下载`.tar.gz`格式的解压版安装包
例如,mysql-5.7.33-linux-glibc2.12-x86_64.tar.gz
2.上传安装包到服务器 在 CentOS服务器上创建一个上传目录,例如 /opt/tools,然后将下载好的 MySQL 安装包上传到该目录
bash mkdir /opt/tools 使用 scp 或 sftp 等工具将安装包上传到 /opt/tools 目录
3.解压安装包 进入 /opt/tools 目录,执行解压命令: bash cd /opt/tools tar -zxvf mysql-5.7.33-linux-glibc2.12-x86_64.tar.gz 解压后,将解压目录重命名为 mysql,并移动到 /usr/local/目录下: bash mv mysql-5.7.33-linux-glibc2.12-x86_64 /usr/local/mysql cd /usr/local/mysql 三、创建用户组和用户 为了安全起见,我们需要为 MySQL创建一个专用的用户组和用户
1.创建 MySQL 用户组 bash groupadd mysql 2.创建 MySQL 用户,并将其添加到 mysql 组 bash useradd -r -g mysql mysql 3.更改 MySQL 目录的所属组和用户 bash chgrp -R mysql . chown -R mysql . 四、创建数据目录和日志目录 为了方便管理,我们创建专门的数据目录和日志目录来存放 MySQL 的数据和日志文件
1.创建数据目录和日志目录 bash mkdir /data/mysql/data mkdir /data/mysql/log 2.更改数据目录和日志目录的所属组和用户 bash chown -R mysql:mysql /data/mysql/data chown -R mysql:mysql /data/mysql/log 五、初始化 MySQL 在进入 MySQL 的 bin 目录后,执行初始化命令
注意,初始化过程中会生成 root用户的临时密码,请务必记录下来
1.进入 bin 目录 bash cd /usr/local/mysql/bin 2.执行初始化命令 bash ./mysqld --initialize --user=mysql --basedir=/usr/local/mysql/ --datadir=/data/mysql/data/ --lc_messages_dir=/usr/local/mysql/share --lc_messages=en_US 初始化完成后,输出信息的最后一行会显示 root用户的临时密码,请复制并保存
六、配置 MySQL 为了更好地管理 MySQL,我们需要创建并配置 my.cnf 文件
1.创建 my.cnf 文件 bash vi /etc/my.cnf 2.编辑 my.cnf 文件 在 my.cnf文件中添加以下内容: ini 【mysql】 设置mysql客户端默认字符集 default-character-set=utf8 【mysqld】 禁用dns解析 skip-name-resolve 设置端口 port=3306 设置mysql的安装目录 basedir=/usr/local/mysql 设置mysql数据库的数据的存放目录 datadir=/data/mysql/data 允许最大连接数 max_connections=200 允许连接失败的次数 max_connect_errors=10 服务端使用的字符集默认为8比特编码的latin1字符集 character-set-server=utf8 创建新表时将使用的默认存储引擎 default-storage-engine=INNODB 默认使用“mysql_native_password”插件认证 default_authentication_plugin=mysql_native_password 设置服务器接收数据包大小 max_allowed_packet=64M 配置错误日志 log_error=/data/mysql/log/mysql-error.log 配置进程文件 pid-file=/data/mysql/mysql.pid 使MySQL不区分大小写 lower_case_table_names=1 保存并退出编辑器
七、设置 MySQL 服务并开机自启 为了方便管理 MySQL 服务,我们需要将其添加到系统服务中,并设置开机自启
1.复制 MySQL 服务脚本到系统服务目录 bash cp -a /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql 2.授予可执行权限 bash chmod +x /etc/init.d/mysql 3.添加 MySQL 服务到 chkconfig bash chkconfig --add mysql 4.设置 MySQL 开机自启 bash chkconfig --level345 mysql on 5.创建 MySQL bin 目录的同步链接 为了方便在终端中直接执行 MySQL 命令,我们可以创建一个同步链接: bash ln -s /usr/local/mysql/bin/mysql /usr/bin 八、启动 MySQL 服务 现在,我们可以启动 MySQL 服务,并检查其运行状态
1.启动 MySQL 服务 bash service mysql start 2.检查 MySQL 服务状态 bash service mysql status 九、登录 MySQL 并修改 root 密码 1.查看临时密码 在 MySQL 的错误日志文件中,可以找到 root用户的临时密码
bash cat /data/mysql/log/mysql-error.log 在日志文件中搜索 temporary password,找到并复制临时密码
2.登录 MySQL 使用临时密码登录 MySQL: bash mysql -uroot -p 粘贴临时密码并按回车
3.修改 root 密码 登录后,执行以下命令修改 root 密码: sql ALTER USER root@localhost IDENTIFIED WITH mysql_native_password BY new_password; FLUSH PRIVILEGES; 将`new_password`替换为您希望设置的新密码
十、配置远程访问(可选) 如果需要从远程访问 MySQL 数据库,可以执行以下步骤来配置远程访问权限
1.登录 MySQL 使用新密码登录 MySQL
bash mysql -uroot -p 2.修改 root 用户的 host 字段 sql USE mysql; UPDATE user SET host = % WHERE user = root; FLUSH PRIVILEGES; 3.检查并开放防火墙端口
MySQL错误代码<878>解析:排查与解决方案指南
CentOS系统MySQL解压安装全攻略
C语言实现MySQL数据库链接指南
如何卸载MySQL压缩包教程
MySQL:县排序后进行数据分组技巧
MySQL存储量临界点:何时影响性能?
JS操作MySQL:数据类型详解
MySQL错误代码<878>解析:排查与解决方案指南
C语言实现MySQL数据库链接指南
如何卸载MySQL压缩包教程
MySQL:县排序后进行数据分组技巧
MySQL存储量临界点:何时影响性能?
JS操作MySQL:数据类型详解
MySQL列名注记:优化数据库管理,提升查询效率的技巧
MySQL:每类型精选一条数据技巧
MySQL数据误删?快速找回指南
MySQL分表数据总量高效统计
MySQL中最大数字类型详解
MySQL文件存储机制揭秘