安装完Mysql也进行了第一次初始化密码以及修改密码规则(请参考文章),但是我想后续再改密码,出现了下面几个问题:

#SQL语句错误问题
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to
your MySQL server version for the right syntax to use near '('12345678') WHERE user = 'root'' at line 1 #密码策略问题
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

一、SQL语句错误问题

在网上找了很多的设置密码的语句,发现都不适合,后来才发现,是我在设置密码规则时动了手脚,要按照密码规则设置的执行语句修改密码才可以(文章内容刚刚在上面文字发了链接,可以参考文章里的“修改密码规则”那块内容)

言归正传,下面为网上搜的一些更新密码的语句,由于不适合我的密码规则,所以用不了,但不一定其他人用不了,先在此记录下来:

UPDATE user SET Password = PASSWORD('') WHERE user = 'root';

SET PASSWORD FOR 'root'@'localhost' = PASSWORD(123456);

下面是我的密码规则,更新密码语句,执行下面的语句就不报上面的语法错误了:

#下面两种都可以修改密码
ALTER user 'root'@'localhost' IDENTIFIED BY '';
#或
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '';

二、密码策略问题

当我执行下面这两种语句时,报:

ERROR 1819 (HY000): Your password does not satisfy the current policy requirements密码策略问题

ALTER user 'root'@'localhost' IDENTIFIED BY '';
#或
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '';

后经帮助查到一篇文章:《ERROR 1819 (HY000): Your password does not satisfy the current policy requirements》解决此问题。

解决办法:

先登录数据库,执行下面语句:

mysql -u root -p

password:xxx

1、查看 mysql 初始的密码策略,
输入下面语句,进行查看,如图

SHOW VARIABLES LIKE 'validate_password%';

这个就是密码策略!!!

关于 mysql 密码策略相关参数;
1)、validate_password_length  固定密码的总长度;
2)、validate_password_dictionary_file 指定密码验证的文件路径;
3)、validate_password_mixed_case_count  整个密码中至少要包含大/小写字母的总个数;
4)、validate_password_number_count  整个密码中至少要包含阿拉伯数字的个数;
5)、validate_password_policy 指定密码的强度验证等级,默认为 MEDIUM;
关于 validate_password_policy 的取值:
0/LOW:只验证长度;
1/MEDIUM:验证长度、数字、大小写、特殊字符;
2/STRONG:验证长度、数字、大小写、特殊字符、字典文件;
6)、validate_password_special_char_count 整个密码中至少要包含特殊字符的个数;

2、设置密码的验证强度等级(就是因为这个问题)

只要修改密码强度等级就可以,就可以解决密码策略问题,原因是自己的密码“1234567”太简单了!!!所以改LOW点!!!

执行语句:

set global validate_password.policy=LOW;

set global validate_password.policy=0;(我用的这条)

set global validate_password_policy=LOW; ==》文章里说用这个,但是我的密码策略那个字段名称是validate_password.policy,所以大家注意一下。

修改完强度等级之后,再执行:

#修改密码长度(可有可无,随意)
set global validate_password.length = 6; #刷新
FLUSH PRIVILEGES; #更改密码成功!!!
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY ''; #刷新
FLUSH PRIVILEGES; #退出
exit; #再重新用新密码登录
mysql -u root -p password:输入新密码

大功告成!!!

具体修改其他内容可以参考解决问题的文章!!!!

==============================================

扩展其他,更新查看user表信息:

update user set authentication_string='' where user='root';
select user,host,authentication_string from user;

【Mac系统】之Mysql数据库遇到修改数字密码的问题(SQL语法错误:ERROR 1064 (42000),密码策略等问题:ERROR 1819 (HY000))的更多相关文章

  1. Mac和Windows系统下Mysql数据库的导入导出

    最近在构建数据库的过程中,需要将Mac os系统下的Mysql数据库导出成.sql文件,然后导入到windows系统下的Mysql中.经过学习总结出的步骤如下: 一.Mac os导出Mysql数据库 ...

  2. 解决Linux系统下Mysql数据库中文显示成问号的问题

    当我们将开发好的javaWEB项目部署到linux系统上,操作数据库的时候,会出现中文乱码问题,比如做插入操作,发现添加到数据库的数据中文出现论码,下面就将解决linux下mysql中文乱码问题! 打 ...

  3. Windows系统下MySQL数据库出现Access denied for user 'root'@'localhost' (using password:YES) 错误

    Windows系统下MySQL数据库出现Access denied for user 'root'@'localhost' (using password:YES) 错误,(root密码错误) 处理方 ...

  4. Linux系统下 MYSQL数据库中的数据库文件在本机内迁移 (需暂停服务的方式)

    Linux系统下 MYSQL数据库中的数据库文件在本机内迁移 本机采用Ubuntu16.04系统,tar方式安装MySQL5.7.21 数据库安装文件夹为    /home/devil/mysql 现 ...

  5. linux系统上Mysql数据库导入导出操作

    需求:把MySQL数据库目录中的dz数据库备份到/home/dz_bak.sql ,然后再新建一个数据库dzbak,最后把/home/dz_bak.sql 导入到数据库dzbak中.操作如下:以下操作 ...

  6. MySQL数据库详解(一)执行SQL查询语句时,其底层到底经历了什么?

    一条SQL查询语句是如何执行的? 前言 ​ 大家好,我是WZY,今天我们学习下MySQL的基础框架,看一件事千万不要直接陷入细节里,你应该先鸟瞰其全貌,这样能够帮助你从高维度理解问题.同样,对于MyS ...

  7. mysql数据库优化课程---14、常用的sql技巧

    mysql数据库优化课程---14.常用的sql技巧 一.总结 一句话总结:其实就是sql中那些函数的使用 1.mysql中函数如何使用? 选择字段 其实就是作用域select的选择字段 3.转大写: ...

  8. 【ERROR 1064 (42000)】MySQL中使用mysqladmin或set修改root密码时提示语法错误

    报错信息: mysql> mysqladmin -uroot -p123456 password 654321; ERROR 1064 (42000): You have an error in ...

  9. MySQL保留字 ERROR 1064 (42000)

    在MySQL(5.7.18)数据库中建表 CREATE TABLE SA_ACT_ITEM ( ITEMID ) NOT NULL, REGION ), ACTIONID ), ITEMNAME ), ...

随机推荐

  1. Linux下防止文件误删方法

    转载:http://coolsky.blog.51cto.com/177347/1230332 Linux系统中,在root帐号下使用rm * -rf是非常危险的,一不小心就可能删除系统中的重要文件. ...

  2. ASIHTTPREQUEST framework compile error when method is called / link error

    never mind!!! duplicate: Error with iOS 5.1 when i use ASIHTTPRequest and SBJSON "I would take ...

  3. ADOX创建ACCESS数据库列名的数据类型

    Type   属性             指示   Parameter.Field   或   Property   对象的操作类型或数据类型. 设置和返回值 设置或返回下列   DataTypeE ...

  4. Hibernate中cascade和inverse的作用

    Inverse和cascade是Hibernate映射中最难掌握的两个属性.两者都在对象的关联操作中发挥作用.1.明确inverse和cascade的作用inverse 决定是否把对对象中集合的改动反 ...

  5. ElasticSearch 排序

    1.相关性排序 ElasticSearch为了按照相关性来排序,需要将相关性表示为一个数值,在 Elasticsearch 中, 相关性得分 由一个浮点数进行表示,并在搜索结果中通过 _score 参 ...

  6. 大量数据更新导致fgc频繁引起jvm服务暂停。

    线上跑的几台server突然出现大量fgc,因为在fgc过程的stop the world太久.引起其他应用訪问该server上的接口大量超时.(发生超时的时间点和fgc时间点一致) 先进行初步的优化 ...

  7. 10. 修改端口号【从零开始学Spring Boot】

    转载:http://blog.csdn.net/linxingliang/article/details/51637017 spring boot 默认端口是8080,如果想要进行更改的话,只需要修改 ...

  8. C++ 大规模数据排序(100G数据 使用 4G 内存 排序)

    思路很简单,先分段排序,存储到临时文件中,然后合并. 使用10000个整数来模拟大数据,每次读取100个到内存中. #include <stdint.h> #include <std ...

  9. java web中 classpath路径 详解

    在使用ssh等框架开发web程序时配置文件(xml和properties)存放的路径一般为src下,当部署程序时则必须存在于classes路径下,具体如下 src不是classpath, WEB-IN ...

  10. 最美应用-从Android研发project师的角度之[最美时光]

    最美应用-从Android研发project师的角度之最美时光 @author ASCE1885的 Github 简书 微博 CSDN 近期发现最美应用这样一个站点.它会定期推介一些非常有意思的app ...