错误信息:Access denied for user 'kscm'@WIN-WP4X5EPPTIO'(useing password:YES)
情景A:
解答A:
情景B:
解答B:
原以为是像上次出现密码有问题??因此按照以下步骤进行了密码更新:
结果,重新登录仍然无效.
同事说,其实密码是已经改了,大部分跟授权有关.
因此,他按照以下步骤进行了处理:
mysql>use mysql;
mysql>update user set host = '111.111.111.158' where user = 'root';
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY PASSWORD '*00A51F3F48415C7D4E8908980D443C29C69B60C9';
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'111.111.111.160' IDENTIFIED BY PASSWORD '*00A51F3F48415C7D4E8908980D443C29C69B60C9';
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY PASSWORD'*00A51F3F48415C7D4E8908980D443C29C69B60C9';
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'dubabuild' IDENTIFIED BY PASSWORD '*00A51F3F48415C7D4E8908980D443C29C69B60C9';
mysql -u root -h 10.20.239.160
mysql -u root -h 127.0.0.1
mysql -u root -h localhost
这里候要求你输入密码,直接输入新密码,登录成功.
总结:如果出现类似这样的问题,一检查账号密码是否有误,二检查援权问题.
情景A:
- 明明本机上的客户端可以正常连接数据库,但程序部署起来还是报错.
- 明明本机的电脑名称WIN-WP4X5EPPTIO已改名了,也重启了电脑,但是连接时还是显示旧的信息..
解答A:
- 程序部署连接数据库的账号信息有误
- 在my.ini文件中找到[mysqld],在此段的配置信息中添加skip-name-resolve,这样客户端请求连接时就会用IP地址了.
情景B:
用新创建的用户执行一些SQL脚本(仓库新数据库及表),但执行失效,反应过来估计权限不够,应该用root账号.
然后重新想用root账号连接,却怎么也连不上去了.前几分钟还连过一次,现怎么不行了.解答B:
原以为是像上次出现密码有问题??因此按照以下步骤进行了密码更新:
- 首先,在my.ini文件中的[mysqld]段配置信息内加上skip-grant-tables
- 重启mysql服务
- 来到mysql安装目录下的bin,打开cmd,执行mysql -u root,这时候要你输入密码,回车即可
- 在mysql>环境下执行以下几条命令:
mysql>use mysql;
mysql>UPDATE user SET password=PASSWORD("5688") WHERE user='root';
mysql>FLUSH PRIVILEGES;
结果,重新登录仍然无效.
同事说,其实密码是已经改了,大部分跟授权有关.
因此,他按照以下步骤进行了处理:
- 首先,在my.ini文件中的[mysqld]段配置信息内加上skip-grant-tables
- 重启mysql服务
- 来到mysql安装目录下的bin,打开cmd,执行mysql -u root,这时候要你输入密码,回车即可
- 在mysql>环境下执行以下命令,目的是让111.111.111.158机子可以用root账号登录
mysql>use mysql;
mysql>update user set host = '111.111.111.158' where user = 'root';
- 利用111.111.111.158机子的客户端,竟然可以正常连接.且继续执行以下命令,目的是让本机可以连接
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY PASSWORD '*00A51F3F48415C7D4E8908980D443C29C69B60C9';
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'111.111.111.160' IDENTIFIED BY PASSWORD '*00A51F3F48415C7D4E8908980D443C29C69B60C9';
- 结果无效,不死心的参考资料继续执行:
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY PASSWORD'*00A51F3F48415C7D4E8908980D443C29C69B60C9';
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'dubabuild' IDENTIFIED BY PASSWORD '*00A51F3F48415C7D4E8908980D443C29C69B60C9';
- 回到本机,执行以下命令行,都一样报"Access denied"的错误信息
mysql -u root -h 10.20.239.160
mysql -u root -h 127.0.0.1
mysql -u root -h localhost
- 继续在网络上查找解决的方法,看到一则信息后改变了连接方式即执行mysql -u root -p,
这里候要求你输入密码,直接输入新密码,登录成功.
- 回到mysql administrator工具,利用root账号采用新的密码,一样登录成功了.
- 然后,利用mysql admini工具,保留%/localhost的授权连接,退出再重新登录正常了.
总结:如果出现类似这样的问题,一检查账号密码是否有误,二检查援权问题.
No comments:
Post a Comment