一、前言
MySQL 8是一款高性能的关系型数据库管理系统,广泛用于各种Web应用程序和企业级解决方案。它具有强大的事务支持、JSON数据类型、窗口函数、全文搜索和安全性增强等特性,使其成为数据存储和管理的理想选择。MySQL 8还提供了自动化管理功能,简化了数据库部署和维护过程。本篇博客主要讲述MySQL8.0.32在CentOS7下以压缩包方式离线安装的教程。
二、安装前准备
2.1 安装包下载
-
安装包建议到官网下载安装包,官网地址:MySQL官网
-
进入官网后点击DOWNLOADS → MySQL Community (GPL) Downloads → MySQL Community Server
-
这里选择Red Hat Enterprise Linux/ Oracle Linux、Red Hat Enterprise Linux7/ Oracle Linux 7(x86,64-bit),安装包选择:Compressed TAR Archive
2.2 检查
-
gcc,g++环境检查
Linux中输入:gcc -v g++ -v
如果能显示版本信息,说明gcc和g++的环境没有问题,否则需要安装
-
旧版MySQL检查
Linux中输入:find / -name mysql rm -rf 上面查到的路径 #或者使用下面的命令 find / -name msyql|xargs rm -rf
rpm -qa | grep mysql rpm -qa | grep mariadb #如果查到内容,使用下面的命令将其删除 rpm -e --nodeps 文件名
三、安装步骤
-
创建MySQL目录
创建安装目录:mkdir -p /data/mysql/
-
创建用户组和用户
groupadd mysql && useradd -r -g mysql mysql
-
将压缩包解压到 /data/mysql/下,并重命名
tar -zxvf mysql-8.0.32-el7-x86_64.tar.gz mv mysql-8.0.32-el7-x86_64 mysql-8.0.32
-
在/data/mysql/mysql-8.0.32 目录下创建data目录
mkdir -p /data/mysql/mysql-8.0.32/data/
-
在/data/mysql/mysql-8.0.32/support-files/目录下创建my_default.cnf配置文件
[mysqld] #设置mysql的安装目录 basedir=/data/mysql/mysql-8.0.32 #设置mysql数据库的数据存放目录 datadir=/data/mysql//mysql-8.0.32/data #设置mysql日志存放目录 log-error=/data/mysql/mysql-8.0.32/data/mysqld.log socket=/tmp/mysql.sock pid-file=/data/mysql/mysql-8.0.32/mysqld.pid #设置大小写不敏感 lower_case_table_names=1
-
执行以下命令,如果有my.cnf则覆盖
cp /data/mysql/mysql-8.0.32/support-files/my_default.cnf /etc/my.cnf
-
将mysql目录 /data/mysql/mysql-8.0.32 授权mysql用户
chown -R mysql:mysql /data/mysql/mysql-8.0.32
-
执行初始化命令
cd /data/mysql/mysql-8.0.32/bin ./mysqld --initialize --user=mysql --console
-
进入日志文件目录查看临时密码
cd /data/mysql/mysql-8.0.32/data cat mysqld.log
-
把启动脚本放到开机初始化目录,然后就可以使用service mysql start 命令启动了
cp /data/mysql/mysql-8.0.32/support-files/mysql.server /etc/init.d/mysql
-
将mysql登录命令创建软链接, 然后就可以直接使用mysql -uroot -p 命令登录MySQL了
ln -s /data/mysql/mysql-8.0.32/bin/mysql/ /usr/bin/
-
启动mysql,如果出现SUCCESS!字样则表示启动成功
service mysql start
-
登录MySQL修改root用户默认密码并添加远程访问
登录MySQL:msyql -uroot -p 修改密码:alter user 'root'@'localhost' identified by 'mysql@2023'; flush privileges; 选择数据库:use mysql; 修改mysql可被远程连接:update user set host='%' where user='root'; flush privileges;
-
退出MySQL然后重启MySQL服务使修改的内容生效
exit; service mysql restart
-
用Navicat或其他客户端工具连接MySQL,如图所示,大功告成!!!
四、遇到问题总结
-
注意:MYSQL8以后,修改配置是无效的,如果缺少配置项,只能删除data目录,然后重新初始化
-
如果初始化时提示该错误 :./mysqld: error while loading shared libraries: libnuma.so.1: cannot open shared object file: No such file or directory,执行以下命令:
yum install -y libaio yum -y install numactl
至此,Linux安装MySQL的教程就到这里了,希望能帮助到大家!