[英]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.