如何在Elastic Beanstalk中安装PDO_SQLSRV驱动程序以连接SQL Server DB实例



我正在尝试将我的sql Server db实例连接到我的PHP应用程序中的PHP应用程序。"。我正在使用以下代码将我的DB实例连接到相同的环境中。

<?php
$dbhost = $_SERVER;
$dbport = $_SERVER;
$dbname = $_SERVER;
$charset = 'utf8' ;
$dsn = "sqlsrvl:host={$dbhost};port={$dbport};dbname={$dbname};charset={$charset}";
$username = $_SERVER;
$password = $_SERVER;
$pdo = new PDO($dsn, $username, $password);
?>

AWS开发人员指南提到为PDO_SQLSRV安装驱动程序。我尝试通过使用.config文件在我的应用程序根目录中使用.ebextensions文件夹来安装驱动程序来安装软件包。

packages: 
yum:
php56-mssql: [] 

,但这导致我的环境健康降低到服务器。

我使用此链接作为我的参考http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/create_deploy_php.rds.htmlhttp://techqa.info/programming/question/35984661/how-to-connect-aws-aws-elb-to-rds-rds-ms-ms-sql

Is there any other way to install pdo_sqlsrv driver and extension in elastic beanstalk php application ? 

我是AWS的新手。请帮助我解决这个问题。

加法信息:我的平台:64bit Amazon Linux 2016.09 v2.3.3运行php 7.0

尝试多个答案后,我发现了这个问题的解决方案。

问题是 php 7.0版本,我必须使用软件包

commands:
  00install_mssql:
    command: yum install -y php70-mssql

在我的应用程序根目录中添加上述代码.ebextensions/any.config文件

在我的情况下,亚马逊文档没有帮助我,因为它提到PDO_SQLSRV驱动程序是安装的,但他们不支持驱动程序,而是我必须使用 pdo_dblib驱动程序下面是一个示例。

$dbhost = 'XXXXXXXXXXX.XXXXXXXXXXXXXXX.amazonaws.com:1433';
$dbname = 'dbname';
$charset = 'utf8' ;
$username = 'usernam';
$password = 'password';
$pdo = new PDO("dblib:host=$dbhost;Database=$dbname", $username, $password);
$pdo->setAttribute( PDO::ATTR_CURSOR, PDO::CURSOR_SCROLL);
$tsql ="Select InvID, Number, ProfileNum, PName, InvDate, Des
       FROM dbname.dbo
       WHERE ProfileNum ='" . $client_no .  "'
       AND InvDate BETWEEN '". $inv_from_date."' AND '".$inv_to_date."'
       ORDER BY InvID";
ini_set('max_execution_time', 300);
/*  Execute the query.*/  
$stmt = $pdo->query( $tsql );
    if ( $stmt->execute() )
      { echo "Statement executed.<br>\n";  }
    else
      {  echo "Error in statement execution.\n";
           die( print_r(DBLib_error(), true));  }
$title = $stmt->fetchColumn(3);
print "Client Number :" . $client_no .  " <br />";
print" Client Name  &nbsp&nbsp :" . $title. ""; // Displaying Client Information

最新更新