繁体   English   中英

使用PDO连接MySQL

[英]Connect MySQL Using PDO

我正在使用以下字符串连接到本地主机上的mysql数据库(我没有root访问权限)。 我直接阅读了有关Stack Overflow的相关文章。

我定义了这个PHP文件:

ini_set('mysqli.default_socket', '/tmp/mysql5.sock');
ini_set('mysql.default_socket', '/tmp/mysql5.sock');
ini_set('pdo_mysql.default_socket', '/tmp/mysql5.sock');

当我使用时:

'mysql:localhost:/tmp/mysql5.sock;dbname='.DB_NAME.';charset=utf8'

要么

'mysql:unix_socket:/tmp/mysql5.sock;dbname='.DB_NAME.';'

我懂了

SQLSTATE [HY000] [2002]没有这样的文件或目录

当我使用时:

'mysql:host=127.0.0.1;dbname='.DB_NAME.';'

我懂了

SQLSTATE [HY000] [2002]连接被拒绝

任何人都可以看一下,非常感谢!

正如我在评论中提到的那样,我真的不知道为什么要对MySQL连接使用套接字。 另外,在试用中,您始终会缺少用户名和密码。 所以请尝试这样的事情:

$pdo = new PDO('mysql:host=localhost;dbname='.DBNAME, 'user', 'password');

我有相同的问题,并通过在主机中添加“ unix_socket”来解决该问题,如下所示:

$host = 'localhost;unix_socket=/tmp/mysql5.sock';

所以你会有

'mysql:host=' .$host .';dbname='.DB_NAME.';'

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM