Я установил Lampp в свою Linux-систему, и я изучаю symfony2, пытаясь создать схему с помощью команды symfony2
php app/console doctrine:schema:create
Появляется следующее сообщение об ошибке:
PDOException “could not find driver”
Я также раскомментирую это extension=php_pdo_mysql.dll
строки extension=php_pdo_mysql.dll
в файле php.ini
Я попытался посмотреть и решить проблему, но не смог решить проблему. когда я запускаю команду php -m
я получаю следующий результат: –
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php5/20090626+lfs/mysql.so' - /usr/lib/php5/20090626+lfs/mysql.so: cannot open shared object file: No such file or directory in Unknown on line 0 PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php5/20090626+lfs/mysqli.so' - /usr/lib/php5/20090626+lfs/mysqli.so: cannot open shared object file: No such file or directory in Unknown on line 0 PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php5/20090626+lfs/pdo_mysql.so' - /usr/lib/php5/20090626+lfs/pdo_mysql.so: cannot open shared object file: No such file or directory in Unknown on line 0 [PHP Modules] bcmath bz2 calendar Core ctype date dba dom ereg exif fileinfo filter ftp gettext hash iconv json libxml mbstring mhash openssl pcntl pcre PDO ---- ----
Есть ли способ удалить эту проблему?
Надеюсь, что вы запускаете свой проект в локальном хосте. В папке вашего проекта приложите / настройте файл с именем parameters.ini, убедитесь, что ваша конфигурация подключения к базе данных Mysql верна. Если вы используете mysql См. database_driver=pdo_mysql
– это его драйвер.
Ниже приведен пример.
database_driver = pdo_mysql database_host = localhost database_port = database_name = databasename database_user = msqlusername database_password = mysqlpassword//if not make blank mailer_transport = smtp mailer_host = localhost mailer_user = mailer_password = locale = en secret = ThisTokenIsNotSoSecretChangeIt
Надеюсь, это поможет вам.
В Ubuntu напишите в консоли
sudo apt-get install php5-gd php5-mysql
и он будет работать
У вас должен быть модуль pdo_mysql
.
Найдите в phpinfo()
:
pdo_mysql => PDO Драйвер для MySQL, версия клиентской библиотеки => 5.1.44
для установки pdo_mysql вам нужно сделать следующее:
pecl install pdo pecl install pdo_mysql
а затем добавьте в файл php.ini
:
extension=pdo.so extension=pdo_mysql.so
brew install php70-pdo-pgsql
в случае, если вы установили php7 на mac с пивом и, измените версию php в соответствии с тем, что вы установили.
Похоже, что вашей программе не хватает файлов .so, необходимых для реализации соединения mysql. Если вы используете систему управления пакетами для установки PHP, убедитесь, что вы установили все необходимые подмодули (в этом случае, я думаю, вам понадобятся mysql-dev и различные модули PHP PDO), хотя такие зависимости должны иметь был разрешен для вас менеджером пакетов.
Если вы не проходили через диспетчер пакетов, вам придется скомпилировать необходимые .so файлы из исходного кода.
если вы используете XAMPP, тогда в строке файла php.ini нет 897 (зависит от версии),
;extension=php_pdo_pgsql.dll
раскомментируйте его, тогда он выглядит как ниже
extension=php_pdo_pgsql.dll
в строке файла php.ini № 897, затем перезапустите XAMPP.
На моем сервере PHP 5.6 и PHP 7 установлены две версии PHP
Когда я запускаю команду php app/console doctrine:schema:update
меня есть ошибка: [PDOException] could not find driver
Я разрешаю эту ошибку, указав версию PHP:
php5.6 app/console doctrine:schema:update