I'm taking over a project that uses Drupal 7 and CiviCRM (circa v4.3). When I add civicrm.settings.php
the site crashes and I get this error message:
Initialization Error
Array
(
[callback] => Array
(
[0] => CRM_Core_Error
[1] => simpleHandler
)
[code] => -25
[message] => DB Error: extension not found
[mode] => 16
[debug_info] => [DB Error: extension not found]
[type] => DB_Error
[user_info] => [DB Error: extension not found]
[to_string] => [db_error: message="DB Error: extension not found" code=-25 mode=callback callback=CRM_Core_Error::simpleHandler prefix="" info=" [DB Error: extension not found]"]
)
The site works until civicrm.settings.php
is added. In the settings file I've added the CIVICRM_UF_DSN
and CIVICRM_DSN
as mysqli://root:[email protected]:8001/civi_db?new_link=true
. (I've also tried mysql with the same results). Everything else in the file is copied directly from the staging instance, the above credentials are correct and I can connect to the Docker MySQL DB with other programs.
Additional info: the above error message is rendered twice on the page, and I have seen other Civi warnings that make me think Civi may be trying to initialize twice but I don't know why this would be. I'm not sure if that's causing this particular issue if it's not I'd rather troubleshoot it once this is resolved.
It's hard to remember everything I did to set the site up locally since there was a lot of trial and error... At a high level:
The site was copied from the staging server with scp
I pulled everything down and put it in a Docker php:7.1-apache container*.
Both the Drupal, and Civi databases were dumped with Mysql dump and then copied into a volume locally.
I deleted the Civi cached files as recommended in the switching servers document.
*this differs a bit from staging because they are using Nginx. It's not super easy to find old PHP containers with Nginx although at a future point I may need to build a custom container with Nginx.