MySQL密码正确却无法本地登录的解决方法
MySQL root密码正确,却怎么也无法从本地登录MySQL,提示
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
这里后来经高人指点才发现mysql库中的user表缺少一个root指向host:localhost的数据项,只有一个root指向host:主机名的数据项,故怎么也无法利用root账户登录MySQL。
总结一点就是root账户缺失了访问localhost主机的账户信息,导致无法本地登录。
模拟测试如下:
那有什么办法恢复root登录呢?
这里记录一下今天遇到的纠结事情:
首先kill掉MySQL进程然后在启动mysql的参数中加入
--skip-grant-tables
会发现这时无密码就可以登录mysql了。
当然我们还必须修复root账户丢失的数据项。
这里有两种解决方案:
第一种是因为root账户初始的时候有3条记录,包含root对应localhost,hostname,127.0.0.1三条账户数据,我们可以update host为其他两项中一项为localhost即可。
第二种是直接insert一条记录,host为localhost即可
总结一下:即使root的host包含了主机名,127.0.0.1那么依然是无法正常登录的,这里必须要有localhost的host才行。
相关推荐
-
phpmyadmin报错:#2003 无法登录 MySQL服务器的解决方法
通过phpmyadmin连接mysql数据库时提示:"2003 无法登录 MySQL服务器"...很明显这是没有启动mysql服务,右击我的电脑-管理-找到服务,找到mysql启动一下,,是不是启动有报错: "无法启动mysql服务 错误1067:进程意外中止 " 然后就baidu google吧,多是说禁远程连接,要改my.ini文件,也有说防火墙的,总之对症下药. 不过同样的报错,导致它的原因并不是都是同样的.这就是看自己的经验和对问题的钻研了,好了不多 说了,
-
mysql登录警告问题的解决方法
一.前言 我们在登录mysql的时候经常会看到一句警告: Warning: Using a password on the command line interface can be insecure. 这让人看着很不舒服,并且当在写脚本的时候这个警告输出到屏幕上更让人感觉难受. 二.解决办法 这个警告是mysql自带的,他是想告诉你在屏幕上直接输入mysql密码并显示是不安全的. 1.解决办法一(看一下就行没有任何用) 这个解决办法相对简单,在你登录mysql的时候-p后面不紧跟任何字符串.
-
php+MySQL实现登录时验证登录名和密码是否正确
直入主题,先看php校验登录名和密码是否正确的代码: <?php $servername = "服务器名"; $username = "账户名"; $password = "密码"; $dbname = "数据库名"; ?> <?php // Session需要先启动. session_start(); //判断uname和pwd是否赋值 if(isset($_POST['uname']) &&
-
MySql登录时闪退的快速解决办法
之前mysql用着好着,可是今天在启动mysql后输入密码出现了闪退,在任务管理器中发现mysql服务没有启动,当手动启动时提示拒绝访问.在网上查找原因发现问题所在. 问题原因:mysql服务没有安装. 解决办法: 在cmd操作下找到mysql的安装目录(注意要用管理员身份运行cmd) 在 mysql bin目录下 以管理员的权限 执行 mysqld -install命令 然后仍然以管理员的权限 net start mysql 开启Mysql服务了. 输入mysql -u root登录mysql
-
关于MYSQL 远程登录的授权方法 命令
方法一.本地登入mysql,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,将"localhost"改为"%" #mysql -u root -proot mysql>use mysql; mysql>update user set host = '%' where user = 'root'; mysql>select host, user from user;
-
mysql登录遇到ERROR 1045问题解决方法
在Windows系统中,mysql登录的时候出现了这样的错误:ERROR 1045: Access denied for user: 'root@localhost' (Using password: YES) 从网上找了一些办法,终于得到了解决,现在记录一下具体的解决方法: 复制代码 代码如下: c:\>sc stop mysql c:\>mysqld --defaults-file="C:\MySQL\MySQLServer6.0\my.ini" --console -
-
linux下讲解MySQL安装与登录方法
Fedora5下配置MySQL (很有参考价值的 MySQL资料 包括如何在linux文件系统移动MySQL数据库的位置) 一.下载MySQL安装文件 完全安装MySQL需要下面6个文件: MySQL-server-community-5.1.26-0.rhel4.i386.rpm MySQL-client-community-5.1.26-0.rhel4.i386.rpm MySQL-shared-community-5.1.26-0.rhel4.i386.rpm MySQL-devel-co
-
解决 phpmyadmin #2002 无法登录 MySQL 服务器
解决 .#2002 无法登录 MySQL 服务器 将config.sample.inc.php复制成config.inc.php 出现这个错误,表示没有连接到数据库.修改config.inc.php文件, 复制代码 代码如下: 将$cfg['Servers'][$i]['host'] = 'localhost'; 改为$cfg['Servers'][$i]['host'] = '127.0.0.1'; 或者 修改 php.ini : mysql.default_socket = /tmp/mys
-
mysql登录报错提示:ERROR 1045 (28000)的解决方法
本文分析了mysql登录报错提示:ERROR 1045 (28000)的解决方法.分享给大家供大家参考,具体如下: 一.问题: 公司linux系统的mysql数据库root用户设置过密码,但常常用命令'mysql -u root -p'登录报错,有时又能登录.登录报错信息为: [root@localhost ~]# mysql -u root -p Enter password: ERROR 1045 (28000): Access denied for user 'root'@'localho
-
php+mysql实现简单登录注册修改密码网页
对于php和mysql的连接在许多blog上都有说明,为了将mysql中的查询,修改,插入等操作掌握,本文介绍了一下如何采用mysql做一个登录注册修改密码的网页. 其中,如下 1.登录-即为对数据库中的内容给予查询,并验证html中的信息与数据库是否匹配: 2.注册-即为对数据库中的内容进行插入,注册帐号与密码: 3.修改密码-即为对数据库中的内容进行修改. 这三个操作,我用了8个php和html文本来建立 具体见代码部分 1.登录的主界面index.html: <p> </p>
随机推荐
- C# 正则表达式经典分类整理集合手册第1/3页
- Erlang中的函数与流程控制介绍
- 控制页面按钮在后台执行期间不重复提交的JS方法
- 基于vue2.0+vuex的日期选择组件功能实现
- angular中的cookie读写方法
- DOS自带的批处理命令
- Spring Boot MyBatis 连接数据库配置示例
- IOS开发 UIAlertController详解及实例代码
- 容易造成JavaScript内存泄露几个方面
- 学习JavaScript正则表达式
- js+css实现回到顶部按钮(back to top)
- javascript检测移动设备横竖屏
- mac下使用brew配置环境的步骤分享
- 使用C语言递归与非递归实现字符串反转函数char *reverse(char *str)的方法
- C# mysql 插入数据,中文乱码的解决方法
- 离开当前页面前使用js判断条件提示是否要离开页面
- C#实现写入文本文件内容的方法
- CHM电子书木马制作攻略教程
- js播放wav文件(源码)
- js Dialog 实践分享