centos7+php+sqlserver配置方法
这段时间迁移老项目,其中有一个项目使用php编写,放置在windows中,然后连接的是sqlserver数据库,现在将项目搬迁至centos中,需要配置环境。
系统环境:
1、centos7;
2、宝塔面板6.9;
3、php7.3(宝塔面板可以多版本php安装和切换)
这里介绍两种连接方式:
一、pdo_sqlsrv方式
【加入微软的源】
curl https://packages.microsoft.com/config/rhel/7/prod.repo > /etc/yum.repos.d/mssqlrelease.repo
【安装驱动 unixODBC】
yum install msodbcsql mssql-tools unixODBC-devel
【下载pdo_sqlsrv扩展包】
wget http://pecl.php.net/get/pdo_sqlsrv-5.6.0.tgz
注:pdo_sqlsrv 下载地址:http://pecl.php.net/package/pdo_sqlsrv
然后解压
tar -zxvf pdo_sqlsrv-5.6.0.tgz
cd pdo_sqlsrv-5.6.0
【当前为宝塔,路径如下,使用对应php版本的phpize】
/www/server/php/73/bin/phpize
./configure --with-php-config=/www/server/php/73/bin/php-config
make && make install
【加入扩展】
echo "extension = pdo_sqlsrv.so" >> /www/server/php/73/etc/php.ini
/etc/init.d/php-fpm-73 reload
【检查扩展是否安装成功】
/www/server/php/73/bin/php -m|grep -i sqlsrv
安装成功后,可以用phpinfo()查看pdo_sqlsrv是否已经安装成功。
php调用方式:
// 数据库用户 $strDbUser = 'sqlTour_WWK3n3'; // 数据库密码 $strDbPass = 'qADPnXHQ7kYtZMPTGIuRMA'; // 数据库服务器地址 $strDbHost = 'tour.eyuyao.com'; // 数据库名称 $strDbName = 'dbTour'; // 连接数据库的字符串定义 $strDsn = "sqlsrv:Server=$strDbHost;Database=$strDbName;"; // 生成pdo对象 $objDB = new PDO($strDsn, $strDbUser, $strDbPass); foreach ($objDB->query('select* from table') as $row) { var_dump($row); return; }二、sqlsrv方式 加入微软源和安装驱动和上面一样,这里从下载安装开始 【下载sqlsrv扩展包:http://pecl.php.net/package/sqlsrv】
wget http://pecl.php.net/get/sqlsrv-5.6.0.tgz
然后解压
tar -zxvf sqlsrv-5.6.0.tgz
cd sqlsrv-5.6.0
【当前为宝塔,路径如下,使用对应php版本的phpize】
/www/server/php/73/bin/phpize
./configure --with-php-config=/www/server/php/73/bin/php-config
make && make install
【加入扩展】
echo "extension = sqlsrv.so" >> /www/server/php/73/etc/php.ini
/etc/init.d/php-fpm-73 reload
安装成功后调用:
$serverName = "地址"; $connectionInfo = array("Database"=>"数据库","UID"=>"用户名","PWD"=>"密码","CharacterSet" => "UTF-8"); $conn = sqlsrv_connect($serverName, $connectionInfo); if(!$conn) { echo "Connection could not be established."; }注意点: 1、linux中只有4.0以上才有支持,低版本只支持windows。 2、4.0以上只能支持php7.0以上,所以php版本低的还是直接用windows吧。 3、微软网站版本支持说明:https://docs.microsoft.com/zh-cn/sql/connect/php/microsoft-php-drivers-for-sql-server-support-matrix?view=sql-server-2017。 4、查看版本发现:https://github.com/Microsoft/msphpsql/releases 5、微软下载地址:https://docs.microsoft.com/zh-cn/sql/connect/php/download-drivers-php-sql-server?view=sql-server-2017 6、github地址:https://github.com/Microsoft/msphpsql 参考文档:https://www.cnblogs.com/xjnotxj/p/6125305.html 宝塔安装参考文档:https://www.jianshu.com/p/730f2cca9d57