因为yum安装的mysql不能自定义位置,所以采用了二进制包安装的方式,而编译安装一次要1,2个小时,所以不使用。
一、环境声明
Linux:CentOS7
Mysql:Mysql5.7
二、依赖列表
MySQL依赖于libaio 库。
yum install libaio
三、安装
1.获取mysql二进制包
wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.25-linux-glibc2.12-x86_64.tar.gz
2.解压
3.创建data文件夹
mkdir data
4.创建用户以及用户组
groupadd mysql
useradd -r -g mysql -s /bin/false mysql
5.更改data文件夹的所属用户,所属用户组,以及权限
chown mysql:mysql data
chmod 750 data
6.设置系统服务,添加环境变量
cp /lamp/mysql/support-files/mysql.server /etc/init.d/mysql.server
# 添加环境变量
vim /etc/profile
添加选中语句
#执行
source /etc/profile
7.创建my.cnf(可以自定义位置)
vim /lamp/mysql/my.cnf
#添加 其他配置自行添加
[mysqld]
basedir=/lamp/mysql
datadir=/lamp/mysql/data
8.mysql初始化
有初始密码
bin/mysqld --defaults-file=/lamp/mysql/my.cnf --initialize --user=mysql
无初始密码
bin/mysqld --defaults-file=/lamp/mysql/my.cnf --initialize-insecure --user=mysql
9.启动服务,进入mysql
bin目录下包含mysqld_safe脚本,则每次启动需要先执行脚本
bin/mysqld_safe --user=mysql &
# 停止脚本
mysqladmin -uroot -p shutdown -S /tmp/mysql.sock
systemctl start mysql
mysql -u root -p
没有初始密码直接回车
修改root密码
alter user 'root'@'localhost' identified by '123';
四、其他配置
1.设置mysql对外开放
use mysql;
update user set host='%' where user='root' and host='localhost';
flush privileges;
2.打开3306端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --reload