# portmaster -l | egrep "(pdo|mysql|roundc)" ===>>> mysql51-client-5.1.73_1 ===>>> php55-mysql-5.5.9 ===>>> php55-pdo-5.5.9 ===>>> php55-pdo_mysql-5.5.9 ===>>> mysql51-server-5.1.73_1 ===>>> php55-mysqli-5.5.9 ===>>> php55-pdo_sqlite-5.5.9 ===>>> roundcube-0.9.5,1
When I try to load the roundcube page, I get these in the log.
roundcube: PHP Fatal error: Undefined class constant 'MYSQL_ATTR_FOUND_ROWS' in /usr/local/www/roundcube/program/lib/Roundcube/rcube_db_mysql.php on line 134
Everything I can find on this error says to install pdo_mysql but I already have it installed, and mysql51 is greater than the required 4.0.8. Soooo....
(I had a similar problem in July with a different error, but that was solved with a strange session.auto_start in roundcube/.htaccess)
I can access the mysql database with the round cube user (this was an existing working install, but the server has gone through a series of software updates. I suspect it was the installation of php55 that broke roundcube).
On 22 Feb 2014, at 23:15 , ɹןʇnqן lbutler+roundcube@covisp.net wrote:
# portmaster -l | egrep "(pdo|mysql|roundc)" ===>>> mysql51-client-5.1.73_1 ===>>> php55-mysql-5.5.9 ===>>> php55-pdo-5.5.9 ===>>> php55-pdo_mysql-5.5.9 ===>>> mysql51-server-5.1.73_1 ===>>> php55-mysqli-5.5.9 ===>>> php55-pdo_sqlite-5.5.9 ===>>> roundcube-0.9.5,1
I completely uninstalled these packages (actually. I completely reinstalled *every* package on the machine, and dropped back to php54):
# portmaster -l | egrep "(pdo|mysql|roundc)" ===>>> mysql51-client-5.1.73_1 ===>>> php5-mysql-5.4.25 ===>>> php5-mysqli-5.4.25 ===>>> php5-pdo-5.4.25 ===>>> php5-pdo_mysql-5.4.25 ===>>> php5-pdo_sqlite-5.4.25 ===>>> mysql51-server-5.1.73_1 ===>>> roundcube-0.9.5,1 # tail -2 /var/log/maillog Feb 23 17:36:20 ns1 roundcube: PHP Fatal error: Undefined class constant 'MYSQL_ATTR_FOUND_ROWS' in /usr/local/www/roundcube/program/lib/Roundcube/rcube_db_mysql.php on line 134 Feb 23 17:36:20 ns1 roundcube: PHP Fatal error: Undefined class constant 'MYSQL_ATTR_FOUND_ROWS' in /usr/local/www/roundcube/program/lib/Roundcube/rcube_db_mysql.php on line 134
I can't find anything on how to fix this other than "make sure that pdo_mysql is installed" which it is. When I go to the roundcube link I just get a blank screen (no login or anything first).
On 23 Feb 2014, at 17:48 , ɹןʇnqן lbutler+roundcube@covisp.net wrote:
Feb 23 17:36:20 ns1 roundcube: PHP Fatal error: Undefined class constant 'MYSQL_ATTR_FOUND_ROWS' in /usr/local/www/roundcube/program/lib/Roundcube/rcube_db_mysql.php on line 134
After the second round of reinstalls I had only done an apachectl -k graceful, had to do a stop/start and then it all worked. duh.