龙空技术网

mysql错误代码1045不能登录的原因与解决方法

金涨嵉 342

前言:

今天兄弟们对“mysql创建函数报错”可能比较关切,小伙伴们都想要知道一些“mysql创建函数报错”的相关内容。那么小编同时在网摘上网罗了一些关于“mysql创建函数报错””的相关资讯,希望看官们能喜欢,我们快快来学习一下吧!

错误如下:1045 Access denied for user 'root'@'localhost' (using password:YES)

想起来有可是在navicat添加的root@'%'用户,可能密码和现在新版本5.7的加密不同了,导致密码不对.

所以解决方法是更新用户密码.

注意5.7版本密码保存的列是 authentication_string ,密码要用函数password加密.

更新密码的SQL是 update user set authentication_string=password('密码') where user="root";

下面是Windows平台下操作步骤:

配置文件my.ini ,在mysqld下面添加skip-grant-tables,意思是可以直接回车登录,保存退出。重启mySQL,然后运行cmd

输入mysql -u root -p就可以不用密码登录了,出现password:的时候直接回车可以进入。

1.切换到mysql数据库:use mysql;

2.给root用户设置新密码,

mysql>update user set authentication_string=password('密码') where user="root";

3.刷新数据库mysql> flush privileges;

4.再修改my.ini,把刚加入的"skip-grant-tables"这行删除或者添加#注释,保存退出再重启mysql服务就可以了。

一些参考命令

#删除之前配置drop user 'root'@'%';

#配置远程登录CREATE USER 'root'@'%' IDENTIFIED BY password('你的密码');

#授权 GRANT ALL ON *.* TO 'root'@'%';

#更新权限 flush privileges;

#查看用户,主机,加密方法 select user,host,plugin from user;

标签: #mysql创建函数报错