linux下安装mysql5.7.31_linux 安装mysql5.7压缩版

下载mysql5.7

1.创建存放目录,我是在根目录创建的study

cd /

mkdir study

d12db00a15b45c72e90943d36b11662b.png

8898092375d57d44c63efa8c00318382.png

fc93606f13e6420b9cc95b463acd13ef.png

2ce655ea19fd57003e456aa470333996.png

891d484ad8b08199229f8d239d541dee.png

复制下载地址 https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.31-linux-glibc2.12-x86_64.tar.gz

cd study

下载

wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.31-linux-glibc2.12-x86_64.tar.gz

解压

tar -zxvf mysql-5.7.31-linux-glibc2.12-x86_64.tar.gz

在 /usr/local 目录下创建mysql文件夹

mkdir /usr/local/mysql

把刚解压出来的mysql-5.7.31-linux-glibc2.12-x86_64下的所有文件移动到/usr/local/mysql文件夹下

mv mysql-5.7.31-linux-glibc2.12-x86_64/* /usr/local/mysql

结果如下图

10f1cb1f928eb75166b32f026165cf95.png

添加mysql用户组和mysql用户

groupadd mysql

useradd -r -g mysql mysql

4763ce2c614c0f55039c7022da03d6a0.png

从5.7.18开始不在二进制包中提供my-default.cnf文件,所以这里要查看一下mysql对于配置文件的查找路径,越左优先级越高

进入mysql的bin目录

cd /usr/local/mysql/bin

./mysql --help | grep 'Default options' -A 1

50e645b6ec4b4c80d305fbb96c8a7cc5.png

创建etc目录

mkdir /usr/local/mysql/etc

创建配置文件

touch /usr/local/mysql/etc/my.cnf

编辑配置文件

vi /usr/local/mysql/etc/my.cnf

写入下面内容

[client]

port=3306

[mysql]

default-character-set=utf8

socket=/var/lib/mysql/mysql.sock

[mysqld]

explicit_defaults_for_timestamp=true

skip-grant-tables

port=3306

socket=/var/lib/mysql/mysql.sock

basedir=/usr/local/mysql

datadir=/usr/local/mysql/data

max_connections=200

character-set-server=utf8

default-storage-engine=INNODB

max_allowed_packet=16M

设置开机启动

复制启动脚本到/etc/rc.d/init.d/目录

cd /usr/local/mysql

cp ./support-files/mysql.server /etc/rc.d/init.d/mysql

增加 mysql 服务控制脚本执行权限

chmod +x /etc/rc.d/init.d/mysql

将 mysql 服务加入到系统服务

chkconfig --add mysql

检查mysqld服务是否已经生效

chkconfig --list mysql

初始化数据库

cd /usr/local/mysql/bin

./mysqld --initialize --console

6445a451a6b64507c6eaef915058f8b5.png

启动mysql

service mysql start

4df6a4c317094585dc91b98fcf4ce69f.png

启动报错:/var/log/mariadb/mariadb.log日志文件不存。那么创建

mkdir /var/log/mariadb

touch /var/log/mariadb/mariadb.log

# 用户组及用户

chown -R mysql:mysql /var/log/mariadb/

再次启动 service mysql start

99451d55180415422b6bd6afc7ec3e04.png

又报错了/var/lib/mysql目录不存,那么再次创建

mkdir /var/lib/mysql

chown -R mysql:mysql /var/lib/mysql

因为mysql会在/usr/local/mysql/data目录创建pid文件,所以给mysql用户写入权限

chown -R mysql:mysql /usr/local/mysql/data

再次启动

service mysql start

469d05d08dd274260c55256fc1d79e38.png

成功!

再配置一下环境变量

vim /etc/profile

53 PATH=$PATH:/usr/local/mysql/bin

54 export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL

e2c320938c32c7efc7dcefaee690f6d2.png

刷新

source /etc/profile

检测

echo $PATH

设置mysql密码

mysql

mysql> use mysql;

mysql> update user set authentication_string=PASSWORD('root') where User='root'; #密码为root

mysql> exit;

修改my.cnf

vim /usr/local/mysql/etc/my.cnf

注释skip-grant-tables这一行

重启mysql

service mysql restart

再次进入mysql刷新权限

mysql -uroot -p

输入刚刚设置的密码

mysql> alter user 'root'@'localhost' identified by 'root';

设置mysql远程访问

mysql> grant all privileges  on *.* to root@'%' identified by "root";

mysql> flush privileges;

如果提示请修改初始密码,要执行

259cbe1841246e26bba60b160141b11f.png

alter user user() identified by "root"; #密码为root

-- 配置远程访问

-- 防火墙端口设置,便于远程访问

firewall-cmd --zone=public --add-port=3306/tcp --permanent

firewall-cmd --reload

-- 查看端口

firewall-cmd --list-ports

启动防火墙服务:systemctl ummask firewalld

启动防火墙:systemctl start firewalld

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值