我正在致力于连接到现有MS SQL Server数据库的Laravel 5.1项目。我的项目目前在使用Apache 2.4.18的Ubuntu 16.04 LTS服务器上。我已经安装了Microsoft ODBC驱动程序的Linux的机器上的SQL Server(版本13.0.0.0),并与SQLCMD命令手动测试过它:Laravel:PDO异常,即使驱动程序已安装并测试也找不到驱动程序
sqlcmd -S DatabaseIPAddress -U DatabaseUsername
这一切都工作得很好。我可以登录到数据库没有问题。当我用php artisan迁移我的数据库时,它不起作用。我得到的错误:
[PDOException]
could not find driver
我有这个在database.php中设置:
'sqlsrv' => [
'driver' => 'sqlsrv',
'host' => env('DB_HOST', 'localhost'),
'database' => env('DB_DATABASE', 'forge'),
'username' => env('DB_USERNAME', 'forge'),
'password' => env('DB_PASSWORD', ''),
'charset' => 'utf8',
'prefix' => '',
],
数据库登录信息被保存在.ENV文件和SQL Server设置为默认:
'default' => env('DB_CONNECTION', 'sqlsrv'),
对于可能发生什么有什么帮助?我读过一大堆网络上的帖子(here和here)。人们对不同类型的数据库有类似的问题。他们必须改变他们的php.ini文件的配置,添加一些关于扩展的行。也许沿着这些线?我已经尝试了一些不同的东西,我认为可能的工作,如php.ini文件:
; This is the extension for the Microsoft SQLSRV ODBC Driver.
; The driver seems to be located at this file path.
extionsion=/opt/microsoft/msodbcsql/lib64/libmsodbcsql-13.0.so.0.0
重新启动,测试,但无济于事。我一直在这边抨击我的头靠在墙上。任何帮助将不胜感激。谢谢。
http://stackoverflow.com/questions/18213907/how-to-use-sql-server-connection-in-laravel –
太棒了,谢谢!这是通过使用php7.0-sybase的轻微修改来实现的。非常感谢!抱歉,我在我的研究中错过了这篇文章。 – Keegan