加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – PDO无法连接,但mysql_connect可以(没有PW)

发布时间:2020-12-13 16:45:08 所属栏目:PHP教程 来源:网络整理
导读:我在这里真的有一个奇怪的问题,它真的开始惹恼我了.这是关于连接的不同行为.我只是想设置Cake PHP,但是PDO无法连接到mysql Server. Okey,一步一步:这是一台新电脑,我刚刚安装了XAMPP(在Win7上)并下载了CakePHP.没有其他事情做过.在phpMyAdmin上,我使用PW’t
我在这里真的有一个奇怪的问题,它真的开始惹恼我了.这是关于连接的不同行为.我只是想设置Cake PHP,但是PDO无法连接到mysql Server.

Okey,一步一步:这是一台新电脑,我刚刚安装了XAMPP(在Win7上)并下载了CakePHP.没有其他事情做过.在phpMyAdmin上,我使用PW’test’创建了一个用户’test’,他拥有数据库’test’.简单吧?

这里是phpMysqlAdmin中User / Rights表的行:

User Host Password Global Rights GRANT
test %    Yes      USAGE         No

现在,到真正的问题:

这有效:

$link = mysql_connect('localhost','test'); //<- not using the 3. parameter,'password'

但是,什么应该工作,不是:

$link = mysql_connect('localhost','test','test'); //<- using the 3. parameter,'password'

而且由于我似乎无法“删除”PDO的’使用密码:是’,我无法连接PDO(和蛋糕使用PDO):

$dbh = new PDO('mysql:host=localhost;dbname=test','test');

错误消息:

Error!: SQLSTATE[28000] [1045] Access denied for user
‘test’@’localhost’ (using password: YES)

它不能太复杂,我只想连接到新安装的数据库,并使用正确的凭据.我究竟做错了什么?我通过许多类似的问题阅读,但没有为我自己的问题找到解决方案.

是的,密码真的是’测试’ – 我不知道为什么mysql_connect()whitout PW,可以连接 – 是否默认使用用户名作为PW?

这真的不能那么难

谢谢您的帮助,
玩的开心.

编辑(回答问题)

这里是DB权限的条目(在user:test中): – 用户似乎拥有DB’test’的所有权限

Database Rights         GRANT 
test     ALL PRIVILEGES Nein

解决方法

GRANT ALL ON测试.*测试@ localhost IDENTIFIED BY“test”;

在mysql shell上运行上面的查询,一切都应该工作.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读