MYSQL8.0以上版本正确修改ROOT密码[通俗易懂]

MYSQL8.0以上版本正确修改ROOT密码[通俗易懂]部署环境:安装版本redhatCent7.0MYSQL版本8.0.2.0成功部署完毕后出现故障情况:1.正常启动MYSQL服务后,敲Linux中root账户和密码进入不去。2.从/etc/my.cnf配置文件中加入skip-grant-table后正常登陆,但是不能创建用户等多操作总结来说:想进去mysql后不能操作多指令,操作多指令又不能进去mysql,死…

大家好,又见面了,我是你们的朋友全栈君。

部署环境:

安装版本red hat Cent 7.0

MYSQL 版本 8.0.2.0

 

成功部署完毕后出现故障情况:

1.      正常启动MYSQL服务后,敲Linux中root账户和密码进入不去。

MYSQL8.0以上版本正确修改ROOT密码[通俗易懂]

2.      从/etc/my.cnf 配置文件中加入skip-grant-tables后正常登陆,但是不能创建用户等多操作

MYSQL8.0以上版本正确修改ROOT密码[通俗易懂]

MYSQL8.0以上版本正确修改ROOT密码[通俗易懂]

 

 

总结来说:

想进去mysql后不能操作多指令,操作多指令又不能进去mysql,死循环

 

挖坑环节:

网上找了很多办法,首先加入skip-grant-table.后进去刷新权限表,重启服务,不用密码的root进去,在改root密码后,重新刷新权限表。方法试了很多个都不对。修改root环节始终不对。

MYSQL8.0以上版本正确修改ROOT密码[通俗易懂]

 

文章https://www.cnblogs.com/jjg0519/p/9034713.html

给了我提醒,是不是mysql8.0以上的版本密码策略和更改语法不对了。

 

重新操作一遍:

#vim /etc/my.cnf

【mysql】

添加skip-grant-table

#systemctl stop mysqld.service

#systemctl start mysqld.service

#mysql –u root

[敲回车进入]

mysql> flush privileges;

Query OK, 0 rows affected (0.00 sec)

 

mysql> alter user ‘root’@’localhost’IDENTIFIED BY ‘MyNewPass’;

ERROR 1819 (HY000): Your password does notsatisfy the current policy requirements

mysql> alter user ‘root’@’localhost’IDENTIFIED BY ‘MyNewPass@123’;

ERROR 1396 (HY000): Operation ALTER USERfailed for ‘root’@’localhost’

mysql> alter user’root’@’%’ IDENTIFIED BY ‘MyNewPass@123’; 

 【mysql8.0以上密码策略限制必须要大小写加数字特殊符号,我之前用mysqladmin,set,update,参考修改root密码的前人:http://www.cnblogs.com/liufei88866/p/5619215.html】

Query OK, 0 rows affected (0.05 sec)

退出,把Skip-grant-table语句删除,重新启动数据库

[root@localhost ~]# vim /etc/my.cnf【删除省略】

[root@localhost ~]# systemctl stopmysqld.service

[root@localhost ~]# systemctl startmysqld.service

[root@localhost ~]# mysql -uroot –p

mysql> CREATE USER dbadmin@localhost

   -> IDENTIFIED BY ‘pwd123’;

ERROR 1819 (HY000): Your password does notsatisfy the current policy requirements

mysql> CREATE USER dbadmin@localhost

   -> IDENTIFIED BY ‘Pwd123’;

ERROR 1819 (HY000): Your password does notsatisfy the current policy requirements

mysql> CREATE USER dbadmin@localhost

   -> IDENTIFIED BY ‘Pwd@123’;

ERROR 1819 (HY000): Your password does notsatisfy the current policy requirements

mysql> CREATE USER dbadmin@localhost

   -> IDENTIFIED BY ‘MyNewPass@123’;

Query OK, 0 rows affected (0.10 sec)

【可以正常创建用户,密码安全性还是要求着设置复杂度要高一些】

MYSQL8.0以上版本正确修改ROOT密码[通俗易懂]

 

第二使用SQL工具进行远程连接,这里使用SQLyog进行远程连接。

  一般来说,直接用ROOT用户的账号密码去连接是不行,即时密码正确。

MYSQL 8.0内新增加mysql_native_password函数,通过更改这个函数密码来进行远程连接。

2.1 第一可以更改ROOT用户的native_password密码

mysql> ALTER USER ‘root’@’%’ IDENTIFIED WITH mysql_native_password BY’MyPass@123′;

Query OK, 0 rows affected (0.15 sec)

MYSQL8.0以上版本正确修改ROOT密码[通俗易懂]

 

2.2 第二可以用Root用户登录新增加用户,进行授权再远程连接。

 

mysql> CREATE USER ‘super’@’%’IDENTIFIED BY ‘MyPass@123’;

Query OK, 0 rows affected (0.10 sec)

 

Query OK, 0 rows affe mysql> GRANT ALLON *.* TO ‘super’@’%’ WITH GRANT OPTION;

Query OK, 0 rows affected (0.10 sec)

 

mysql> Flush privileges;

Query OK, 0 rows affected (0.00 sec)cted(0.01 sec)

 

mysql> ALTER USER ‘super’@’%’ IDENTIFIEDWITH mysql_native_password BY ‘MyPass@123’;

Query OK, 0 rows affected (0.10 sec)

MYSQL8.0以上版本正确修改ROOT密码[通俗易懂]

 

注意:更改了mysql_native_passwd密码,等同更改用户原始密码。MYSQL 8.0 内以mysql-native_passwd为主,从Shell界面登录需要注意了。

 

 

感谢网友帮助,希望能帮到IT事业上面挖坑的人。

 

 

 

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/138491.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Python 读取txt文件数据逗号为分隔符「建议收藏」

    Python 读取txt文件数据逗号为分隔符「建议收藏」fname=’./data/loc.txt’withopen(fname,’r+’,encoding=’utf-8′)asf:s=[i[:-1].split(‘,’)foriinf.readlines()]

    2022年5月13日
  • mysql联合索引详解

    mysql联合索引详解比较简单的是单列索引(b+tree)。遇到多条件查询时,不可避免会使用到多列索引。联合索引又叫复合索引。b+tree结构如下:每一个磁盘块在mysql中是一个页,页大小是固定的,mysqlinnodb的默认的页大小是16k,每个索引会分配在页上的数量是由字段的大小决定。当字段值的长度越长,每一页上的数量就会越少,因此在一定数据量的情况下,索引的深度会越深,影响索引的查找效率。对于复合索引…

    2022年6月3日
  • shell中的if判断语句怎么写_shell编程if语句格式

    shell中的if判断语句怎么写_shell编程if语句格式文章目录1.判断语句介绍-if2.if…else语句(一个条件两个判断结果)3.if…elif…else语句(多条件多个判断结果)4.if嵌套if语句5.if和命令的操作1.判断语句介绍-if当编写程序时,需要对上一步执行代码是否执行成功进行判断,可以用if语句进行判断。通过查看if语句执行的判断结果查看代码是否执行成功当满足条件的代码块中有exit,表示退出脚本执行注意:注意if和[]有空格,[]和condition也有空格隔开,运算符也有空格。缩进可以任意缩进单

    2022年8月18日
  • docker -t_docker -f

    docker -t_docker -f在面试中关于多线程同步,你必须要思考的问题一文中,我们知道glibc的pthread_cond_timedwait底层是用linuxfutex机制实现的。理想的同步机制应该是没有锁冲突时在用户态利用原子指令就解决问题,而需要挂起等待时再使用内核提供的系统调用进行睡眠与唤醒。换句话说,在用户态的自旋失败时,能不能让进程挂起,由持有锁的线程释放锁时将其唤醒?如果你没有较深入地考虑过这个问题,很可能…

    2022年9月15日
  • Mysql on duplicate key update用法及优缺点

    Mysql on duplicate key update用法及优缺点

    2022年2月19日
  • 采用ToolRunner执行Hadoop基本面分析程序

    采用ToolRunner执行Hadoop基本面分析程序

    2022年1月13日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号