使用php快速配置MSSQL环境

1. 简介

Microsoft SQL Server是一种常用的关系数据库管理系统,可以与许多方面的业务集成,包括 Web 应用程序、企业级应用程序、数据分析等。在PHP中操作MSSQL需要使用MSSQL 扩展包,该扩展包由PECL维护,与PHP5对应,为了安装MSSQL 扩展包,必须在系统中安装MSSQL 客户端库。

2. 环境准备

2.1 系统环境

确保系统是CentOS 7,Windows Server 2008 或以上系统,安装 httpd、MariaDB 或 MySQL 以及 PHP。可以使用如下的命令来检查安装是否正确。

httpd -v

mysql -V

php -v

2.2 MSSQL Server

您需要安装Microsoft SQL Server或使用Microsoft Azure SQL Database。如果您没有可以使用 Azure。您需要创建一个数据库。

2.3 MSSQL 客户端库

MSSQL 客户端库是操作MSSQL必须的,您可以到Microsoft下载中心或者在CentOS中使用YUM安装。对于CentOS 7.6,您可以使用以下命令:

sudo yum install epel-release

sudo yum update

sudo yum install msodbcsql17-17.7.2.1-1.x86_64 mssql-tools-17.7.2.1-1.x86_64

3. 安装MSSQL扩展包

成功安装MSSQL 客户端库后,需要安装MSSQL 扩展包。PECL 已包含该扩展包,可以直接处理编译并安装扩展包使用如下命令:

sudo pecl install sqlsrv

sudo pecl install pdo_sqlsrv

按照提示找到php.ini文件,通常情况下,它位于/etc/php.ini,添加以下内容,用于启用扩展包。

extension=sqlsrv.so

extension=pdo_sqlsrv.so

4. 配置连接到MSSQL

为了连接以及执行 MSSQL 数据库,您需要提供一些信息到MSSQL 实例。

4.1 基本连接配置

您可以配置连接配置,比如:

$serverName = "tcp:servername.database.windows.net"; 

$connectionOptions = array(

"Database" => "dbname",

"Uid" => "username",

"PWD" => "password"

);

$conn = sqlsrv_connect($serverName, $connectionOptions);

if( $conn ) {

echo "连接成功";

}else{

echo "连接失败";

die( print_r( sqlsrv_errors(), true));

}

4.2 按需配置连接

下面是更多可选的配置,你可以在连接选项数组中添加它们:

Authentication: 你可以选择Windows验证还是SQL验证

UID: 只有当你使用 SQL 验证时才需要提供用户名

PWD: 只有使用SQL验证时才需要提供密码

Encrypt: 如果你正在连接到Azure,该项应该配置为true,默认情况下是false

TrustServerCertificate: 如果您正在连接到Azure,该项应该设置为false,默认情况下是true

MultipleActiveResultSets: 如果您需要同时接收多个结果,应配置此项,默认为false

总结

PHP 操作 MS SQL Server 数据库需要使用 MSSQL 扩展包,需要安装MS SQL Server及客户端库,我们可以使用连接配置来连接到 MS SQL Server 数据库。希望这篇文章可以帮助到你。

数据库标签