PDOException错误-无法连接到数据库

时间:2019-08-29 15:40:32

标签: laravel

我正在使用PHP 7.1,MySQL 5.7和Laravel 5.7.12。在Mac上。

我是Laravel的新手。我在远程服务器(Cloudways服务器)上构建我的应用程序。我知道大多数人都在本地构建项目,然后将其应用程序部署到远程服务器上,但是我只是在实时的远程服务器上构建应用程序,而我正在使用SFTP。

我已经配置了.env文件以反映服务器的连接详细信息。

当我尝试运行php artisan migration时,出现此错误:

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

  at /Users/newadmin/Documents/Sites/Quipper/vendor/laravel/framework/src/Illuminate/Database/Connection.php:664
    660|         // If an exception occurs when attempting to run a query, we'll format the error
    661|         // message to include the bindings with SQL, which will make this exception a
    662|         // lot more helpful to the developer instead of just the database's errors.
    663|         catch (Exception $e) {
  > 664|             throw new QueryException(
    665|                 $query, $this->prepareBindings($bindings), $e
    666|             );
    667|         }
    668| 

  Exception trace:

  1   PDOException::("SQLSTATE[HY000] [2002] No such file or directory")
      /Users/newadmin/Documents/Sites/Quipper/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php:70

  2   PDO::__construct("mysql:host=localhost;dbname=*********", "*********", "**********", [])

    /Users/newadmin/Documents/Sites/Quipper/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php:70

在我上面放置**********的地方是我的数据库名称,用户名和密码,出于安全考虑。

我认为在第二个异常跟踪中值得注意的是“ mysql:host = localhost;”,当在我的.env文件中放入我的DB_HOST地址时,该地址是远程服务器地址。因此,它不应该说本地主机。看来这可能是问题的一部分?

任何帮助将不胜感激!

我已经尝试在终端上运行

php artisan缓存:清除 php artisan config:cache

那没有用。

1 个答案:

答案 0 :(得分:0)

从日志文件中,查看PHP脚本的路径

  

/ Users / newadmin / Documents / Site / Quipper

这是在您的本地Mac或MacBook计算机中,这意味着您需要SSH到Cloudways服务器中,然后运行php artisan migrate命令

通过SSH,我的意思是运行类似

ssh cloudways_user@server_IP_ADDRESS
cd Quipper && php artisan migrate