简体   繁体   中英

Cannot install php-ZendFramework-Db-Adapter-Pdo-Mysql on Centos

I have completed a zend project on my personal laptop that uses fedora and just transferred it to the official server which runs on the CentOs distribution. When I ran it, I got the same problem as I did with fedora, which is:-

[Wed Jan 27 21:04:28 2016] PHP Warning:  include_once(Zend/Db/Adapter/Pdo/Mysql.php): failed to open stream: No such file or directory in /usr/share/php/Zend/Loader.php on line 134
[Wed Jan 27 21:04:28 2016] PHP Warning:  include_once(): Failed opening 'Zend/Db/Adapter/Pdo/Mysql.php' for inclusion (include_path='/var/www/inference_assist/application/../library:/var/www/inference_assist/library:.:/usr/share/pear:/usr/share/php') in /usr/share/php/Zend/Loader.php on line 134
[Wed Jan 27 21:04:28 2016] PHP Warning:  include_once(Zend/Db/Adapter/Pdo/Mysql.php): failed to open stream: No such file or directory in /usr/share/php/Zend/Loader.php on line 134
[Wed Jan 27 21:04:28 2016] PHP Warning:  include_once(): Failed opening 'Zend/Db/Adapter/Pdo/Mysql.php' for inclusion (include_path='/var/www/inference_assist/application/../library:/var/www/inference_assist/library:.:/usr/share/pear:/usr/share/php') in /usr/share/php/Zend/Loader.php on line 134
[Wed Jan 27 21:04:28 2016] PHP Fatal error:  Uncaught exception 'Zend_Exception' with message 'File "Zend/Db/Adapter/Pdo/Mysql.php" does not exist or class "Zend_Db_Adapter_Pdo_Mysql" was not found in the file' in /usr/share/php/Zend/Loader.php:87
Stack trace:
#0 /usr/share/php/Zend/Db.php(263): Zend_Loader::loadClass('Zend_Db_Adapter...')
#1 /usr/share/php/Zend/Application/Resource/Db.php(142): Zend_Db::factory('PDO_MYSQL', Array)
#2 /usr/share/php/Zend/Application/Resource/Db.php(160): Zend_Application_Resource_Db->getDbAdapter()
#3 /usr/share/php/Zend/Application/Bootstrap/BootstrapAbstract.php(695): Zend_Application_Resource_Db->init()
#4 /usr/share/php/Zend/Application/Bootstrap/BootstrapAbstract.php(638): Zend_Application_Bootstrap_BootstrapAbstract->_executeResource('db')
#5 /usr/share/php/Zend/Application/Bootstrap/BootstrapAbstract.php(598): Zend_Application_Bootstrap_BootstrapAbstract->_bootstrap(NULL)
#6 /usr/share/php/Zend/Application.php(373): Zend_Application_Bootstrap_BootstrapAbstract->bootstrap(NULL)
#7 /var/www/inference_assist/public/ in /usr/share/php/Zend/Loader.php on line 87

I have solved this problem in fedora using this answer ( Missing /Zend/Db/Adapter/Pdo/Mysql.php )

But if I try the same thing on CentOs, I get the following error:-

Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirror.optus.net
 * epel: kdeforge2.unl.edu
 * extras: mirror.optus.net
 * remi-safe: remi.conetix.com.au
 * updates: centos.mirror.crucial.com.au
 * webtatic: sp.repo.webtatic.com
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package php-ZendFramework-Db-Adapter-Pdo-Mysql.noarch 0:1.12.3-1.el6 will be installed
--> Processing Dependency: php-ZendFramework-Db-Adapter-Pdo = 1.12.3-1.el6 for package: php-ZendFramework-Db-Adapter-Pdo-Mysql-1.12.3-1.el6.noarch
--> Processing Dependency: php-ZendFramework = 1.12.3-1.el6 for package: php-ZendFramework-Db-Adapter-Pdo-Mysql-1.12.3-1.el6.noarch
--> Running transaction check
---> Package php-ZendFramework-Db-Adapter-Pdo.noarch 0:1.12.3-1.el6 will be installed
--> Processing Dependency: php-ZendFramework = 1.12.3-1.el6 for package: php-ZendFramework-Db-Adapter-Pdo-1.12.3-1.el6.noarch
---> Package php-ZendFramework-Db-Adapter-Pdo-Mysql.noarch 0:1.12.3-1.el6 will be installed
--> Processing Dependency: php-ZendFramework = 1.12.3-1.el6 for package: php-ZendFramework-Db-Adapter-Pdo-Mysql-1.12.3-1.el6.noarch
--> Finished Dependency Resolution
Error: Package: php-ZendFramework-Db-Adapter-Pdo-Mysql-1.12.3-1.el6.noarch (epel)
           Requires: php-ZendFramework = 1.12.3-1.el6
           Installed: php-ZendFramework-1.12.17-1.el6.remi.noarch (@remi)
               php-ZendFramework = 1.12.17-1.el6.remi
           Available: php-ZendFramework-1.12.3-1.el6.noarch (epel)
               php-ZendFramework = 1.12.3-1.el6
Error: Package: php-ZendFramework-Db-Adapter-Pdo-1.12.3-1.el6.noarch (epel)
           Requires: php-ZendFramework = 1.12.3-1.el6
           Installed: php-ZendFramework-1.12.17-1.el6.remi.noarch (@remi)
               php-ZendFramework = 1.12.17-1.el6.remi
           Available: php-ZendFramework-1.12.3-1.el6.noarch (epel)
               php-ZendFramework = 1.12.3-1.el6
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest

I tried using --skip-broken to work around the problem but to no avail and entering rpm -Va --nofiles --nodigest seems to do nothing at all.

Can anyone please provide the solution/explanation to the above error?

After a couple hours of searching and experimenting, I found the answer:- I had to run: -

yum --enablerepo=remi,remi-php54 install php-ZendFramework-Db-Adapter-Pdo-Mysql.noarch

instead of just: -

 yum install php-ZendFramework-Db-Adapter-Pdo-Mysql

Thanks to this answer( https://stackoverflow.com/a/21935770/4064854 )

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM