centOS7安装 Mysql8
卸载 MariaDB
#在CentOS中默认安装有MariaDB,是MySQL的一个分支,主要由开源社区维护。
#CentOS 7及以上版本已经不再使用MySQL数据库,而是使用MariaDB数据库。
#如果直接安装MySQL,会和MariaDB的文件冲突。因此,需要先卸载自带的MariaDB,再安装MySQL。
#查看版本
rpm -qa|grep mariadb
#卸载
rpm -e --nodeps 文件名
#检查是否卸载干净
rpm -qa|grep mariadb
查看系统是否安装了 MySql
#查看MySQL状态
systemctl status mysqld
#关闭MySQL服务
systemctl stop mysqld
#启动MySQL服务
systemctl s mysqld
#重启MySQL服务
systemctl restart mysqld
#查询系统是否安装了MySQL
rpm -qa | grep -i mysql
#卸载并删除MySQL安装的组键服务
rpm -ev 查询出的组件服务 #无法卸载就 rpm -ev –nodeps
#查看MySQL对应的文件夹
find / -name mysql
#删除系统中MySQL的文件夹
rm -rf 查询出的mysql文件夹路径
在windows系统首先去到mysql官网 :https://dev.mysql.com/downloads/repo/yum/
下载mysql源rpm安装包
在CentOs7系统里的 / 目录下创建目录:
--进入usr下的local目录
cd usr/local
--在local目录下创建 mysql 文件夹
mkdir mysql
创建好文件夹后,将刚刚在windows下载的 mysql包传输过centOS7来,而我们使用的传输工具是 Xftp 进行传输(不会使用Xftp的百度下即可,很容易的)
在centos7中进入创建好的mysql目录,然后查看是否上传过来了
上传过来了,就在mysql目录下输入安装命令
-- 注意 install 后面的 就是你所上传过来的 mysql安装包
sudo yum install mysql80-community-release-el7-3.noarch.rpm
然后等待它安装完毕后,查看是否安装成功
yum repolist enabled | grep "mysql.*"
然后安装mysql的社区服务,期间需要输入的就输入 y 回车即可,然后等到它安装完毕
yum install mysql-community-server
安装完毕后就可以启动mysql服务
-- 启动mysql服务
service mysqld.service restart
查看启动状态
-- 查看启动状态
systemctl status mysqld
设置开机启动
systemctl enable mysqld
systemctl daemon-reload
查看mysql的临时密码
-- 注意需要在mysql安装目录下才能查看,不然是没有该文件的
vim /var/log/mysqld.log
设置密码
--需要先登录进mysql才能设置密码, 输入mysql -uroot -p 回车 输入刚才查看的临时密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '自己设置密码';
设置密码错误
在设置密码时,报了个错误(这是mysql 密码策略问题)
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
解决方法:
-
需要先输入设置密码(要求是:密码长度大于8,密码中要有小写字符大写字符以及数字和特殊字符组合)
-
设置好密码之后,输入
SHOW VARIABLES LIKE 'validate_password%';
进行查看密码策略 -
可以看到:
关于指定密码强度的取值:
- LOW:只验证长度;
- MEDIUM:验证长度、数字、大小写、特殊字符;
- STRONG:验证长度、数字、大小写、特殊字符、字典文件;
-
知道了密码策略之后,我们就可以进行修改了,我们对 “指定密码的强度验证等级” 进行设置,设置让他只认证长度
输入
set global validate_password.policy=LOW;
回车即可然后在设置固定长度,输入
set global validate_password.length=6;
回车后就可以了,我们就能去设置像123456这样简单的密码了
远程连接
- 查看mysql的user和host信息
-- 进入mysql这个数据库
use mysql;
-- 查询user这个表的 user 字段和 host 字段
select user,host from user;
可以看到 root 用户 只能 localhost 本地访问,由于需要远程访问,所以需要进行修改
-
修改远程连接
update user set host='%' where user='root';
-
最后得刷新一下修改的操作
flush privileges;
查看当前centos7的ip地址,在哪层目录下输入都行
ifconfig
防火墙开放3306端口号
#防火墙开放3306端口号
firewall-cmd --zone=public --add-port=3306/tcp --permanent
#查看防火墙开放端口列表
firewall-cmd --zone=public --list-ports
都做好了之后就可以测试下连接了,我的数据库是在 VMware虚拟机里面的 CentOs7 里面开启的,然后我使用 Windows 上的 NavaCat 工具进行数据库的远程连接