linux下安装mysql8.0

118 阅读2分钟

安装MySQL建议根据官方文档说明进行安装,才可以根据自己的环境找到最合适的安装方式。 点击跳转

下载MySQL

测试的机器为CentOS7环境(该系统虽然已经停止维护了,但对于学习数据库来说还是选择熟悉的操作系统最便捷),所以我参照的文档是 Installing MySQL on Linux Using the MySQL Yum Repository

添加YUM数据源

image.png
image.png
下载完成后执行命令

yum install mysql80-community-release-el7-5.noarch.rpm

安装MySQL Server

YUM数据源添加完成之后,直接执行命令安装

sudo yum install mysql-community-server

接着启用MySQL服务

systemctl start mysqld
systemctl status mysqld

数据库设置

修改密码

首先需要查询生成的初始密码

grep 'temporary password' /var/log/mysqld.log

image.png
然后根据查询到的初始密码登录数据库 image.png 接着修改初始密码即可

alter USER 'root'@'localhost' identified by 'Password@98546';

因为MySQL8.0在安全方面增加了密码相关的策略,对密码格式有严格要求,所以想要在测试的时候设置一些简单的密码会修改失败。
image.png
可以通过命令查看有哪些密码相关的限制,以便在测试环境取消掉它。

show variables like 'validate_password%'; 

image.png
修改这些变量以便取消密码的强要求

set global validate_password.policy=0;
set global validate_password.length=4;
set global validate_password.mixed_case_count=0;
set global validate_password.number_count=0;
set global validate_password.special_char_count=0;
set global validate_password.check_user_name=0;
flush privileges;

远程连接MySQL

远程连接MySQL最常用的工具就是Navicat了,这里记录下使用Navicat连接MySQL的过程。
首先需要开放MySQL默认的远程连接端口3306

firewall-cmd --permanent --add-port=3306/tcp
systemctl restart firewalld

接着为对应的账号开设远程连接的访问权限,并调整密码的加密格式。

mysql -u root -p
use mysql;
update user set host = '%' where user = 'root';
alter USER 'root'@'%' identified by 'root' password expire never;
alter USER 'root'@'%' identified with mysql_native_password by 'root';
flush privileges;

修改完成连接即可。 image.png