在Laravel家园中启用MSSQL支持的正确方法是什么


What is the proper method for enabling MSSQL support in Laravel homestead?

我见过很多人谈论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