小白也能轻松在Linux部署Mysql5.7

写在前面:

我是「沸羊羊_」,昵称来自于姓名的缩写 fyy ,之前呕心沥血经营的博客因手残意外注销,现经营此账号。
本人是个小菜,正向着全栈工程师的方向努力着,文章可能并不高产,也很基础,但每写一篇都在用心总结,请大佬勿喷。
如果您对编程有兴趣,请关注我的动态,一起学习研究。
感谢每位读者!

部署前准备

环境

  • 部署服务器:Linux 64位

下载 MYSQL (小编选择的版本是:MYSQL5.7.24)

注意

  • 小编部署MYSQL使用的命令中的 sudo 代表权限不够,使用高级权限,读者如已经是高级权限,则不用加 sudo 命令
  • 如读者的MYSQL路径与小编不同,则下面部分命令需根据路径自行更改,如完全参照小编的路径进行部署,按照步骤就可以成功部署!

部署MYSQL5.7

1、将下载好的 MYSQL 压缩包,放到服务器,手动拖动即可。
2、解压MYSQL压缩包

#解压
tar -xvf mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz

3、移动文件并重命名

#将 mysql-5.7.24-linux-glibc2.12-x86_64 文件 移动到 /usr/local 目录下,并重命名为 mysql

sudo mv mysql-5.7.24-linux-glibc2.12-x86_64 /usr/local/mysql

4、创建mysql 用户组和用户并修改权限

#新建用户组 mysql
sudo groupadd mysql

#新建用户
sudo useradd -r -g mysql mysql

#创建目录
sudo mkdir -p /data/mysql

#赋予mysql用户权限
sudo chown mysql:mysql -R /data/mysql

在这里插入图片描述
5、修改配置文件 my.cnf

输入 vi 按 tab 键,检查是否已安装 vim 命令,如没安装,输入以下命令,如已安装此命令,跳过此步骤即可。

#安装 vim 命令
sudo yum -y install vim

修改配置文件 my.cnf

sudo vim /etc/my.cnf

输入完上述命令后,按 i ,代表编辑此文件。

my.cnf 文件内容:(将文件内容复制粘贴)

[mysqld]
bind-address=0.0.0.0
port=3306
user=mysql
basedir=/usr/local/mysql
datadir=/data/mysql
socket=/tmp/mysql.sock
log-error=/data/mysql/mysql.err
pid-file=/data/mysql/mysql.pid
#character config
character_set_server=utf8mb4
symbolic-links=0
explicit_defaults_for_timestamp=true

配置完成后,按 ESC,输入英文的:,输入 wq! (保存退出)

6、进入 mysql bin 目录

#进入bin目录
cd /usr/local/mysql/bin/ 

#初始化
sudo ./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/ --datadir=/data/mysql/ --user=mysql --initialize 

7、查看初始密码

#查看初始密码
sudo cat /data/mysql/mysql.err

在这里插入图片描述
8、将 mysql.server 放置到 /etc/init.d/mysql 中

sudo cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql

9、启动MYSQL

#启动
sudo service mysql start

在这里插入图片描述
10、到此为止MYSQL部署成功!!!

11、修改MYSQL密码

输入用户名,密码,登录

#输入用户名
./mysql -u root -p

#输入上面查询到的初始密码

修改密码

#设置密码
SET PASSWORD = PASSWORD('123456');

#更新密码
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;

#刷新
FLUSH PRIVILEGES;   

在这里插入图片描述

12、给 root 用户添加能在任何主机访问的权限

#访问mysql库
use mysql 

#使root能再任何host访问                                           
update user set host = '%' where user = 'root';  

#刷新    
FLUSH PRIVILEGES;                                   

部署MYSQL后开防火墙端口

如你的服务器没有开启防火墙,则此时,可以使用 navicat 进行远程连接了。但如果开了防火墙,则需要给防火墙开端口。

1、查看 firewall 服务状态

#查看 firewall 状态
systemctl status firewalld
  • 出现Active: active (running)且高亮显示则表示是启动状态
  • 出现 Active: inactive (dead)灰色表示停止
    在这里插入图片描述

2、查看防火墙状态

# 查看防火墙状态
sudo firewall-cmd --state

在这里插入图片描述
3、开启firewalld.service服务

# 开启
service firewalld start

4、查看防火墙规则

sudo firewall-cmd --list-all

在这里插入图片描述

5、开端口

#查询端口是否开放
sudo firewall-cmd --query-port=8080/tcp

#开放3306端口
sudo firewall-cmd --permanent --add-port=80/tcp

#重启防火墙(修改配置后要重启防火墙)
sudo firewall-cmd --reload

在这里插入图片描述
在这里插入图片描述
6、防火墙端口号已经开启成功!!!

猜你喜欢

转载自blog.csdn.net/weixin_42653522/article/details/107508144