MySQL 二进制安装
MySQL的安装很简单,官网也给的很清楚,下面介绍的唯一的不同点在于标准话了以下,方便运维
官方安装文档:https://dev.mysql.com/doc/refman/8.0/en/binary-installation.html
环境
本例以8.0版本为例,5.6/5.7大同小异,不同之处下面会标明
安装
1.创建对应的存储路径
一般都会放在一块单独的盘上,喜欢更细分的可以创建为 /data/mysql/mysql3306/{data,logs,tmp}这类,个人偏爱放在一起(mysql clone功能出来的也都在一起的)
mkdir -p /data/mysql/mysql3306
2.创建组与用户
groupadd mysql
useradd -g mysql -s /bin/nologin mysql
# 给mysql数据文件路径授权
chown -R mysql:mysql /data/mysql
-g 指定用户所属的群组
-s 指定用户登入后所使用的shell
-d 指定用户登入时的起始目录
-M 不要自动建立用户的登入目录
-N 取消建立以用户名称为名的群组
3.解压缩
tar xvf /path/to/mysql-8.0.18-linux-glibc2.12-x86_64.tar.xz -C /user/local
cd /user/local
【5.6/5.7】 tar zxvf /path/to/mysql-VERSION-OS.tar.gz
4.设置环境变量
echo "export PATH=$PATH:/usr/local/mysql/bin">>/ect/profile & source /etc/profile
5.创建软链
创建软链的作用在于方便未来做升级,unlink后再次 ln -s 到新版本
# 创建软链
ln -s /user/local/mysql-8.0.18-linux-glibc2.12-x86_64 mysql
6.设置配置文件【my.cnf】
一般创建在数据文件目录上一级(/data/mysql/)下即可,当然你也可以选择放在 /etc/ 下,简单配置如下:
[client]
port = 3306
socket = /tmp/mysql3306.sock
[mysqld]
user= mysql
port= 3306
basedir= /usr/local/mysql
datadir= /data/mysql/mysql3306
socket= /tmp/mysql3306.sock
log-error= /data/mysql/mysql3306/error.log
7.初始化
/usr/local/mysql/bin/mysqld --defaults-file=/data/mysql/mysql3306.cnf --initialize --user=mysql
【5.6】 /usr/local/mysql/scripts/mysql_install_db --defaults-file=/data/mysql/mysql3306.cnf --user=mysql
8.启动
/usr/local/mysql/bin/mysqld_safe --defaults-file=/data/mysql/mysql3306.cnf --user=mysql &
9.修改密码
# 查看初始密码,查看设置的 error log
cat /data/mysql/mysql3306/error.log|grep password
# 根据查询到的密码登陆
mysql -S /tmp/mysql3306.sock -uroot -p
# 修改密码
mysql> alter user user() identified by 'XXXXXXXX';
【5.6】无需密码,直接可登陆
10.关闭
# 方式1
mysqladmin -S /tmp/mysql3306.sock -p shutdown
# 方式2
登陆mysql
mysql> shutdown;
11.安全加固
对于低于5.7版本的,需要做安全加固
mysql> delete from mysql.user where user!='root' or host!='localhost';
mysql> truncate table mysql.db;
mysql> drop database test;












网友评论