0

Have attempted many times to install 5.35.1 or later 5.36.0 on live Joomla site. Find little info anywhere. Must not be many Joomla installations. Followed instructions explicitly and kept getting php error on file not found which was civicrm.settings.php. Not writing that file to the folders. Removed all files and extracted locally, then FTPed into tmp folder. Install failed, this time the above mentioned file was written, however got a unknown database error failing to create table:

Cannot execute CREATE TABLE `civicrm_extension` ( `id` int unsigned NOT NULL AUTO_INCREMENT COMMENT 'Local Extension ID', `type` varchar(8) NOT NULL , `full_name` varchar(255) NOT NULL COMMENT 'Fully qualified extension name', `name` varchar(255) COMMENT 'Short name', `label` varchar(255) COMMENT 'Short, printable name', `file` varchar(255) COMMENT 'Primary PHP file', `schema_version` varchar(63) COMMENT 'Revision code of the database schema; the format is module-defined', `is_active` tinyint DEFAULT 1 COMMENT 'Is this extension active?' , PRIMARY KEY (`id`) , UNIQUE INDEX `UI_extension_full_name`( full_name ) , INDEX `UI_extension_name`( name ) ) ENGINE=InnoDB DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC: DB Error: unknown error

Just about given up this. Anyone suggest what to do?

Well, I loaded WordPress in a subdirectory and then tried to install Civicrm per the instructions. Everything looked like it was working until it gave a fatal error and stopped with failure to create tables AGAIN. What I get is: An error of type E_ERROR was caused in line 204 of the file /home1/flscv/public_html/wp/wp-content/plugins/civicrm/civicrm/setup/src/Setup/DbUtil.php. ) ENGINE=InnoDB DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC: Specified key was too long; max key length is 767 bytes in /home1/flscv/public_html/wp/wp-content/plugins/civicrm/civicrm I use HostGator with Mysql 5.6 for this site and think now it is a host issue (what else is new?) I can create a new db and actually created the subject table with no issue. The Joomla db was created several years ago and has not presented any problems. The wp db was just created, yet both dbs have the same problem. My Wamp server is running 5.7. I am going to contact hostgator support and hopefully learn if I can get this resolved. May end up going to another host like I have done with other sites due to HostGator issues.

Considered the input in the answer and comments, I have reached the conclusion that at least part of the problem does indeed lie with the MySql configuration settings in HostGator. The version is 5.6 and one of the Innodb settings is set to off and should be on. Talked with HostGator support and they will not make any change to the configuration nor are they considering upgrading the shared server MySql version to 5.7. Bottom line, I cannot use CiviCRM on this server. I use another host and checked that one as well and determined that the MySQL version has the same configuration as HostGator. I have reached out to them to see if they will either make the change and upgrade the version. I am willing to move to another host if I can find one that can meet the CivCRM requirements while keeping costs reasonable. This is for a small non profit organization that has limited funding so working under other constraints as well.

1 Answer 1

0

Welcome to StackExchange! There are fewer installations of CiviCRM on Joomla than Drupal or WP, but it does work, and for most of what it does, Civi doesn't care which CMS it sits on.

You may be hitting problems described here with HostGator. In general, I'd only try to run CiviCRM on a hosting provider that explicitly supports CiviCRM.

The end of the error message simply says "DB Error: unknown error" - which is not much use to you or us! Do your log files provide any more information about the error?

If the logs don't provide further info you could try connecting to the db directly (either command line or phpmyadmin) and copy/paste in the create table statement and see what error it gives.

3
  • Aidan, Thank you for your reply. FYI, I created a new db and ran the subject sql statement. It created the table with no problems. I assume these tables are created in my Joomla database and not a dedicated database for Civicrm. I am a bit reluctant to run the statement on my Joomla db although I do have backups of it.
    – Bob F
    Apr 14, 2021 at 17:39
  • Aidan. The failure in my wp installation relates to the same table civicrm_extension. This is the error message: Error Details ============= An error of type E_ERROR was caused in line 204 of the file /home1/flscv/public_html/wp/wp-content/plugins/civicrm/civicrm/setup/src/Setup/DbUtil.php. ) ENGINE=InnoDB DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC: Specified key was too long; max key length is 767 bytes in /home1/flscv/public_html/wp/wp-content/plugins/civicrm/civicrm
    – Bob F
    Apr 14, 2021 at 17:47
  • @BobF - it would be worth editing your question and including this error message there. There are a couple of other questions with that error that might be relevant - eg civicrm.stackexchange.com/questions/38608/… and civicrm.stackexchange.com/questions/39176/… .. but I doubt you can change those settings on HostGator. Probably need to contact their support.
    – Aidan
    Apr 14, 2021 at 18:09

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.