目录
[用 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