driver.class.php line: 109,Thinkphp3.2.x在linux下使用PDO时报SQLSTATE[HY000] [2002] No such file or directo...

报错信息如下::(

SQLSTATE[HY000] [2002] No such file or directory

错误位置

FILE: /phpstudy/www/mmm/ThinkPHP/Library/Think/Db/Driver.class.php  LINE: 109

TRACE

#0 /phpstudy/www/mmm/ThinkPHP/Library/Think/Db/Driver.class.php(109): E('SQLSTATE[HY000]...')

#1 /phpstudy/www/mmm/ThinkPHP/Library/Think/Db/Driver.class.php(1075): Think\Db\Driver->connect()

#2 /phpstudy/www/mmm/ThinkPHP/Library/Think/Db/Driver/Mysql.class.php(47): Think\Db\Driver->initConnect(true)

#3 /phpstudy/www/mmm/ThinkPHP/Library/Think/Model.class.php(138): Think\Db\Driver\Mysql->getFields('inkks_xin')

#4 /phpstudy/www/mmm/ThinkPHP/Library/Think/Model.class.php(126): Think\Model->flush()

#5 /phpstudy/www/mmm/ThinkPHP/Library/Think/Model.class.php(1458): Think\Model->_checkTableInfo()

#6 /phpstudy/www/mmm/ThinkPHP/Library/Think/Model.class.php(101): Think\Model->db(0, '', true)

#7 /phpstudy/www/mmm/ThinkPHP/Common/functions.php(621): Think\Model->__construct('xin', '', '')

#8 /phpstudy/www/mmm/appx/Home/Controller/IndexController.class.php(9): M('xin')

#9 [internal function]: Home\Controller\IndexController->index()

#10 /phpstudy/www/mmm/ThinkPHP/Library/Think/App.class.php(173): ReflectionMethod->invoke(object(Home\Controller\IndexController))

#11 /phpstudy/www/mmm/ThinkPHP/Library/Think/App.class.php(110): Think\App::invokeAction(object(Home\Controller\IndexController), 'index')

#12 /phpstudy/www/mmm/ThinkPHP/Library/Think/App.class.php(204): Think\App::exec()

#13 /phpstudy/www/mmm/ThinkPHP/Library/Think/Think.class.php(120): Think\App::run()

#14 /phpstudy/www/mmm/ThinkPHP/ThinkPHP.php(97): Think\Think::start()

#15 /phpstudy/www/mmm/index.php(7): require('/phpstudy/www/m...')

#16 {main}

问题出在mysql.sock这个进程socket连接文件的位置没有定义, 系统就会报找不到文件。

解决方案: 调整php.ini和my.cnf

一般主机环境都把mysql.sock这个文件扔到/tmp目录下, 那么路径就是/tmp/mysql.sock

php.ini里加一行pdo_mysql.default_socket=/tmp/mysql.sock

my.conf里相关的配置为socket=/tmp/mysql.sock

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值