![](https://iknow-base.cdn.bcebos.com/lxb/notice.png)
mysql5.7.12报错:Access denied for user 'root'@'localhost' (using password: YES) 无法连接数据库 50
展开全部
1.可能密码不对。
错误原因:可能是用户名或密码不对,或者权限不够;
解决方法:检查用户名和密码以及权限,然后再连接。
2.本地连接,密码权限都对,但是无法连接。
错误原因:数据库本地连接默认使用的是/tmp/mysql.sock去连接数据库的,如果数据库的sock文件不是/tmp/mysql.sock,客户端找不到这个文件就报错。
解决方法:找到数据库用的sock文件,然后使用-S参数让客户端使用这个文件,或者是在my.cnf中的[client]下面添加socket配置使其和实际的一样。
参考资料
CSDN.CSDN[引用时间2018-1-9]
展开全部
解决了没有?我这个也是这样的问题,密码也没问题,权限也没问题,可是就是连接不上mysql,我一个新手学习,搞了好几天了,好心累,不知道数据库是不是坏了?还是电脑坏了?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐于2018-02-27
展开全部
1. kill mysql进程
2.把下面这段保存在一个文件中,然后给任何人读写的权限。123456 是自己设的密码:
UPDATE mysql.user
SET authentication_string = PASSWORD('123456'), password_expired = 'N'
WHERE User = 'root' AND Host = 'localhost';
FLUSH PRIVILEGES;
3.输入一下命令:yourfile是你的文件的完全路径
mysqld_safe --init-file=yourfie &
4.以后应该就可以 用root 的账号和密码登录了。
2.把下面这段保存在一个文件中,然后给任何人读写的权限。123456 是自己设的密码:
UPDATE mysql.user
SET authentication_string = PASSWORD('123456'), password_expired = 'N'
WHERE User = 'root' AND Host = 'localhost';
FLUSH PRIVILEGES;
3.输入一下命令:yourfile是你的文件的完全路径
mysqld_safe --init-file=yourfie &
4.以后应该就可以 用root 的账号和密码登录了。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以使用具体ip访问mysql服务器 grant all privileges on *.* to username@"%" identified by "password";
mysql -u username -p passwowrd
追问
mysql 本地无法登陆
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2016-05-31
展开全部
几个可能:
1. 用户名、密码错误,所以无法访问
2. 数据库端设置了IP访问权限,不能用localhost访问。换成具体的IP地址试试。
3. 数据库端设置了相关操作权限,该用户没有create权限。
mysql -u root -p
mysql>use mysql;
mysql>select 'host' from user where user='root';
mysql>update user set host = '%' where user ='root';
mysql>flush privileges;
mysql>select 'host' from user where user='root';
第一句是以权限用户root登录
第二句:选择mysql库
第三句:查看mysql库中的user表的host值(即可进行连接访问的主机/IP名称)
第四句:修改host值(以通配符%的内容增加主机/IP地址),当然也可以直接增加IP地址
第五句:刷新MySQL的系统权限相关表
第六句:再重新查看user表时,有修改。。
重起mysql服务即可完成。
1. 用户名、密码错误,所以无法访问
2. 数据库端设置了IP访问权限,不能用localhost访问。换成具体的IP地址试试。
3. 数据库端设置了相关操作权限,该用户没有create权限。
mysql -u root -p
mysql>use mysql;
mysql>select 'host' from user where user='root';
mysql>update user set host = '%' where user ='root';
mysql>flush privileges;
mysql>select 'host' from user where user='root';
第一句是以权限用户root登录
第二句:选择mysql库
第三句:查看mysql库中的user表的host值(即可进行连接访问的主机/IP名称)
第四句:修改host值(以通配符%的内容增加主机/IP地址),当然也可以直接增加IP地址
第五句:刷新MySQL的系统权限相关表
第六句:再重新查看user表时,有修改。。
重起mysql服务即可完成。
追问
1、用户名、密码正确。
2、尝试使用具体IP地址,仍出现相同错误信息。
3、root用户权限我没有改过,应该不会有问题。
下面的命令无法使用。第一步就登录失败了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询