Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/227.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
php artisan迁移-Laravel_Php_Laravel_Laravel 5 - Fatal编程技术网

php artisan迁移-Laravel

php artisan迁移-Laravel,php,laravel,laravel-5,Php,Laravel,Laravel 5,很快,我在ubuntu终端上按Enter‘php artisan migrate’命令。错误如下:-[PDOException]找不到驱动程序 我不能解决这个问题,因为我是新手 请帮我解决这个问题 Yo应该在php.ini中为数据库管理器启用PDO扩展 ;extension=php_pdo_firebird.dll ;extension=php_pdo_mssql.dll ;extension=php_pdo_mysql.dll ;extension=php_pdo_oci.dll ;exte

很快,我在ubuntu终端上按Enter‘php artisan migrate’命令。错误如下:-[PDOException]找不到驱动程序

我不能解决这个问题,因为我是新手

请帮我解决这个问题


Yo应该在php.ini中为数据库管理器启用PDO扩展

;extension=php_pdo_firebird.dll
;extension=php_pdo_mssql.dll
;extension=php_pdo_mysql.dll
;extension=php_pdo_oci.dll
;extension=php_pdo_odbc.dll
extension=php_pdo_pgsql.dll //In my Case the extension enable is for pgsql
;extension=php_pdo_sqlite.dll
对于启用,您应删除;扩展名行中的字符 重新启动服务器,瞧,我在“Project Folder Name/config/database.php”中做了更改。而且,它起了作用。添加了'unix_socket'=>'/opt/lampp/var/mysql/mysql.sock'

'mysql' => [
            'driver'    => 'mysql',
            'host'      => env('DB_HOST', 'localhost'),
            'database'  => env('DB_DATABASE', 'DatabaseName'),
            'username'  => env('DB_USERNAME', 'root'),
            'password'  => env('DB_PASSWORD', ''),
        'unix_socket'   => '/opt/lampp/var/mysql/mysql.sock', //Your sock got from above
            'charset'   => 'utf8',
            'collation' => 'utf8_unicode_ci',
            'prefix'    => '',
            'strict'    => false,
        ],

我认为您的CLI有一个单独的配置文件(php.ini)


尝试在控制台中执行
php-i | grep php.ini
。并在该文件中启用所需的模块

它应该返回如下内容:

sander@sander-Laptop:~$ php -i | grep php.ini
Configuration File (php.ini) Path => /etc/php5/cli
Loaded Configuration File => /etc/php5/cli/php.ini
如您所见,它使用了另一个php.ini文件,然后是
phpinfo()返回

打开该文件并在那里启用所需的扩展名

因此,请更改所需扩展的行:
;扩展=扩展.so
扩展=扩展.so

还有一个提示:如果您使用Laravel,您可以使用Homestead(vagrant,virtualbox),它是为您的Laravel应用程序预安装的完整虚拟机


您的CLI是否有单独的php配置?可能模块没有仅在CLI中加载
php-i | grep php.ini
应该返回所使用的php.ini文件。您好,Pastor先生。我只是在等待这个答案。当我搜索了许多贴在堆栈上的答案时。每个人都在询问是否启用了PDO。但是,对我来说,“extension=php_pdo_mssql.dll”是可用的。。所以,它被启用了。现在,下一步要做什么?我必须安装php5 sqlite?好的,你们有吗?php mssql扩展。sudo apt get install php5-php5-sybase和更高版本的pear安装——nodeps MDB2_驱动程序_mssqlyeah。我安装了这个Sybase,你能给我看看你的phpinfo()吗??。请仅使用PDO部分。这不是正确的解决方案,因为/opt/lampp/var/mysql/mysql.sock远远不是默认配置,它将破坏您在其他环境/系统上的应用程序。