Linux 7 PHP7.2连接达梦数据库环境搭建

Linux 7+APACHE+PHP7.2+DM8

一、环境准备

1、安装部署好DM数据库

具体安装部署不再详述,可以去eco.dameng.com 达梦云适配中心了解

2、安装包准备,如下

apr-1.7.0.tar.gz
apr-util-1.6.1.tar.gz
pcre-8.44.tar.gz
httpd-2.4.46.tar.gz
php-7.2.10.tar.gz
源码包可以去 https://pkgs.org/ 或者各官网下载

3、创建相应目录

cd /usr/local
mkdir apache2
mkdir apr
mkdir apr-util
mkdir pcre
mkdir php

4、将源码包解压到对应的目录

tar -zxvf httpd-2.4.46.tar.gz -C /usr/local/apache2/
tar -zxvf apr-1.7.0.tar.gz -C /usr/local/apr
tar -zxvf apr-util-1.6.1.tar.gz -C /usr/local/apr-util/
tar -zxvf pcre-8.44.tar.gz -C /usr/local/pcre/
tar -zxvf php-7.2.10.tar.gz -C /usr/local/php/

二、安装apr

cd /usr/local/apr/apr-1.7.0/
./configure --prefix=/usr/local/apr
make
make install

三、安装apr-util

报错: make的时候报(xml/apr_xml.c:35:19: 致命错误:expat.h:没有那个文件或目录)。
解决办法:
这是因为没有装expat原因导致,可以通过挂载yum源 yum install -y expat-devel 来解决

cd /usr/local/apr-util/apr-util-1.6.1/
./configure --prefix=/usr/local/apr-util -with-apr=/usr/local/apr/bin/apr-1-config
make
make install

四、安装pcre

下面警告可以忽略
在这里插入图片描述

cd /usr/local/pcre/pcre-8.44/
./configure --prefix=/usr/local/pcre
make
make install

五、安装配置apache
报错1:
在这里插入图片描述
解决办法
cp -r /usr/local/apr/apr-1.7.0 /usr/local/apache2/httpd-2.4.46/srclib/apr
cp -r /usr/local/apr-util/apr-util-1.6.1 /usr/local/apache2/httpd-2.4.46/srclib/apr-util

报错2:
checking whether to enable mod_ssl… configure: error: mod_ssl has been requested but can not be built due to prerequisite failures
解决办法
yum install openssl-devel

cd /usr/local/apache2/httpd-2.4.46/
./configure --prefix=/usr/local/apache2 --enable-so --enable-rewrite --enable-ssl --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-pcre=/usr/local/pcre --enable-modules=most --enable-mpms-shared=all --with-mpm=event --with-included-apr
yum install openssl-devel
make
make install

安装Apache完成后,配置Apache文件

cd /usr/local/apache2/conf
vi http.conf

添加:

AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .php7

进入apache安装目录bin目录下,启动apache

cd /usr/local/apache2/bin/
./apachectl -k start
ps -ef|grep httpd

在浏览器里输入服务器ip地址,如果出现It Works!说明成功。

六、安装PHP
报错1
configure: error: libxml2 not found. Please check your libxml2 installation.
解决办法
yum install libxml2
yum install libxml2-devel -y

cd /usr/local/php/php-7.2.10/
./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs
make
make install
cp php.ini-development /usr/local/php/lib/php.ini
cd /usr/local/apache2/htdocs/
vi test.php
<?php
phpinfo();
?>

重启apache服务,再访问 http://IP/test.php

在这里插入图片描述

在该页面中有几个重要配置信息注意,如下:
php.ini路径
在这里插入图片描述

PHP版本是否为安全线程(本次是线程安全版,使用TS版本DM_PDO)
在这里插入图片描述

extension_dir加载路径
在这里插入图片描述

拷贝达梦PHP_PDO模块文件至extension_dir 路径

cp /opt/dmdbms/drivers/php_pdo/* /usr/local/php/lib/php/extensions/no-debug-zts-20170718

配置php.ini文件

vi /usr/local/php/lib/php.ini
extension=libphp72ts_dm.so
extension=php72ts_pdo_dm.so
[dm]
dm.allow_persistent = 1
dm.default_host = localhost
dm.default_user = SYSDBA
dm.default_pw = SYSDBA
dm.defaultlrl = 4096
dm.check_persistent = ON

重启Apache,刷新PHP页面,如果DM模块能加载成功说明部署完成。如下

在这里插入图片描述
在这里插入图片描述

测试PHP连接DM数据库

vi /usr/local/apache2/htdocs/dm.php
<?php
try{
/* 连接选择数据库 */
$link = dm_connect("localhost", "SYSDBA", "SYSDBA") or die("Could not connect : " . dm_error());
print "Connected successfully\n";
/* 执行 SQL 查询 */
$query = " select * from v\$version;";
$result = dm_exec($link,$query) or die("Query failed : " . dm_error());
while ($line = dm_fetch_array($result, 0)) {
foreach ($line as $col_value) {
print_r ($col_value);
}
}
dm_free_result($result);
/* 断开连接 */
dm_close($link);
}
catch(PDOException $e){
 print( "Error: " . $e->getMessage())."\n";
}
?>

最后http://IP/dm.php页面查询出来结果代表成功

在这里插入图片描述

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值