Contents
Installation procedure for CiviCRM 3.2 on Aegir.koumbit.net
There is a CiviCRM platform. When creating sites in this platform, CiviCRM is automatically installed and enabled.
- But you still need to configure civimail and civimember crons manually
For more information, see: https://redmine.koumbit.net/projects/provision-civicrm
Installation Tips and Notes
Configuration variables
From Administer Civicrm -> global configuration:
- upload directories: set path to site-specific location
Resource URLs: (ex) http://example.org/sites/all/modules/civicrm/
- Localisation: fr_CA, CAD$, fr_CA, monetary display: "%a %c", default country: Canada.
- Date formatting:
- complete date/time: "%e %B, %Y %H:%M"
- complete date: "%e %B %Y"
- month and year: "%B %Y"
- year only: "%Y"
- input complete date: "%d %b %Y"
- input complete date/time: "%d %b %Y, %H : %M"
Notes on triggers/views for multi-lingual
You must use MySQL >= 5.1 (otherwise you have to grant "super" privileges)
- Your server must not use mysql replication. If you must do replication, do it using drdb.
Possible MySQL issues
- CiviCRM sometimes creates large temporary tables. MySQL will create them in /tmp by default, so make sure there is enough space or strange problems may occur (ex: "Database Error Code: Incorrect key file for table '/tmp/#sql_1306_0.MYI'; try to repair it, 126").
Dropping non-civiCRM tables (in a migration situation)
Don't do this unless you are migrating a site into Aegir at the same time
echo 'show tables' | drush sqlc | grep -v Tables_in | grep -v "+" | grep -v 'civicrm_' | gawk '{print "drop table " $1 ";"}' | drush sqlc
Other things to remember
- make sure all files have the correct permissions. i.e. www-data ownership (on Koumbit servers).
- make sure the smarty template directory, defined in civicrm.settings.php, has write permission by web server.
configure paths from Administer Civicrm -> paths / locale.
[Deprecated] Overview of the installation procedure (old / manual installation)
In other words, here is what to expect:
Install a fresh Drupal 5.x
See DrupalInstallHowto, or
- Untar in a /var/www/ directory and read its INSTALL.mysql.txt and INSTALL.txt
Create the database user, database and grant necessary access (or via AlterncService)
add the crontab (crontab -e -u www-data for example)
- Create the Drupal administrator account (by visiting the newly installed website) and configure Drupal roles.
Download and untar civicrm in sites/all/modules/ (i.e. you should have /var/www/sites/all/modules/civicrm/[civicrm files here]).
Read the installation guide.
- CiviCRM may use the same database as Drupal, as documented, so I opted for that. However, it can be quite useful to have CiviCRM in a seperate database, in order to reduce risks while Drupal or CiviCRM upgrades.
- Load the database schema (sql/civicrm_41.mysql)
- Load basic data so that civicrm can run: (sql/civicrm_data.mysql)
- Copy the civicrm.settings.php.sample as sites/default/civicrm.settings.php and adapt to your requirements.
Create the file sites/all/modules/civicrm/settings_location.php which will point to the directory where the civicrm.settings.php is located. This is a bit strange in my opinion, but that is what dlobo suggested:
<?php // [ML] http://www.nabble.com/Two-problems-with-the-calendar-%28drupal-translation%29-tf3334905s15986.html // the directory name for your 'sites' location in drupal. We use the below location // along with drupal 'conf_init()' function to figure out where the settings files // are located. This is primarily used when we hit CiviCRM outside of 'Drupal' // (via mail/soap // etc) define( 'CIVICRM_CONFDIR', '/var/alternc/html/a/admin/crm/sites' ); ?>
The above conf is also useful for the CiviMail cron, which is called directly (http://www.example.org/sites/all/modules/civicrm/bin/civimail.cronjob.php?name=civimail&pass=XXXX)
If all went well, the last step would be to login to the Drupal site, go in the administrative panel and activate the civicrm module.