基于Linux的PHP安装连接到MsSQL Server

通过 Linux上的 PHP连接到远程Microsoft SQL Server的最佳方法是什么.

PHP只能在Linux机器上运行.

我一直在拖网寻找最简单的答案.

解决方法

PHP 5.6

Ubuntu的

sudo apt-get install php5.6-sybase freetds-common libsybdb5

AWS / Centos / Redhat

sudo yum install php56-mssql

之后,您可以通过PHP连接到MsSql数据库,如下所示:

<?php
$server = 'localhost';
$user = 'someUser';
$pass = 'somePassword';
$database = 'theDatabaseName';

try {
    $pdo = new \PDO(
        sprintf(
         "dblib:host=%s;dbname=%s",$server,$database
        ),$user,$pass
    );
     $pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
} catch (PDOException $e) {
     echo "There was a problem connecting. " . $e->getMessage();
}

$query = "SELECT * FROM TestSchema.Employees";
$statement = $pdo->prepare($query);
$statement->execute();
$results = $statement->fetchAll(PDO::FETCH_ASSOC);

var_dump($results);

您可以在命令行上使用类似的方法对MsSQL进行故障排除:

tsql -H your.server.name -p 1433 -U yourusername -P yourpassword -D yourdatabasename

Php 7

Microsoft有我们可以使用的本机驱动程序.完整说明是here (Redhat / Ubuntu / Others).

该链接还包含在您的开发机器上安装Ms SQL服务器所需的步骤(在Ubuntu上工作,在AWS上不起作用,但您可以在那里启动RDS实例).它还包含有关如何在数据库中创建测试表和数据的基本指令,以及PHP连接代码.

相关文章

linux常用进程通信方式包括管道(pipe)、有名管道(FIFO)、...
Linux性能观测工具按类别可分为系统级别和进程级别,系统级别...
本文详细介绍了curl命令基础和高级用法,包括跳过https的证书...
本文包含作者工作中常用到的一些命令,用于诊断网络、磁盘占满...
linux的平均负载表示运行态和就绪态及不可中断状态(正在io)的...
CPU上下文频繁切换会导致系统性能下降,切换分为进程切换、线...