2025最新centos7安装mysql8 相关 服务器配置 纯命令行操作 保姆级教程

目录

[用 yum 下载安装包](#用 yum 下载安装包)

[创建 mysql 的服务文件 mysql.service](#创建 mysql 的服务文件 mysql.service)

[mysql 的配置文件 my.cnf](#mysql 的配置文件 my.cnf)

[开启防火墙 开放 3306 端口](#开启防火墙 开放 3306 端口)

[配置 mysql 为环境变量](#配置 mysql 为环境变量)

[mysql 状态相关](#mysql 状态相关)

[查看 mysql 日志](#查看 mysql 日志)


用 yum 下载安装包

复制代码
# 更新系统包
sudo yum update -y

# 安装MySQL官方仓库(以MySQL 8.0为例)
sudo rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm

# 安装MySQL服务器
sudo yum install -y mysql-community-server

# 启动MySQL服务
sudo systemctl start mysql

# 设置开机自启
sudo systemctl enable mysqld

# 查看初始密码(首次安装后需要)
sudo grep 'temporary password' /var/log/mysqld.log

# 安全配置(修改密码、移除匿名用户等)
sudo mysql_secure_installation

创建 mysql 的服务文件 mysql.service

复制代码
sudo vim /etc/systemd/system/mysql.service

相关配置

  • Basedir:MySQL 解压后的安装目录(你的路径是 mysql-8.0.20-linux-glibc2.12-x86_64)

  • Datadir:MySQL 数据存储目录(需提前创建并设置权限:sudo mkdir -p /var/lib/mysql && sudo chown -R mysql:mysql /var/lib/mysql)

  • ExecStart:mysqld 二进制文件的绝对路径(基于 Basedir 路径)

  • User 和 Group:运行 MySQL 的用户(需提前创建:sudo groupadd mysql && sudo useradd -r -g mysql mysql)

    [Unit]
    Description=MySQL Server
    Documentation=man:mysqld(8)
    Documentation=https://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

    替换为你的MySQL安装目录

    Basedir=/usr/local/mysql-8.0.20-linux-glibc2.12-x86_64
    Datadir=/var/lib/mysql # 数据目录(确保存在且属主为mysql)
    Socket=/var/run/mysqld/mysqld.sock
    PIDFile=/var/run/mysqld/mysqld.pid

    启动命令

    ExecStart=/usr/local/mysql-8.0.20-linux-glibc2.12-x86_64/bin/mysqld --defaults-file=/etc/my.cnf $MYSQLD_OPTS

    重启策略

    Restart=on-failure
    RestartPreventExitStatus=1

    限制资源

    LimitNOFILE=5000

自己的配置

mysql 的配置文件 my.cnf

复制代码
sudo vim /etc/my.cnf

相关配置

复制代码
[mysqld]
basedir=/usr/local/mysql-8.0.20-linux-glibc2.12-x86_64
datadir=/var/lib/mysql
socket=/var/run/mysqld/mysqld.sock
pid-file=/var/run/mysqld/mysqld.pid

重点需要注意的是 socket 配置 客户端和服务端端的套接字都要找到 mysql 路径

其次是 bind-address IP

开启防火墙 开放 3306 端口

配置

复制代码
# 临时开放(重启防火墙后失效)
sudo firewall-cmd --add-port=3306/tcp

# 永久开放(推荐)
sudo firewall-cmd --add-port=3306/tcp --permanent

# 重新加载防火墙使配置生效
sudo firewall-cmd --reload

检测

复制代码
# 查看已开放的端口列表
sudo firewall-cmd --list-ports

# 专门检查3306端口是否开放
sudo firewall-cmd --query-port=3306/tcp

配置 mysql 为环境变量

只要配置 profile 文件即可

添加配置

复制代码
export PATH=$PATH:/usr/local/mysql/bin

使其生效

复制代码
source etc/profile

验证

复制代码
echo $PATH
which mysql

mysql 状态相关

复制代码
# 重新加载systemd配置
sudo systemctl daemon-reload
# 查看mysql状态
sudo systemctl status mysql
# 启动mysql
sudo systemctl start mysql
# 重启mysql
sudo systemctl restart mysql

查看 mysql 日志

配置文件通常放在 var 目录下

复制代码
sudo tail -f /var/log/mysqld.log
相关推荐
祖力556 小时前
Linux系统移植、烧录与环境的搭建
linux·运维·服务器
IT研究室6 小时前
最新计算机毕业设计选题推荐-基于spring boot的文学名著分享系统-网站-文档指导-Java-springboot
java·spring boot·课程设计
denlaku6 小时前
JDK 13 新特性详解
java·开发语言
秋饼6 小时前
Java 后端企业级 LLM 网关实战:Spring Cloud Gateway 构建统一大模型接入层
java·ai·技术分享·后端开发
对讲机数码科普6 小时前
从电路原理到协议栈:模拟对讲机与数字对讲机的技术内核拆解
运维·网络·架构·软件工程
打工仔折腾 AI6 小时前
极空间用 Docker 部署 Photopea:网页版 PS 的私有化实践
运维·后端·python·docker·容器·langchain·ai agent 实战
今年下半年6 小时前
【防重放】Spring Boot 通过自定义注解实现接口防重放
java·spring boot·自定义注解·防重放
WeiXin_DZbishe6 小时前
基于Node.js的马拉松赛事管理系统的设计与实现-计算机毕设 附源码【课程设计】90211
java·javascript·vue.js·python·php·课程设计
工具人55556 小时前
Docker 最新超详细版教程
运维·docker·容器
夜雪一千6 小时前
如何在MySQL中实现字段级加密
android·数据库·mysql