Centos 7.3 下 Yii2 连接 MS SQL Server 2008(记录)

前端之家收集整理的这篇文章主要介绍了Centos 7.3 下 Yii2 连接 MS SQL Server 2008(记录)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

这里不是 7.3 的最终版本。 参考资料:

引言

本来是使用 centos 6.8 的,但是找更新源太慢,遂一怒之下,直接换了 centos 7.3。下面讲主要介绍 MS sql Server 的驱动安装,以及在 Yii 2.0 中如何使用。对于 MS sql Server 的安装可以跳过。

一、准备

最小化安装 centos 7.3 x64 到自己电脑上, 非 7.x centos,以及非 x64 系列,不再本文考虑之列。且 PHP 7.x 连接 sql Server (>2005),需要 sqlsrv 或者 pdo_sqlsrv 的版本为 4.x ,见 win 下驱动说明,这里可能不适合 linux 下场景吧。

二、centos 7 下安装 MS sql Server(可选)

下面全部摘抄这里:https://www.microsoft.com/en-us/sql-server/developer-get-started/php-rhel

sudo su
curl https://packages.microsoft.com/config/rhel/7/mssql-server.repo > /etc/yum.repos.d/mssql-server.repo
exit
sudo yum update
sudo yum install mssql-server
sudo /opt/mssql/bin/sqlservr-setup

一步步来,就可以了。 据说会弹出如下内容,亲测,确实也是,不知道后续版本会不会改变。

Microsoft(R) sql Server(R) Setup

To abort setup at anytime,press Ctrl-C.

The license terms for this product can be downloaded from http://go.microsoft.com/fwlink/?LinkId=746388 and
found in /usr/share/doc/mssql-server/LICENSE.TXT.

Do you accept the license terms? If so,please type YES:
Please enter a password for the system administrator (SA) account:
Please confirm the password for the system administrator (SA) account:

这样就安装好了。限于本人电脑内存不足 4G 用不起来。

三、安装 sql Server 驱动

sudo su
    curl https://packages.microsoft.com/config/rhel/7/prod.repo > /etc/yum.repos.d/mssql-release.repo
    exit
    sudo yum update
    sudo yum remove unixODBC #to avoid conflicts
    sudo ACCEPT_EULA=Y yum install msodbcsql mssql-tools 
    sudo yum install unixODBC-utf16-devel #this step is optional but recommended*

安装如果没有错误,测试。

odbcinst –j
odbcinst -q -d -n "ODBC Driver 13 for sql Server"

看看会不会弹出不出错的内容,因为当前是 13 ,后续版本是不是升级,请核实再测试。

四、安装 XAMPP 相关内容

这个其实不适合作为生产服务器的,本文为了方便,假设已经安装好了。从这里 https://github.com/Microsoft/msphpsql/releases 下载 centos 7 的已经打包好的文件。放在 /opt/lampp/lib/PHP/extensions/no-debug-non-zts-20131226/ 类似的文件夹下,然后在 /opt/lampp/etc/PHP.ini 文件加入

extension=sqlsrv.so
extension=pdo_sqlsrv.so

最好根据实际文件名称加入。我只写了下面一行,也即 extension=pdo_sqlsrv.so

中间遇到一些问题,说是缺少 GLIBCXX 之类的问题,经搜索,把系统 /usr/lib64/libstdc++.so.6.0.19 代替了报错说的那个 libstdc++.so.6 文件。方便起见,可以加一个链接过去。

五、Yii 2 中链接 sql Server

比较简单,就是 ./common/config/main-local.PHP

'dsn'=>'sqlsrv:Server=192.168.1.10;Database=<your database>',//略

数据库就可以使用了。其他知识见其他部分。

猜你在找的CentOS相关文章