mysql Access denied for user 'root'@'localhost' (using password: YES)

【现象说明】

C/S程序远程訪问正常,本地訪问报下面异常

MySql.Data.MySqlClient.MySqlException (0x80004005): Authentication to host 'localhost' for user 'root' using method 'mysql_native_password' failed with message: Access denied for user 'root'@'localhost' (using password: YES) ---> MySql.Data.MySqlClient.MySqlException (0x80004005): Access denied for user 'root'@'localhost' (using password: YES)

配置文件例如以下:

<add name="RemoteConnString" connectionString="Database='mealbooker';Data Source='localhost';User Id='root';Password='123456';charset='gb2312';pooling=true" providerName="MySql.Data.MySqlClient"/>

【分析】

权限问题吧,查看下mysql数据库中的user表

发现localhost以下值为空,于是connection string中的localhost 改为 127.0.0.1。測试通过~~~

【解决】

配置文件里改为localhost,訪问数据库正常;同一时候mysql command line工具输入password后一闪而过问题同一时候解决。

重新启动之后又訪问不了,继续上面的思路改动:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvc2hpbmV5Y2g=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" >

另,mysql command line工具一闪而过,方法參见这里

还有一个权限相关问题:

Error Code: 1370 execute command denied to user ‘root‘@‘localhost‘ for routine

使用grant execute on procedure/function dbname.fname TO ‘root‘@‘localhost‘;

还有一password相关问题(调试机放几天后就没法远程訪问了,rootpassword被修改,不明原因):

Authentication to host ‘10.10.123.6‘ for user ‘root‘ using method ‘mysql_native_password‘ failed with message: Access denied for user ‘root‘@‘10.10.123.5‘ (using password: YES) ---> MySql.Data.MySqlClient.MySqlException (0x80004005): Access denied for user
‘root‘@‘10.10.123.5‘ (using password: YES)

改动password语句例如以下:

然后还要给远程用户非配权限

grant all privileges on *.* to ‘root‘@‘%‘ with
grant option;

mysql Access denied for user 'root'@'localhost' (using password: YES)

时间: 2025-01-19 21:58:49

mysql Access denied for user &#39;root&#39;@&#39;localhost&#39; (using password: YES)的相关文章

解决mysql“Access denied for user &#39;root&#39;@&#39;localhost&#39;”

解决mysql“Access denied for user 'root'@'localhost'” 分类: linux 2011-01-14 00:23 147547人阅读 评论(3) 收藏 举报 mysqluseraccessmanager数据库system # mysql -uroot -pEnter password:ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO) 使用网

解决mysql&quot;Access denied for user&#39;root&#39;@&#39;IP地址&#39;&quot;问题

在按照前面文章中方法搭建Mysql数据库之后,发现其他机器还是不能访问, 参考以下文章对权限进行修改之后,发现本地机器中root不能访问了. http://www.cnblogs.com/ycsfwhh/archive/2012/08/07/2626597.html 后来使用 select host, user, grant_priv from user; 发现grant_priv一列有问题,只有有grant_priv的用户才能对其他用户赋予权限. 修改成以下这样,就好了. +---------

phpmyadmin mysql Access denied for user &#39;root&#39;@&#39;localhost&#39;问题解决

centos6.4 32位的vps上装了lnmp以后,phpmyadmin无法连接mysql服务器,ssh命令行里mysql -uroot -p 命令后老是出现拒绝连接的情况.php程序里也是拒绝连接.尝试过修改phpmyadmin的config.inc.php文件,尝试过修改my.cnf文件,尝试过修改php.ini文件,都不行.连 lnmp.org官方都找不到解决办法. 网上找了很多地方,脑袋都炸了..终于找到解决办法.. 解决办法地址:http://bbs.vpser.net/thread

Mysql Access denied for user &#39;root&#39;

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO) 解决方法 原密码为空,更改root密码 1 # service mysql stop 2 # mysqld_safe --user=mysql --skip-grant-tables --skip-networking 3 4 # mysql -u root mysql 5 mysql> update user set passwo

linux mysql access denied for user ‘root’@’localhost&#39;(using password:YES)

linux安装完mysql后,使用程序连接报以上错误 解决方法,重新设置密码,步骤如下 1.先停掉原来的服务 service mysqld stop 2.使用安全模式登陆,跳过密码验证 mysqld_safe --user=mysql --skip-grant-tables --skip-networking& 3.登陆 mysql -uroot mysql 4.修改密码 mysql > update user set authentication_string = password('12

mysql Access denied for user &#39;root&#39;@&#39;localhost&#39; (using password: YES)

[现象说明] C/S程序远程访问正常,本地访问报以下异常 MySql.Data.MySqlClient.MySqlException (0x80004005): Authentication to host 'localhost' for user 'root' using method 'mysql_native_password' failed with message: Access denied for user 'root'@'localhost' (using password: Y

Web项目打成war包部署到tomcat时报MySQL Access denied for user &#39;root&#39;@&#39;localhost&#39; (using password: YES)错误解决方案

Web项目使用使用root账号root密码进行部署,通过Eclipse加载到Tomcat服务器可以发布成功,打成war包放到tomcat的webapps目录无法发布成功,报错: jdbc.properties涉及Mysql配置: 错误很明显,与MySQL密码有关,但是两种方式部署项目使用的jdbc.properties配置文件是一样的.所以肯定不是密码不对引起的,只好找度娘,O(∩_∩)O哈哈~. 网上大部分帖通过运行mysql -u root -p命令登录时也会报这个错误,所以,我就尝试这种方

Navicat工具链接 mysql&quot;Access denied for user&#39;root&#39;@&#39;IP&#39;&quot; 用户远程赋值

如题 用Navicat远程连接数据库出现错误   给用户添加权限 连接MySQL mysql -uroot -p: use mysql; 更改权限 使用grant all privileges on来更改用户对应某些库的远程权限 grant all privileges on 库名.表名 to '用户名'@'IP地址' identified by '密码' with grant option; flush privileges; 示例 GRANT ALL PRIVILEGES ON *.* TO

navicat连接虚拟机中mysql&quot;Access denied for user&#39;root&#39;@&#39;IP地址&#39;&quot;问题

登陆要链接的服务器上的mysql 命令:mysql -uroot -p123456 然后执行 GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION; 'root'@'%':mysql的用户名, %带代表任意的ip都可访问 好了成功 navicat连接虚拟机中mysql"Access denied for user'root'@'IP地址'"问题 原文地址:https://ww