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选择

二、前期准备

  • 创建用户
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
  • 准备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
  • 登录mysql 8
sql 复制代码
mysql -S /data/mysql8/mysql.sock

完毕

相关推荐
weixin_511255212 小时前
MySQL升级记录
数据库·mysql
做运维的阿瑞3 小时前
数据库增删改的安全写法
数据库·sql·mysql
frjc5 小时前
数据库选型:如何从众多数据库中选出最理想的那一个
redis·mysql·clickhouse·elasticsearch
小马哥程序开发5 小时前
[点赞收藏免费领取 · 项目源码]37399民族服饰饰品商城小程序
sql·mysql·flask·源码·课程设计·程序开发·课设
数据库小学妹9 小时前
MySQL大表怎么优化?2亿行表的分区归档与冷热分离实战
数据库·mysql·分库分表·分区表·数据库运维·冷热分离
这个DBA有点耶10 小时前
连接池与MySQL交互实战:连接风暴、连接泄漏与连接状态异常排查
数据库·mysql·架构
需要82611 小时前
MySQL MVCC 与事务隔离级别:从一条 update 看版本链
java·数据库·spring boot·mysql·spring cloud
夜雪一千11 小时前
MySQL 默认值使用方法
数据库·mysql
bksczm11 小时前
MySQL进阶篇之范式及E-R图
数据库·sql·mysql
Shadow(⊙o⊙)12 小时前
表的增删查改
数据库·mysql