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
相关推荐
captain3761 小时前
MyBatis(入门5)其他查询操作
java·数据库·spring boot·mybatis
Novproxy_Z1 小时前
商用代理避坑:如何识别商家拿机房 IP 冒充住宅 IP
java·网络·tcp/ip
无足鸟ICT1 小时前
【RHCA+】vmstat命令(监控系统资源)
linux·服务器
垆边人似月.2 小时前
RDMA 文件传输踩坑(五):READY 发送成功后,为什么出现 Work Request Flushed Error?
服务器·网络·tcp/ip
闪亮的路灯2 小时前
Linux 安装mqtt服务mosquitto
linux·运维·服务器
HideF2 小时前
nmcli
linux·服务器·网络
小此方2 小时前
Re:Mysql数据库基础篇(八):详细讲解复合查询、多表查询、自连接、多行、多列子查询与合并查询
数据库·mysql
文丑颜不良啊2 小时前
LeetCode1481~1500题目解析
java·leetcode
2601_962885722 小时前
quotes 字段全解:涨跌幅、振幅、换手率的口径与单位
java·前端·spring
smile_life_2 小时前
MySQL 设置 防止账户被暴力破解
数据库·mysql