Linux+Apache 2.4+PHP 5.4+达梦数据库

环境说明

操作系统:Centos 7

Apache:2.4.6

PHP:5.4.16

达梦数据库:DM V8 1-2-38

php7版本连接达梦数据库参考:
PHP | 达梦技术社区文档 (eco.dameng.com)
达梦E学公众号:php7.4连接DM数据库环境搭建

环境安装

Apache和PHP可以采用源码安装,也可以使用yum直接安装。这里使用yum直接安装。

防火墙和SELINUX,可以提前放开相应策略或者关闭。

配置本地yum源

备份移除所有自带的repo文件,创建本地yum仓库文件

/etc/yum.repos.d/cdrom.repo

安装Apache环境

yum install -y httpd

安装PHP

Centos 7 中自带的PHP版本为5.4(Centos 8中自带的PHP版本为7.2)

安装php和php-pdo

php -v

php -m

Apache和PHP安装完成后,需要检查Apache配置文件是否已加载php库文件,默认是已自动配置加载。

测试PHP环境

创建php测试页面:

测试:IP/index.php

image-20210802113613523

需要注意,如果PHP版本是TS版,需要选择对应的TS版本的达梦数据库dm php和dm pdo驱动库文件。拷贝对应驱动文件到php默认的扩展模块路径下。

使用yum安装的自带的PHP,默认扩展模块的路径为/usr/lib64/php/modules,可以将对应版本的驱动文件拷贝到/usr/lib64/php/modules下。也可以在php.ini中指定扩展模块的路径。

默认扩展模块路径查看: php -i|grep -i extension_dir

(2)修改PHP配置文件php.ini,添加达梦数据库模块库文件

方式1:

php.ini文件中添加:

/etc/php.d/pdo.ini文件中添加:

方式2:

在/etc/php.d目录下,创建两个达梦驱动配置文件dm8.ini和pdo_dm8.ini,分别配置达梦php驱动扩展和pdo驱动扩展。

(3)配置LD_LIBRARY_PATH环境变量

(4)检查dm扩展模块

方法1:通过php -m命令查看

image-20210802172151751

Linux+Apache 2.4+PHP 5.4+达梦数据库

通过访问IP/test.php,测试是否连接数据库成功

image-20210802175538278

问题处理

报错1 PHP Startup: Unable to load dynamic library

pdo模块加载失败

处理办法:

方法1:在php 5.4版本中,pdo扩展配置文件在/etc/php.d/pdo.ini,将dm php pdo驱动添加到pdo.ini文件中

方法2:在/etc/php.d目录下,创建两个达梦驱动配置文件dm8.ini和pdo_dm8.ini,分别配置达梦php驱动扩展和pdo驱动扩展。

报错2 PHP Fatal error:Unable to start dm module

处理办法:

方法1:LD_LIBRARY_PATH环境变量,指定为达梦数据库软件安装目录下的bin目录

方法2:见报错3的处理办法。

报错3 PHP正常,httpd服务启动报错

某些环境下(php 5.*)php -m可以看到已正常加载dm和PDO_DM扩展模块,但是重启httpd服务时报错,httpd的error_log中报错信息如下:

[root@localhost bin]# systemctl start httpdJob for httpd.service failed because the control process exited with error code. See "systemctl status httpd.service" and "journalctl -xe" for details.###httpd error_log报错信息:PHP Fatal error:  Unable to start dm module in Unknown on line 0

来源:LeeWen2020

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2021年7月1日
下一篇 2021年7月1日

相关推荐