CentOS 7 安装 MySQL 8

CentOS 7 安装 MySQL 8

一、安装包下载

二进制包下载地址

https://dev.mysql.com/downloads/mysql/

这里选择 glibc 2.17的,因为CentOS是2.17的(使用命令ldd --version查看),根据自己操作系统参数选择对应的包,我这里操作系统是

root@mysql_0 tools\]# cat /etc/centos-release RedHat Linux 7.9.200 MySQL选择 ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/6259dafa882e4019aca74685f2833f93.png) ### 二、前期准备 * 创建用户 ```bash useradd -s /sbin/nologin mysql ``` * 创建安装了目录 ```bash mkdir -p /application/ ``` * 创建数据目录 ```bash mkdir -p /data/mysql8 ``` * 修改相关目录的属主信息 ```bash chown -R mysql:mysql /data/mysql8/ chown -R mysql:mysql /application/mysql8/ ``` ### 三、解压并安装 * 将下载好的包上传到服务器 /server/tools目录下 ```bash tar -xf mysql-8.4.6-linux-glibc2.17-x86_64.tar.xz mv /application/mysql/mysql-8.4.6-linux-glibc2.17-x86_64/ /application/mysql8 ``` * 添加环境变量 ```bash vim /etc/profile 加入 mysql的路径 export PATH=/application/mysql8/bin:$PATH source /etc/profile ``` * 数据初始化 ```bash /application/mysql8/bin/mysqld --initialize-insecure --user=mysql --basedir=/application/mysql8 --datadir=/data/mysql8/data ``` ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/eacdc30248d2473eb160d0087a0781b9.png) * 准备mysql 8 的配置文件 ```bash cat > /data/mysql8/my8.cnf << EOF [mysqld] user=mysql basedir=/application/mysql8 datadir=/data/mysql8/data socket=/data/mysql8/mysql.sock server_id=80 port=3380 autocommit=0 gtid_mode=ON enforce_gtid_consistency=ON binlog_format = ROW # 或 STATEMENT、MIXED log_bin=/data/mysql8/mysql-bin log_error=/data/mysql8/mysql_error.log slow_query_log = 1 slow_query_log_file = /data/mysql8/data/slow.log long_query_time = 0.1 log_queries_not_using_indexes = 1 [mysql] socket=/data/mysql8/mysql.sock [client] socket=/data/mysql8/mysql.sock EOF ``` ### 四、配置系统服务(systemd) * 创建服务文件 ```bash cat > /etc/systemd/system/mysqld8.service << EOF [Unit] Description=MySQL Server Documentation=man:mysqld(8) Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html After=network.target After=syslog.target [Install] WantedBy=multi-user.target [Service] User=mysql Group=mysql ExecStart=/application/mysql8/bin/mysqld --defaults-file=/data/mysql8/my8.cnf LimitNOFILE=5000 #重启策略 Restart=on-failure RestartPreventExitStatus=1 PrivateTmp=false EOF ``` * 启动并设置开机自启 ```bash systemctl daemon-reload # 重新加载服务配置 systemctl start mysqld8.service # 启动服务 systemctl enable mysqld8.service # 开机自启 systemctl status mysqld8.service # 查看状态(确保为active running) ``` ### 五、验证安装 * 查看mysql版本 由于我这里环境还有别的版本,使用绝对路径查查看 ```bash /application/mysql8/bin/mysql -V ``` ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/20bd057ad276419fa2e23171ef2f658c.png) * 登录mysql 8 ```sql mysql -S /data/mysql8/mysql.sock ``` ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/1f8c421a2d574511b4ef6efe20f78d3f.png) 完毕

相关推荐
源代码•宸1 天前
goframe框架签到系统项目(BITFIELD 命令详解、Redis Key 设计、goframe 框架教程、安装MySQL)
开发语言·数据库·经验分享·redis·后端·mysql·golang
耗同学一米八1 天前
2026年河北省职业院校技能大赛中职组“网络建设与运维”赛项答案解析 1.系统安装
linux·服务器·centos
思成不止于此1 天前
【MySQL 零基础入门】事务精讲(二):ACID 特性与并发问题
数据库·笔记·学习·mysql
Boilermaker19921 天前
[MySQL] 初识 MySQL 与 SQL 基础
数据库·mysql
Boilermaker19921 天前
[MySQL] 服务器架构
数据库·mysql·架构
码里法1 天前
centos安装nginx并配置https完整版
nginx·https·centos
Asurplus1 天前
Centos7安装Git环境
git·centos·yum·dnf
qualifying1 天前
MySQL——表的操作
数据库·mysql
学Linux的语莫1 天前
mysql主从同步(复制)搭建
数据库·mysql
MySQL实战1 天前
MySQL 在哪些场景下不会写 binlog
mysql