linux mysql 忘记root密码_Linux MySQL忘记root密码解决方案

在使用MySQL数据库时,由于某些原因长时间没有登陆MySQL,或者由于工作交接完成度不高,导致数据库root登陆密码忘记,如何解决?

一、更改my.cnf配置文件

1、用命令编辑/etc/my.cnf配置文件,即:vim /etc/my.cnf 或者 vi /etc/my.cnf 或者 nano /etc/my.cnf

2.在[mysqld]下添加skip-grant-tables,然后保存并退出

3.重启mysql服务:service mysqld restart

二、更改root用户名

1、重启以后,执行mysql命令进入mysql命令行

2、修改root用户密码

MySQL> UPDATE mysql.user SET Password=PASSWORD('新密码') where USER='root';

MySQL> flush privileges;

MySQL> exit

注意:以上是5.7之前的版本使用,5.7之后的版本没有Password字段,password字段改成了authentication_string

mysql> update mysql.user set authentication_string=password(‘root123456') where user='root'; #修改密码成功

Query OK, 1 row affected, 1 warning (0.00 sec)

Rows matched: 1 Changed: 1 Warnings: 1

mysql> flush privileges; #立即生效

Query OK, 0 rows affected (0.00 sec)

mysql> quit

Bye

n>mysql -u ******* -p #以该用户登录成功.

Enter password: ********

…………………………

mysql>

注意:5.7之后的版本,密码不能过于简单,如123456,否则会报以下错误:ERROR 1819 (HY000): Your password does not satisfy the current policy requirements。

此时,要么把密码设置复杂点,要么修改配置:

这个其实与validate_password_policy的值有关。

validate_password_policy有以下取值:

默认是1,即MEDIUM,所以刚开始设置的密码必须符合长度,且必须含有数字,小写或大写字母,特殊字符。

有时候,只是为了自己测试,不想密码设置得那么复杂,譬如说,我只想设置root的密码为123456。

必须修改两个全局参数:

首先,修改validate_password_policy参数的值

mysql> set global validate_password_policy=0;

Query OK, 0 rows affected (0.00 sec)

1

2

validate_password_length(密码长度)参数默认为8,我们修改为1

mysql> set global validate_password_length=1;

Query OK, 0 rows affected (0.00 sec)

1

2

4,完成之后再次执行修改密码语句即可成功

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

Query OK, 0 rows affected (0.00 sec)

3、最后把/etc/my.cnf中的skip-grant-tables注释掉,然后重启mysql,即:service mysqld restart

OK,下面我们就可以使用root新的密码登录MySQL了。

77ae9583a8532cf0d60b1d113cafa465.png

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

本文标题: Linux MySQL忘记root密码解决方案

本文地址: http://www.cppcns.com/os/linux/314084.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/332832.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java编程中如何获取项目文件的路径/文件路径

// 获取类加载器 ClassLoader cl JDBCUtils.class.getClassLoader(); // 获取文件的统一资源定位器对象 URL url cl.getResource("db_config.properties"); // 获取文件的路径 String path url.getPath();

inmemory_通过Spring Boot了解H2 InMemory数据库

inmemory介绍 基本上,数据库设置涉及几个步骤,然后才能在应用程序中通过已配置的数据源使用它。 在实际项目实施中,这实际上是必需的。 但是,在某些情况下,我们只需要为某件事完成POC,并且整个数据库设置工…

mysql 查询分组平均数_9、mysql分组查询-----group by 和 having

举例说明:有 Store_Information表之前我们根据这个表,用函数可以算出sales的总和,平均数等如果现在我们需要算出每一间店(store_name)的销售总额(sales)呢?比如:1、los angeles 销售额加起来是 18000san diego…

macOS彻底卸载/删除Microsoft相关的程序

cd /Library/Application\ Support/ # 可以将目录Microsoft整个删除 sudo rm -rf Microsoft # 如果要单独删除微软的自动更新程序,可以进入 cd Microsoft/MAU2.0 # 删除程序文件Microsoft AutoUpdate.app sudo rm -rf Microsoft\ AutoUpdate.app # 进入~/Library/Pr…

java 字符串文字筛选_重新开始Java的原始字符串文字讨论

java 字符串文字筛选在2018年12月宣布 将从JDK 12中删除原始字符串文字 。 现在,在新的一年中,与Java中原始字符串文字的设计有关的讨论又开始了。 在琥珀色专家OpenJDK邮件列表上的“ 原始字符串文字-重新开始讨论 ”一文中 ,Brian Goetz参…

mysql event 日志_MySQL Event计划任务刷慢日志

前言最近在尝试一个日志系统graylog来收集mysql的慢查询日志提,供后续的分析、监控和报警等。测试步骤已经到日志已成功收集到graylog,测试时需要刷一些慢查询日志出来。为了刷比较多的日志和不对测试环境造成较大的影响,想到了使用mysql的sl…

aws lambda_API网关和AWS Lambda进行身份验证

aws lambda当Foreach最初踏上微服务之路时,我们并没有真正构建微服务。 我们以为我们做到了,但是我们所有的服务中总存在一些逻辑。 当然,每个服务实际上应该只专注于自己的任务,而不应该专注于属于另一个微服务的事物。 我们这方…

refreshtoken用mysql_微信access_token和refresh_token保存于redis

此处以保存用户授权access_token为例,接口调用access_token可在项目启动时进行缓存。部分代码如下:Autowiredprivate RedisTemplate redisTemplate;Value("${myapp.redisWxUserAccessToken}")private String redisWxUserAccessToken;// 获取pu…

JDBC的基本使用

文章目录概念基本使用步骤详解各个对象DriverManager注册驱动获取数据库连接Connection获取执行 SQL 语句的对象事务管理Statement执行 SQL 语句ResultSetPreparedstatement概念 Java DataBase Connectivity Java 数据库连接,即使用 Java 语言操作数据库 JDBC本质…

sqlrelay mysql_php+sqlrelay+mysql实现连接池及读写负载均衡

phpsqlrelaymysql实现连接池及读写负载均衡上一篇 /下一篇 2008-04-02 18:25:19/ 个人分类:MySQL作者:ziqiusqlrelay.jpg(20.33 KB)2007-8-31 14:26在大型的web应用中数据库经常成为并发访问的一个瓶颈,为了有效的解决并发访问的瓶颈&#x…

maven 文件上传下载_使用Maven将文件上传和下载到S3

maven 文件上传下载多年来,我已经看到许多团队以许多不同的方式使用Maven。 Maven可用于许多ci / cd任务,而无需使用额外的管道代码,或者可用于在运行某些测试之前准备开发环境。 通常,它是一种方便的工具,在Java团队…

JDBC的事务管理

文章目录事务定义操作步骤示例代码事务定义 一个包含多个步骤的业务操作。如果这个业务操作被事务管理,则这多个步骤要么同时成功,要么同时失败。 操作步骤 使用 Connection 对象来管理事务。 1.开启事务 2.提交事务 3.回滚事务 开启事务: setAutoC…

s71200模拟量输入输出_模拟用户输入并检查输出的简单方法

s71200模拟量输入输出最近,我的一些学生向我询问了赫尔辛基大学MOOC提供的单元测试的机制,我检查了它们的实现,并认为这对于初学者了解实际发生的情况是有帮助的,因此在此发表了这篇小文章。 我们将以“机场”项目为例&#xff0…

mysql设计一个简单的系统_一个简单数据库设计例子

一个曾经做过的简单的管理系统中数据库设计的例子,包括设计表、ER图、建模、脚本. 项目信息 Project Name: Book Manager System DB: MySQL5.5 DB Name: db_library Tables: 1). tb_book_info 2). tb_user 3). tb_admin_info 4). tb_borrow_return 5). tb_boo一个曾经做过的简单…

数据库连接池_DataSource_数据源(简单介绍C3P0和Druid)

文章目录概念好处实现C3P0基本使用配置文件druid下载 jar 包配置文件演示代码定义工具类示例代码概念 数据库连接池其实就是一个容器,而这个容器其实就是一个集合,这个集合存放着多个数据库连接对象。 系统在初始化的时候,将创建一定数量的数…

graal java_使用SparkJava和Graal的本机微服务

graal java使用SparkJava编写的微服务只是使用标准Java库的普通Java代码。 没有注释魔术,只有代码。 这种简单的编程风格的优点在于,它很简单。 非常简单,以至于Graal本机编译器只需编译就不会闪烁 ,这对于例如Spring之类的更复杂…

python消息订阅_python实现发布订阅

订阅者:import redisrc redis.StrictRedis(host‘127.0.0.1‘, port‘6379‘, db0)ps rc.pubsub()ps.subscribe(‘lbky‘) # 从lbky订阅消息for item in ps.listen(): # 监听状态:有消息发布了就拿过来print(item)if item[‘type‘] ‘message‘:prin…

使用JDBC连接数据库时,SQL语句中提示:Unable to resolve table...(原因:数据源未配置)

文章目录方法一、添加数据源方法二、输入全限定表名在 IDEA 中的 Java 代码中写 SQL 语句时,出现如下图所示的错误提示:方法一、添加数据源 要解决上面红色警告的问题,只需要添加数据源就可以解决。 方法二、输入全限定表名 前提&#xff1…

测试反模式冰激凌模式的不足_单元测试反模式,完整列表

测试反模式冰激凌模式的不足我前段时间写过有关OOP中的反模式的文章 。 现在该写单元测试反模式了,因为它们也存在,并且有很多。 我将尝试在列表中包括我知道的每个示例。 如果您认识其他任何人,请通过请求请求将其添加,或在下面发…

mysql导入三个基本表_mysql 基础导入导出

导入导出mysqldump导出:mysqldump -u root -p --databases 数据库1 数据库2 > xxx.sql导入:系统命令行: MySQL -u用户名 -p密码 常见选项:--all-databases, -A: 备份所有数据库--databases, -B: 用于备份…