Подключение Doctrine 2 к MSSQL для SYMFONY 2 в Linux

Я пытаюсь использовать Doctrine 2 (для Symfony 2) для подключения к MSSQLServer с Linux-машины. .

Я установил pdo_dblib (драйвер PDO для FreeTDS/Sybase DB-lib) и могу подключиться к серверу БД через tsql в командной строке, а также из php cli. Таким образом, я знаю, что это работает.

В моем Symfony/app/config/parameters.ini я указал database_driver="pdo_sqlsrv" в качестве драйвера базы данных (так как я читал, что это будет обрабатываться db_lib), но при попытке запустить команду создания базы данных (используя команду php app /console doctrine:database:create) Я получаю сообщение об ошибке:

Не удалось создать базу данных для указанного соединения, не удалось найти драйвер

Затем я изменил драйвер на database_driver="pdo_dblib"и теперь я получаю сообщение об ошибке:

[Доктрина\DBAL\DBALException]
Данный «драйвер» pdo_dblib неизвестен, в настоящее время Doctrine поддерживает только следующие драйвера: pdo_mysql, pdo_sqlite, pdo_pgsql, pdo_oci, oci8, ibm_db2, pdo_ibm, pdo_sqlsrv

Таким образом, единственным вариантом подключения к MSSQL является pdo_sqlsrv, поэтому я решил установить это. Однако я только что обнаружил здесь, что

расширение PDO_SQLSRV совместимо только с PHP, работающим в Windows.

Таким образом, драйвер, поддерживаемый доктриной, и драйвер, доступный для использования в Linux, кажутся взаимоисключающими. Из поиска я не нашел ни одного случая решения этой проблемы до сих пор (один парень пометил проблему как решенную, но когда я прочитал ветку, он просто переместил свою среду разработки в окно Windows ... не совсем то, что у меня было в уме!).

10
задан ManseUK 31 August 2012 в 12:14
поделиться