下载
官网地址 MySQL :: Download MySQL Community Server
可选择安装系统 centos 选择 linux通用 根据服务器系统选择 32/64位 选择 安装版本 当前最新 8.0
点击 Looking for the latest GA version? 选择 5.7
然后复制链接 https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.33-linux-glibc2.12-x86_64.tar.gz 进入服务器
wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.33-linux-glibc2.12-x86_64.tar.gz
解压 复制
#解压
tar -xzvf mysql-5.7.33-linux-glibc2.12-x86_64.tar.gz
#复制mysql 源文件到 /usr/local/mysql (自定义)
cp -r mysql-5.7.33-linux-glibc2.12-x86_64/ /usr/local/mysql
修改 my.conf
vim /etc/my.conf
[mysqld]
#mysql安装路径
basedir=/usr/local/mysql
#mysql数据存储路径
datadir=/usr/local/mysql/data
#连接文件
socket=/tmp/mysql.sock
#启动用户
user=mysql
#端口号
port=3306
#全局字符集
character-set-server=utf8
## 是否免密登录 需要重置密码时可以打开
#skip-grant-tables
##是否支持分区存储
symbolic-links=0
[client]
##连接客户端端口
port=3306
##连接文件
socket=/tmp/mysql.sock
# Disabling symbolic-links is recommended to prevent assorted security risks
#symbolic-links=0
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/Systemd
[mysqld_safe]
## 错误日志文件
log-error=/var/log/mysql/error.log
## 启动后的进程 pid
pid-file=/var/run/mysql/mysql.pid
#
# include all files from the config directory
#
!includedir /etc/my.cnf.d
添加 用户及用户组
#添加用户组
groupadd mysql
#添加用户并归属到 mysql组
useradd mysql -g mysql
#查看
groups mysql
修改权限
保证mysql 用户有权操作 my.conf 中所设置的所以文件及文件夹 包括pid文件日志文件
#用户组给文件夹权限
chown -R mysql:mysql /usr/local/mysql
#用户给文件夹权限
chown -R mysql /usr/local/mysql
# 修改文件权限
chmod -R 755 /usr/local/mysql
#汇总
chown -R mysql:mysql /usr/local/mysql && chown -R mysql /usr/local/mysql && chmod -R 755 /usr/local/mysql
初始化mysql服务
# 创建数据存储文件夹
cd /usr/local/mysql && mkdir data
# 初始化服务 --initialize-insecure 参数 初始密码为空
cd /usr/local/mysql/bin
./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data --user=mysql --initialize-insecure
注册到 service 服务
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
启动
service mysql start|stop|restart|status
本地连接
# 连接
cd /usr/local/mysql/bin && ./mysql -uroot -p
更新密码
# 执行sql更新密码
SET PASSWORD = PASSWORD('root');
# 用户可连接ip 可设置为 % 所以域名ip
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
# 刷新权限
FLUSH PRIVILEGES;
创建客户端软连接
ln -s /usr/local/mysql/bin/mysql /usr/bin