我见过很多人谈论FreeTDS和Sybase驱动程序,但我似乎无法弄清楚我需要什么才能从运行Laravel Homestead Vagrant盒子的Linux Web服务器启用对MSSQL数据库的laravel/php访问。
我正在复活这个,因为它是谷歌上针对我问题的早期结果之一......
首先,从"家园"文件夹中通过 ssh vagrant ssh
ssh 进入您的盒子。
然后,安装 php5-mssql sudo apt-get update && sudo apt-get install php5-mssql
对于使用 PHP 7 的较新流浪者,请使用 sudo apt-get update && sudo apt-get install php7.0-sybase
。
如果此操作失败,您可能需要执行sudo apt-get upgrade
。
现在编辑freetds.conf sudo vi /etc/freetds/freetds.conf
更改前几行:
[global]
# TDS protocol version
tds version = 7.2
client charset = UTF-8
最后,您应该在/etc/freetds 中创建一个 locales.conf 文件,以允许使用 SQL Server 正确解析日期,我有此配置并且与 DateTime、DateTime2、SmallDateTime 和 Date 数据类型配合良好:sudo vi /etc/freetds/locales.conf
[default]
date format = %Y-%m-%d %H:%M:%S.%z
[en_US]
date format = %b %e %Y %I:%M:%S:%z%p
language = us_english
charset = iso_1
[es_ES]
date format = %b %d %Y %I:%M%p
language = spanish
charset = iso_1
[pt_BR]
date format = %d/%m/%Y %H:%M
language = Portuguese
charset = iso_1
[it_IT]
date format = %d/%m/%Y %H:%M
language = Italiano
charset = iso_1
最后,重新启动服务器vagrant halt && vagrant up
(仅重新启动nginx不会导致设置生效。
来源: https://laracasts.com/discuss/channels/general-discussion/sqlsrv-driver-on-linux/replies/14887
简单:首先,从Homestead文件夹中ssh进入你的盒子流浪ssh。
命令 : 流浪者 ssh我们需要安装 Sybase 包来启用对 PDO 和 Mssql 的支持。命令 : sudo apt-get install php7.0-sybase