linux mysql 8.0 重置密码或者刷新权限问题

关于mysql user 表的主键,百度说是user + host 构成了主键

1:问题如下:

[[email protected] ~]# mysql -u root
ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using password: YES)
这一段是拒绝user=root,host=localhost 的用户访问,需要数据密码

解决方案:1):设置mysql为无密码启动 

(修改MySQL的登录设置:vi /etc/my.cnf (部分Linux安装了vim,其命令则改为vim /etc/my.cnf)

在[mysqld]的段中加上一句:skip-grant-tables保存并退出vi。)

2):重新启动mysqld,清空密码

重启mysql:service mysqld restart(这一步不能少,这是让my.cnf的修改生效)

进入mysql:mysql -u root

进入mysql后,切换数据库至mysql:use mysql;

清空密码:update user set authentication_string=‘‘ where user=‘root‘;
              3):退出mysql:exit; 并且 屏蔽skip-grant-tables:vi /etc/my.cnf,在skip-grant-tables前面添加#

4):重启mysql.

至此 mysql8.0 可以不需要密码登录了。登录成功之后重新设置密码和刷新权限 就可以远程访问了

设置密码:

‘root‘@‘%‘   ‘root‘等于user表里的user,‘%‘ 等于user表里的host

ALTER USER ‘root‘@‘%‘ IDENTIFIED BY ‘新密码‘ PASSWORD EXPIRE NEVER;

ALTER USER ‘root‘@‘%‘ IDENTIFIED WITH mysql_native_password BY ‘新密码‘;

让密码马上生效:FLUSH PRIVILEGES;

标记以便日后使用

原文地址:https://www.cnblogs.com/sharon-mxy/p/11634905.html

时间: 2024-08-29 17:11:18

linux mysql 8.0 重置密码或者刷新权限问题的相关文章

关于linux版vcenter6.0重置root密码问题

今天遇到了一个vcenter6.0忘记了root密码的问题.原因可能是1.当时部署vmware虚拟化这一套设备的工程师遗忘,也没做到保管和正确交接.2.谷歌搜索网友答vCSA的密码有效期默认是90天失效的. 其中5.5的文章有:vmware官网给的https://kb.vmware.com/s/article/2069041 或中文版https://wenku.baidu.com/view/fe1f8f3fe518964bce847c75.html 其中6.0的文章有:vmware官网给的htt

MySQL单实例重置密码的两种方法

MySQL单实例重置密码的两种方法 在工作学习中,我们有时会忘记数据库的密码,下面是MySQL单实例密码重置的步骤. 说明: (1)[[email protected] ~]# cat /etc/redhat-release CentOS release 6.7 (Final) (2)[[email protected] ~]# mysql --version mysql  Ver 14.14 Distrib 5.7.13, for Linux (i686) using  EditLine wr

mysql.user表重置密码后出现表损坏问题

首先是发现了mysql数据库无论输入什么密码,都会直接进入数据库,没有验证.接下来开始入坑: 1 知道是因为my.ini文件中有    skip-grant-tables      可是当时不知道密码忘记了还是user表已经出现了异常,密码一直错误. 2 第二步,修改密码,可是mysql版本是5.7,按照password无法修改密码.于是直接在可视乎里加了一个password列,噩梦出现,password倒是加上了,密码列也修改成功了.skip也删除了,mysql也进去了,可是就是无法使用数据库

忘记 mysql 8.0 root 密码 怎么修改

本文copy自 Centos7重置Mysql 8.0.1 root 密码 问题产生背景: 安装完 最新版的 mysql8.0.1后忘记了密码,向重置root密码:找了网上好多资料都不尽相同,根据自己的问题总结如下: 第一步:修改配置文件免密码登录mysql vim /etc/my.cnf 1.2 在 [mysqld]最后加上如下语句 并保持退出文件: skip-grant-tables 1.3 重启mysql服务: service mysqld restart第二步免密码登录到mysql上:直接

Redhat 启动mysql失败及重置密码

cd usr/local/mysql/mysql5.6/bin [[email protected] bin]# service mysql-libs-5.1.73-8.el6_8.x86_64 startmysql-libs-5.1.73-8.el6_8.x86_64: unrecognized service[[email protected] bin]# service mysql startmysql: unrecognized service @参考文章及原文 更新:2013-08-2

【转帖】MYSQL 8.0 忘记密码的简单处理。--init-file

Copy From https://www.cnblogs.com/wangjiming/p/10363357.html mysql 不熟悉 但是感觉语法的确与oracle越来越像了. 感谢原作者 我感觉我自己记住这一种就可以了. 在c:\MySQL 目录下创建ResetPWD.txt文件,文件内容为 ALTER USER 'root'@'localhost' IDENTIFIED BY '123456'; 3.执行ResetPWD.txt文件 mysqld --init-file=c:\mys

linux mysql添加、删除用户、用户权限及mysql最大字段数量

1.  登录: mysql -u username -p 显示全部的数据库: show databases; 使用某一个数据库: use databasename; 显示一个数据库的全部表: show tables; 退出: quit; 删除数据库和数据表 mysql>drop database 数据库名; mysql>drop table 数据表名; 用户相关: 查看全部的用户: SELECT DISTINCT CONCAT('User: ''',user,'''@''',host,''';

linux mysql下忘记root密码解决办法

1 修改MySQL的登录设置 # vi /etc/my.cnf 在[mysqld]的中加上一句:skip-grant-tables  2 重新启动mysqld # /etc/init.d/mysqld restart  Stopping MySQL: [ OK ] Starting MySQL: [ OK ] 3 登录并修改MySQL的root密码 # /usr/bin/mysql  Welcome to the MySQL monitor. Commands end with ; or \g.

Linux安装mysql.8.0.12

1. linux安装mysql8.0.12,亲测可用. 以下是安装过程中出现的问题: 1 [[email protected] file]# systemctl start mysqld 2 Job for mysqld.service failed because the control process exited with error code. See "systemctl status mysqld.service" and "journalctl -xe"