常出现的Access denied for user 'root'@'localhost' (using password: YES)及其相关问题解决
2015-02-03 17:07
609 查看
/**
*author:田元
*
*company:whu eis
*contact:tianyuan168326@outlook.com
*
**/
从重装数据库开始:
软件版本:php 5.5.0 /mysql 5.0.1
安装平台:微软web程序安装平台
问题所在
php code
{
$sqliconnect=new mysqli("localhost","root","52ziji","test");
$query_result=$sqliconnect->prepare("select * from currentorder");
}
“Connect failed: Access denied for user 'root'@'localhost' (using password: YES)” from php function
解决方法:<1>猜测为权限不足,经过stackoverflow,大体为一个解决方法(eg:https://stackoverflow.com/questions/6445917/connect-failed-access-denied-for-user-rootlocalhost-using-password-yes):
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' ;
mysql>flush privileges;
即赋全部权限。
经实验,问题未得到解决;
<2>直接清空root密码(eg:https://stackoverflow.com/questions/11223235/mysql-root-access-from-all-hosts):
mysql>update user set host='localhost' where user='root';
提示未选择数据表
mysql>use mysql;
再次执行,命令成功;
更新phpcode
{
$sqliconnect=new mysqli("localhost","test");
$query_result=$sqliconnect->prepare("select * from currentorder");
}
打印出的连接信息正常,出现新问题:$query_result打印出的信息为 BOOL(FALSE);
解决方法:在stackoverflow也发现此类问题(eg:https://stackoverflow.com/questions/8702241/mysqli-prepared-statement-returning-false)
根据don4of4网友回答,加入错误控制:
更新phpcode
{
if(!$query_result)
{
die("result erro:".$sqliconnect->error);
}
}
打印出的错误为 didn't select database;
于是参考官方手册(eg:http://php.net/manual/en/class.mysqli.php)
mysqli->select_db可以手动选择数据库;
更新phpcode{
$sqliconnect=new mysqli("localhost","test");
$sqliconnect->select_db("test");
}
调试信息出现了久违的object(mysqli_stmt)
至此,问题得到完整解决。
ps:我再进行mysqli的__construct()的时候已经传入了db_name,为何不起作用呢?
*author:田元
*
*company:whu eis
*contact:tianyuan168326@outlook.com
*
**/
从重装数据库开始:
软件版本:php 5.5.0 /mysql 5.0.1
安装平台:微软web程序安装平台
问题所在
php code
{
$sqliconnect=new mysqli("localhost","root","52ziji","test");
$query_result=$sqliconnect->prepare("select * from currentorder");
}
“Connect failed: Access denied for user 'root'@'localhost' (using password: YES)” from php function
解决方法:<1>猜测为权限不足,经过stackoverflow,大体为一个解决方法(eg:https://stackoverflow.com/questions/6445917/connect-failed-access-denied-for-user-rootlocalhost-using-password-yes):
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' ;
mysql>flush privileges;
即赋全部权限。
经实验,问题未得到解决;
<2>直接清空root密码(eg:https://stackoverflow.com/questions/11223235/mysql-root-access-from-all-hosts):
mysql>update user set host='localhost' where user='root';
提示未选择数据表
mysql>use mysql;
再次执行,命令成功;
更新phpcode
{
$sqliconnect=new mysqli("localhost","test");
$query_result=$sqliconnect->prepare("select * from currentorder");
}
打印出的连接信息正常,出现新问题:$query_result打印出的信息为 BOOL(FALSE);
解决方法:在stackoverflow也发现此类问题(eg:https://stackoverflow.com/questions/8702241/mysqli-prepared-statement-returning-false)
根据don4of4网友回答,加入错误控制:
更新phpcode
{
if(!$query_result)
{
die("result erro:".$sqliconnect->error);
}
}
打印出的错误为 didn't select database;
于是参考官方手册(eg:http://php.net/manual/en/class.mysqli.php)
mysqli->select_db可以手动选择数据库;
更新phpcode{
$sqliconnect=new mysqli("localhost","test");
$sqliconnect->select_db("test");
}
调试信息出现了久违的object(mysqli_stmt)
至此,问题得到完整解决。
ps:我再进行mysqli的__construct()的时候已经传入了db_name,为何不起作用呢?
相关文章推荐
- 使用MySQL API时出现如下问题的解决方法:Access denied for user 'root'@'localhost' (using password: YES)
- MySql 出现ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES).问题解决方案
- 解决 ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES) 问题
- 238,安装mysql出现Access denied for user 'root'@'localhost' (using password: YES)的问题
- wampserver登陆mysql出现#1045 - Access denied for user 'root'@'localhost' (using password: YES) 问题
- 解决 ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES) 问题
- ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)问题的解决办法
- 解决 ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES) 问题
- Access denied for user 'root'@'localhost' (using password: YES) 问题解决
- 解决 ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES) 问题
- 解决 ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES) 问题
- Linux 解决 ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES) 问题。
- 解决 ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES) 问题
- 解决 ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES) 问题
- 登陆MySQL出现error:‘Access denied for user 'root'@localhost (using password :YES)'解决方法
- 解决 ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES) 问题
- mysql 出现 1045 access denied for user 'root'@'localhost' using password yes 解决办法
- 解决 ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES) 问题
- access denied for user 'root'@'localhost'(using password: YES)问题解决办法.
- java.sql.SQLException: Access denied for user 'root'@'localhost' (using password: YES)的一种解决方法