当前位置:首页 > Java技术 > CentOS 7安装MySQL 8——萌新超详细教程

CentOS 7安装MySQL 8——萌新超详细教程

2022年08月05日 22:04:24Java技术8
 
 
 
1.配置MySQL 8.0的安装源:
 
 
 
 
2.安装MySQL 8.0
 
sudo yum --enablerepo=mysql80-community install mysql-community-server
 
 
 
接下来选择 y
 
 
 
下载完继续 y
 
 
 
3.启动MySQL服务
 
启动命令: sudo service mysqld start
 
 
ps:如果不确定是否启动了服务就运行如下命令
 
service mysqld status
 
 
 
4.查看MySQL的root临时密码
 
安装完MySQL之后,都会生成一个临时的密码让root用户登录,那么应该怎么获取临时密码呢?
 
运行如下命令:  grep "A temporary password" /var/log/mysqld.log
 
 
 
5.把临时密码修改为一个自己能记得住的密码
 
1).先用临时的密码登录MySQL
运行命令:  mysql -uroot -p
 
 
登录成功后
 
 
2).登录成成功后运行如下命令修改密码
 
修改密码命令: ALTER USER 'root'@'localhost' IDENTIFIED BY 'root';
 
ps:注意语句结尾必须以分号结束
 
 
如果出现这种情况,那么就是你的密码复杂度不符合MySQL所要求的
 
解决这种情况有两种方式:
①把密码改复杂点,让它符合密码验证策略,这个当然是最好的,符合国际惯例;
②把密码验证策略改简单点,让它适用简单的密码,这个符合懒人的做法。
 
查看密码验证策略方法,运行如下命令:(前提是重置密码之前是不让看的)
SHOW VARIABLES LIKE 'validate_password.%';
 
 
官方文档提供的文档
validate_password.length 是密码的最小长度,默认是8
validate_password.policy 验证密码的复杂程度
validate_password.check_user_name 用户名检查,用户名和密码不能相同
 
 
密码长度修改为4:  set global validate_password.length=4;
 
 
密码复杂度修改为0:  set global validate_password.policy=0;
 
 
去掉不允许用户名和密码相同的要求:  set global validate_password.check_user_name=off;
 
 
然后运行修改密码的命令:  ALTER USER 'root'@'localhost' IDENTIFIED BY 'root';
 
 
 
6.配置远程访问
 
发现客户端无法连接MySQL,那时因为我们没有开通远程访问权限
 
 
开启远程访问权限步骤:
 
1).   use mysql;
 
 
 
2).    select host, user, authentication_string, plugin from user;
 
 
 
如上图,发现root的host是localhost,不是%, 那我们就加个host是%的root账号:
 
命令:  CREATE USER 'root'@'%' IDENTIFIED BY 'root';
 
再重新查一下用户
命令:  select host, user, authentication_string, plugin from user;
 
 
 
上面步骤成功后运行如下代码:  GRANT ALL ON *.* TO 'root'@'%';
 
 
这样就成功了
 
用navicat连接mysql还是会报错:
 
 
 
原因是mysql8的加密方式规则不一样,是caching_sha2_password
 
 
把加密方式改成mysql_native_password就行了:
ALTER USER '[用户名]'@'%' IDENTIFIED WITH mysql_native_password BY '[密码]';
 
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root';
 
加密方式已经修改完成 mysql_native_password:
 
 
 
 
如果还不成功,可能Linux没有开放3306端口
 
操作步骤:
1、登陆到linux系统
2、输入防火墙开放端口命令: firewall-cmd --zone=public --add-port=3306/tcp --permanent
3、刷新防火墙: firewall-cmd --reload
* 注意:--add-port=后面接需要开放的端口
 
 
 
 
 
 
 
 
 

作者:寻找简单的简单
来源链接:https://www.cnblogs.com/xie97/p/12092254.html

版权声明:
1、JavaClub(https://www.javaclub.cn)以学习交流为目的,由作者投稿、网友推荐和小编整理收藏优秀的IT技术及相关内容,包括但不限于文字、图片、音频、视频、软件、程序等,其均来自互联网,本站不享有版权,版权归原作者所有。

2、本站提供的内容仅用于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律的规定,不得侵犯相关权利人及本网站的合法权利。
3、本网站内容原作者如不愿意在本网站刊登内容,请及时通知本站(javaclubcn@163.com),我们将第一时间核实后及时予以删除。


本文链接:https://www.javaclub.cn/java/18090.html

分享给朋友:

“CentOS 7安装MySQL 8——萌新超详细教程” 的相关文章

MySQL触发器

MySQL触发器 触发器是一种特殊的存储过程,触发器和存储过程一样是一个能完成特定功能、存储在数据库服务器上的SQL片段,但是触发器无需调用,当对数据库表中的数据执行DML操作时自动触发这个SQL片段的执行,无需手动调用. 在MySQL中,只...

MySQL面试有这一篇就够了

MySQL面试有这一篇就够了

MySQL面试常见知识点 1、 MySQL常用的存储引擎有什么?它们有什么区别? InnoDB InnoDB是MySQL的默认存储引擎,支持事务、行锁和外键等操作。 MyISAM MyISAM是M...

MySQL表的增删改查(进阶)

MySQL表的增删改查(进阶)

数据库的约束 约束类型 NOT NULL UNIQUE DEFAULT PRIMARY...

mysql8.0.25安装配置教程(windows 64位)最详细

mysql8.0.25安装配置教程(windows 64位)最详细

目录 1.官网下载MySQL 2.配置初始化文件my.ini 3.初始化MySQL 4.安装mysql服务并启动+修改密码 5.配置环境变量 6.部分疑难杂病 7.使用连...

MySQL事务和锁

MySQL事务和锁

1.事务 1.什么是事务? 事务: 要么全部成功,要么全部失败 事务是数据库管理系统(DBMS)执行过程中的一个 逻辑单位 ,由一个 有限的数据库操作序列 组成。 逻辑单位:最小的操作单位,不可再分割。 有限的数据库操作序列:...

MySQL主从复制

MySQL主从复制 文章目录 MySQL主从复制 1.准备工作 2.主库的配置 3.配置从库 4.Sharding-JDBC框架的使用...

MySQL安装之yum安装

MySQL安装之yum安装

 在CentOS7中默认安装有MariaDB,这个是MySQL的分支,但为了需要,还是要在系统中安装MySQL,而且安装完成之后可以直接覆盖掉MariaDB。 1. 下载并安装MySQL官方的 Yum Repository [root@Bria...

JDBC如何连接mysql数据库附详细步骤

JDBC如何连接mysql数据库附详细步骤

JDBC连接数据库在学习中是很重要的一个环节,今天给大家详细说明JDBC连接数据库需要的步骤 1.加载驱动 驱动包的下载地址 https://dev.mysql.com/downloads/connector/j/ 到时候要将这个加载到项目中然后输入...

Linux (centos8)安装 MySQL 8 数据库(图文详细教程)

Linux (centos8)安装 MySQL 8 数据库(图文详细教程)

我的公众号 今天2021年4月23日。我买了阿里云centos服务器,安装mysql8.0,做一笔记,以供大家使用。 本教程手把手教你如何在 Linux 安装 MySQL 数据库,以 CentOS 8为例。 1. 下载并...

性能优化|深入理解mysql索引数据结构与算法

性能优化|深入理解mysql索引数据结构与算法

什么是索引? 在mysql中,索引就是帮助mysql快速找到某条数据的一种数据结构,它是排好序的,独立于mysql表数据之外的。 索引数据结构分为哪几种 二叉树、红黑树、Hash表、B树。 在这里我们主要介绍hash表和B树...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。