环境说明
操作系统:Centos 7
Apache:2.4.6
PHP:5.4.16
达梦数据库:DM V8 1-2-38
环境安装
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
需要注意,如果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命令查看
通过访问IP/test.php,测试是否连接数据库成功

问题处理
错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
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!