解决mysql登录错误:'Access denied for user 'root'@'localhost'
作者:狼性 发布时间:2024-01-22 16:41:20
首先是不知道怎么忽然mysql用命令行,workbench都登录不了,都提示'Access denied for user 'root'@'localhost'。
数据库卸载重装了几次都不行。好像感觉数据清理不干净。解决的过程遇到的坑,这里记录分享下。
有效的操作记录下:
1、首先是跳过权限登录mysql,查看user表,
停止mysql服务~$ sudo service mysql stop
以安全模式启动MySQL~$ sudo mysqld_safe --skip-grant-tables &
注意:
可能提示mysqld_safe Directory '/var/run/mysqld' for UNIX socket file don't exist
解决方法:(笔者尝试发现必须加sudo)
sudo mkdir -p /var/run/mysqld
sudo chown mysql:mysql /var/run/mysqld
再次执行上面安全模式启动mysql ~$ sudo mysqld_safe --skip-grant-tables &
这次提示语句显示了,mysqld_safe Staring mysqld deamon with database from /var/lib/mysql
这次登录可以不用密码:mysql -u root 回车就登录了
sql语句查询mysql.user表的情况,如下:
加图片(以后补)
还有人提议如下这么做,没尝试
Open & Edit /etc/my.cnf or /etc/mysql/my.cnf, depending on your distro.
Add skip-grant-tables under [mysqld]
2、发现user的plugin为socket_plugin,改为mysql_native_password
修改root的plugin权限:
update mysql.user set authentication_string=PASSWORD('newPwd'), plugin='mysql_native_password' where user='root';
flush privileges;
quit;
(注意这里修改一定要正确,免得跟笔者一样,粗心的把plugin修改的内容少些了一个字母,又有下面的折腾)
3、user表还有其他用户,root不能登录,用其他的用户登录也行啊。查询了发现一下有效操作:
在mysql的安装目录,一般在 /etc/mysql里面有个debain.cnf文件,里面有user,password,用这个用了登录,密码最后复制,然后就又可以修改user表root的plugin,操作同上。
重启mysql服务, sudo service mysql restart;
用root用户就可以登录。
参考博客:
MySQL ERROR 1698 (28000) 错误 https://www.jb51.net/article/117566.htm
mysql 查看当前使用的配置文件my.cnf的方法 https://www.jb51.net/article/110395.htm
linux -- Ubuntu查看修改mysql的登录名和密码、安装phpmyadmin https://www.jb51.net/article/174925.htm
总结
以上所述是小编给大家介绍的解决mysql登录错误:''Access denied for user ''root''@''localhost'',希望对大家有所帮助!
来源:https://www.cnblogs.com/langxing/archive/2019/11/23/11904737.html
猜你喜欢
- 在XHTML中定义ID、CLASS都用得上,主要是方面CSS定义样式时能一眼看穿。所以,CSS命名仅作参考。(1)页面结构类容器: cont
- auto_api_test开发环境: Pycharm开发语言&版本: python3.7.8测试框架: Pytest、测试报告: A
- 本文主要内容python MySQLdb数据库批量插入insert,更新update的:1.python MySQLdb的使用,写了一个基类
- 本文实例为大家分享了python3.5基于TCP实现文件传输的具体代码,供大家参考,具体内容如下服务器代码# _*_ coding:utf-
- 在pycharm上依次选择打开File->settings->Editor->File andCode Templates
- 协程的定义协程(Coroutine),又称微线程,纤程。(协程是一种用户态的轻量级线程)作用:在执行 A 函数的时候,可以随时中断,去执行
- 一.Oracle日期和字符串互相转换1.1 日期转字符串1.1.1 yyyy年mm月dd日hh24時mi分ss秒手动拼接年月日select
- 为了防止机器人频繁登陆网站或者破坏分子恶意登陆,很多用户登录和注册系统都提供了图形验证码功能。验证码(CAPTCHA)是“Completel
- 一、Python urllib 模块是什么urllib 模块是 Python 标准库,其价值在于抓取网络上的 URL 资源,入门爬
- 前言上位机实战开发先放一放,今天来学习一个新的内容—NumPy的使用1 一维数组例:用普通方法生成一维数组num = [0 for i in
- 目录一、前言二、方法1、代码2、运行一、前言SpringBoot作为后端开发框架,有强大且方便的处理能力。但是作为一个结合数据分析+前台展示
- 他们都可以把 x 变成一个布尔类型的值:>>> x = 123>>> not not xTrue>
- 如下所示:import pandas as pdcontent = ['T', 'F'] * 10data
- 首先比较下return 与 yield的区别:return:在程序函数中返回某个值,返回之后函数不在继续执行,彻底结束。yield: 带有y
- 这篇文章主要介绍了Python文本处理简单易懂方法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋
- 本文实例讲述了python对象转字典的两种实现方式。分享给大家供大家参考,具体如下:一. 方便但不完美的__dict__对象转字典用到的方法
- smtp是直接调用163邮箱的smtp服务器,需要在163邮箱中设置一下。outlook发送就是Python直接调用win32方式。调用程序
- 一、作用创建一个新的Tensor,该Tensor的type和device都和原有Tensor一致,且无内容。二、使用方法如果随机定义一个大小
- 今天学习了用python生成仿真数据的一些基本方法和技巧,写成博客和大家分享一下。 本篇博客主
- python-opencv获取二值图像轮廓及中心点坐标代码:groundtruth = cv2.imread(groundtruth_pat