1、MySQL安装方式
Linux MySQL安装有很多方式:yum安装、apt-get安装、rpm安装、二进制安装、源码编译安装。
比较通用的做法就是,二进制安装、源码编译安装,但是源码编译安装太麻烦,所以一般都是选择二进制安装。
本文就是采用二进制安装。
2、下载官方 MySQL 安装包
https://downloads.mysql.com/archives/community/
3、MySQL 依赖于libaio 库
yum -y install libaio
4、创建 MySQL 用户和组
groupadd mysql
## 创建不可登录用户
useradd -r -g mysql -s /bin/false mysql
5、创建数据存放目录,并修改权限
mkdir -p /data/mysql
mkdir -p /data/tmp
chown -R mysql:mysql /data/mysql
chown -R mysql:mysql /data/tmp
chmod -R 750 /data/mysql
chmod -R 750 /data/tmp
-R : 处理指定目录以及其子目录下的所有文件。
chown -R mysql:mysql /data/mysql 表示修改 /data 目录下的 mysql 及 mysql 所有子目录的所属权限为mysql:mysql
6、上传解压修改文件名
tar -zxvf mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz
#移动并修改文件名
mv mysql-5.7.24-linux-glibc2.12-x86_64 /usr/local/mysql
7、修改配置文件
MySQL 服务器有许多操作参数,默认值可以使用 /usr/local/mysql/bin/mysqld mysqld --verbose --help 查看这些默认值。
服务器配置默认值,会被 my.cnf 覆盖,服务器启动时使用命令行选项,可以覆盖默认值和 my.cnf 里面的值。
修改配置文件 vi /etc/my.cnf (没有就新建)
[client]
port=3306
socket=/data/mysql/mysql.sock
[mysqld]
port=3306
basedir=/usr/local/mysql
datadir=/data/mysql
tmpdir=/data/tmp
log-error=/data/mysql/mysql.err
socket=/data/mysql/mysql.sock
pid-file=/data/mysql/mysql.pid
character-set-server=utf8mb4
8、初始化 MySQL
cd /usr/local/mysql
bin/mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql --datadir=/data/mysql --user=mysql --initialize
参数:
--defaults-file:指定MySQL配置文件路径。
--basedir 为mysql解压目录。
--datadir 为mysql数据存放目录。
--user: 指定账户。
--initialize : 初始化随机密码。
查看初始密码
cat /data/mysql/mysql.err
注意这一步,会生成root用户的随机初始密码:vnzTreaNN2,=
9、启动 MySQL
cp support-files/mysql.server /etc/init.d/mysql.server
systemctl daemon-reload
#启动
service mysql start
#重启
service mysql restart
#关闭
service mysql stop
如果没有报错,且日志文件 /data/mysql/mysql.err 里没有错误信息,基本就已经启动好了,可以通过ps 查看进程
ps -ef|grep mysql
10、修改 MySQL访问密码
/usr/local/mysql/bin/mysql -u root -p
输入上面的密码:vnzTreaNN2,=
alter user user() identified by 'root';
flush privileges;
刷新规则允许外部访问
use mysql;
update user set host = '%' where user = 'root';
flush privileges;
11、防火墙
firewall-cmd --permanent --add-port=3306/tcp
firewall-cmd --reload
firewall-cmd --list-port
12、卸载
#卸载
service mysql stop
rm -rf /data/* /etc/my.cnf /usr/local/mysql/
官方文档:
https://dev.mysql.com/doc/refman/5.7/en/binary-installation.html
https://dev.mysql.com/doc/refman/5.7/en/server-options.html