Ubuntu 14.04.2 Laravel 4.2.0 PDOException找不到驱动程序MySQL

时间:2015-04-11 06:59:40

标签: mysql exception ubuntu laravel pdo

我没有10个声望所以无法添加图片,抱歉。

我希望Laravel 4.2.0能够在我的Ubuntu 14.04.2 LTS服务器上运行。

到目前为止我做了什么:

  1. 安装Ubuntu 14.04.2

  2. sudo apt-get install apache2

  3. sudo apt-get install mysql-server

  4. 安装Openssl

  5. 安装libmcrypt

  6. 安装PHP
       ./configure --with-openssl --with-mcrypt --enable-mbstring --with-pdo-mysql --enable-pdo --with-mysql
    

    请 make install

  7. 从GitHub下载Laravel 4.2.0 zip文件,解压缩并通过WinSCP传输

  8. 安装Laravel 4.2.0

    curl -sS https://getcomposer.org/installer | PHP    php composer.phar install

  9. 通过配置/app/config/database.php

    连接数据库

    'mysql'=>阵列( 'driver'=> “MySQL的, 'host'=> 'localhost' 的, 'database'=> 'laravel', 'username'=> “laravel用户”, 'password'=> '************', 'charset'=> “UTF-8”, 'collat​​ion'=> 'utf8_unicode_ci', 'prefix'=> ', ),

  10. 我收到了这个错误。

    PDOException
    could not find driver
    
    Open: /var/www/laravel/laravel/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php
         */
        public function createConnection($dsn, array $config, array $options)
        {
            $username = array_get($config, 'username');
    
            $password = array_get($config, 'password');
    
            return new PDO($dsn, $username, $password, $options);
        }
    

    我不知道该怎么办。 我用Google搜索了一天,但没有回答。请帮帮我。

    我检查了使用php -i|grep PDO命令启用的PDO。

    结果:

    PDO support => enabled
    PDO drivers => sqlite, mysql
    PDO Drivers for MySQL => enabled
    PDO Drivers for SQLite 3.x => enabled
    

    但我检查了php.ini,没有像 extension = pdo.so 这样的行 所以我添加了这样的行

    [Pdo]
    ; Whether to pool ODBC connections. Can be one of "strict", "relaxed" or "off"
    ; http://php.net/pdo-odbc.connection-pooling
    ;pdo_odbc.connection_pooling=strict
    
    ;pdo_odbc.db2_instance_name
    
    [Pdo_mysql]
    ; If mysqlnd is used: Number of cache slots for the internal result set cache
    ; http://php.net/pdo_mysql.cache_size
    pdo_mysql.cache_size = 2000
    
    ; Default socket name for local MySQL connects.  If empty, uses the built-in
    ; MySQL defaults.
    ; http://php.net/pdo_mysql.default-socket
    pdo_mysql.default_socket=
    
    extension=pdo.so
    extension=pdo_sqlite.so
    extension=sqlite.so
    

    请帮助我摆脱这种令人沮丧的局面.. 提前谢谢你帮助我。

1 个答案:

答案 0 :(得分:0)

这意味着您没有安装扩展程序。

使用以下方法安装: sudo apt-get install phpx.x-mysql 其中x.x是你的php版本:php5.6-mysql 或者只是尝试: sudo apt-get install php-mysql