相关疑难解决方法(0)

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

我相信我已成功将我的(非常基本的)站点部署到fortrabbit,但是一旦我连接到SSH运行一些命令(例如php artisan migratephp artisan db:seed),我收到一条错误消息:

[PDOException]
SQLSTATE[HY000] [2002] No such file or directory
Run Code Online (Sandbox Code Playgroud)

在某些时候,迁移必须有效,因为我的桌子在那里 - 但这并不能解释为什么它现在不适合我.

php mysql pdo laravel

280
推荐指数
16
解决办法
42万
查看次数

MySQL连接不起作用:2002没有这样的文件或目录

我正在尝试设置WordPress.我运行Apache和MySQL,帐户和数据库都已设置完毕.我试图建立一个简单的连接:

<?php
    $conn = mysql_connect('localhost', 'USER', 'PASSWORD');
    if(!$conn) {
        echo 'Error: ' . mysql_errno() . ' - ' . mysql_error();
    }
?>
Run Code Online (Sandbox Code Playgroud)

我总是得到这个:

错误:2002 - 没有这样的文件或目录

它可以谈论什么文件或目录?

我使用的是内置Apache的OS X Snow Leopard.我使用x86_64 dmg安装了MySQL.

更新:我发现套接字位于/tmp/mysql.sock,所以在php.ini中,我用它替换了所有错误路径.

php mysql connection

96
推荐指数
11
解决办法
27万
查看次数

从Zend教程开始 - Zend_DB_Adapter抛出异常:"SQLSTATE [HY000] [2002]没有这样的文件或目录"

我开始用德语中的"Zend Framework in Action"一书学习Zend Framework.

就在那里它开始变得有趣我的PHP单元测试抛出此错误:"Zend_Db_Adapter_Exception:SQLSTATE [HY000] [2002]没有这样的文件或目录"

我无法在谷歌找到任何提示.我做了书中的所有事情.任何人都可以给我一个提示在哪里搜索我的错?

这是一个常见的初学者错误吗?

zend-framework

69
推荐指数
4
解决办法
12万
查看次数

在Mac上设置Laravel php artisan migrate错误:没有这样的文件或目录

  1. 将一个完美工作的laravel项目从一个git拉到一个运行MAMP的mac上.项目在linux机器上完美运行.
  2. 作曲家安装
  3. php artisan migrate,出现以下错误:

    [PDOException]                                    
    SQLSTATE[HY000] [2002] No such file or directory 
    
    Run Code Online (Sandbox Code Playgroud)

注意:php -v是5.5,mysql -v是终端的5.5这是我的config/database.php的一部分

    'mysql' => array(
        'driver'    => 'mysql',
        'host'      => 'localhost',
        'database'  => 'essays',
        'username'  => 'root',
        'password'  => 'root',
        'charset'   => 'utf8',
        'collation' => 'utf8_unicode_ci',
        'prefix'    => '',
    ),
Run Code Online (Sandbox Code Playgroud)

我尝试用127.0.0.1替换localhost但没有用.请帮忙..

编辑: 我在php.ini中添加了这三行

mysql.default_socket = /var/run/mysqld/mysqld.sock

mysqli.default_socket = /var/run/mysqld/mysqld.sock

pdo_mysql.default_socket = /var/run/mysqld/mysqld.sock
Run Code Online (Sandbox Code Playgroud)

我还添加了这个符号链接:

sudo mkdir /var/mysql
cd /var/mysql && sudo ln -s /Applications/XAMPP/xamppfiles/var/mysql/mysql.sock
Run Code Online (Sandbox Code Playgroud)

但那并没有解决.我也是从混帐拉一个全新的laravel项目后遇到同样的错误composer install,然后php artisan migrate

 [PDOException]                                    
  SQLSTATE[HY000] [2002] No such file …
Run Code Online (Sandbox Code Playgroud)

php mysql mmap laravel

45
推荐指数
7
解决办法
7万
查看次数

在PHP中创建与PDO的连接时出错

今天,我删除并重新安装了最新版本的lampp,以便转移到PHP 5.30,突然一个非常简单的应用程序无法连接到mysql数据库.我正在使用PDO进行连接,并收到以下错误:

Warning: PDO::__construct() [pdo.--construct]: [2002] Invalid argument (trying to connect 
via unix://) in /home/raistlin/www/todoapp/home.php on line 9

Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[HY000] [2002]
Invalid argument' in /home/raistlin/www/todoapp/home.php:9 Stack trace: #0
/home/raistlin/www/todoapp/home.php(9): PDO->__construct('mysql:host=loca...', 'USER', 
'PASSWORD') #1 {main} thrown in /home/raistlin/www/todoapp/home.php on line 9
Run Code Online (Sandbox Code Playgroud)

为了调试它,我现在没有捕获错误.

以下代码足以在我的系统上复制问题:

<?php
$DBACCESS = array(
    "connstring"=>"mysql:host=localhost;dbname=todoapp",
    "host"=>"localhost",
    "user"=>"user",
    "password"=>"password",
    "todoapp"=>"todoapp"
    );

    echo implode('<br \>',$DBACCESS);

    $dbh = new PDO($DBACCESS['connstring'],$DBACCESS['user'],$DBACCESS['password']);

    $dbh = null;
?>
Run Code Online (Sandbox Code Playgroud)

在网上看,我发现有一两个人有同样的问题,但没有一个人收到过回复,更不用说工作了.有谁知道发生了什么?我在配置中遗漏了什么?我需要做些什么来解决它?

php pdo lampp

25
推荐指数
3
解决办法
8万
查看次数

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

我试图在OS X上运行一个laravel项目.我用自制软件安装了MySql.我试着谷歌搜索为什么我收到这个错误:

SQLSTATE[HY000] [2002] No such file or directory
Run Code Online (Sandbox Code Playgroud)

当我尝试做的时候

php artisan migrate
Run Code Online (Sandbox Code Playgroud)

我看到的大多数答案都说php和MySql无法相互通信.我一直试图看看我哪里出错,因为我认为我之前关于它的帖子,它仍然无效.我创建了一个只执行此操作的页面:

<?php
    phpinfo();
?>
Run Code Online (Sandbox Code Playgroud)

我看到这些类型的东西:在配置区域,我看到:

'--with-mysql-sock=/tmp/mysql.sock' '--with-mysqli=mysqlnd' '--with-mysql=mysqlnd' '--with-pdo-mysql=mysqlnd' '--enable-pcntl' '--enable-zend-signals' '--enable-dtrace'
Run Code Online (Sandbox Code Playgroud)

加载配置文件:

/usr/local/etc/php/5.4/php.ini
Run Code Online (Sandbox Code Playgroud)

如果我ls /tmp,我确实看到mysql.sock.

在那个php.ini文件中,我设置了这些行:pdo_mysql.default_socket =/tmp/mysql.sock mysql.default_socket = /tmp/mysql.sock mysqli.default_socket = /tmp/mysql.sock

然后在/usr/local/Cellar/mysql/5.6.16/my.cnf中,我添加了以下行:

socket = /tmp/mysql.sock
Run Code Online (Sandbox Code Playgroud)

我DID重启apache,以及检查mysql是否正在运行.除了php和mysql连接之外,我还没有看到任何其他建议.我认为我的系统上有两个版本的php,因为当我安装mcrypt或其他我不记得的东西时,它安装了另一个php版本.但是当我查看phpinfo的输出时,我正在编辑相应的php.ini文件.我不知道是否还有另一件我遗失的文章.有什么想法吗?谢谢

php mysql

22
推荐指数
5
解决办法
8万
查看次数

Laravel:没有这样的文件或目录(SQL:create table`transrations`)

migrations从一个名为Laravel 5.4的数据库中删除了该表laravel.当我跑php artisan migrate:install,我得到这个错误:

[Illuminate\Database\QueryException]
SQLSTATE[HY000] [2002] No such file or directory (SQL: select * from 
information_schema.tables where table_schema = laravel 
and table_name = migrations)
Run Code Online (Sandbox Code Playgroud)

我删除并重新创建了数据库.我也跑了composer update.没运气.我可以在phpMyAdmin中运行该命令并手动创建表.

laravel artisan laravel-5.4

14
推荐指数
4
解决办法
1万
查看次数

PHP设置MySQL套接字位置

我之前遇到的问题是我的C应用程序在/tmp/mysql.sock中查找套接字,但我的套接字位置已设置为/var/run/mysqld.sock.我现在更改my.cnf中的设置以始终将套接字放入/ tmp.

现在,当我尝试使用nginx和php5-fpm运行我的Web应用程序时,它找不到套接字,因为它仍然在/var/run/mysqld.sock中查找.起初我创建了一个链接但后来注意到,每当我重新启动机器时,此链接都会被删除.

我搜索了我的php.ini并将所有三个(pdo_mysql.default_socket,mysql.default_socket,mysqli.default_socket)可用套接字选项设置为/tmp/mysql.sock.我在文件夹cgi,cli和fpm中这样做了.但是,它仍然无效.我还需要添加其他选项吗?或者我应该重新考虑我的做法?

继承人我的php.ini:

   [PHP]

    engine = On
    short_open_tag = On
    asp_tags = Off
    precision = 14
    y2k_compliance = On
    output_buffering = 4096
    zlib.output_compression = Off
    implicit_flush = Off
    unserialize_callback_func =
    serialize_precision = 100
    allow_call_time_pass_reference = Off
    s    afe_mode = Off
    safe_mode_gid = Off
    safe_mode_include_dir =
    safe_mode_exec_dir =
    safe_mode_allowed_env_vars = PHP_
    safe_mode_protected_env_vars = LD_LIBRARY_PATH
    disable_functions =
    disable_classes =
    expose_php = On
    max_execution_time = 30
    max_input_time = 60
    memory_limit = 128M
    error_reporting = E_ALL & ~E_DEPRECATED
    display_errors = Off
    display_startup_errors …
Run Code Online (Sandbox Code Playgroud)

php mysql sockets

5
推荐指数
1
解决办法
2万
查看次数

标签 统计

php ×6

mysql ×5

laravel ×3

pdo ×2

artisan ×1

connection ×1

lampp ×1

laravel-5.4 ×1

mmap ×1

sockets ×1

zend-framework ×1