Moving an Existing Database from One Install to Another
This step helps you import data from a previous installation into your server. If you are not importing an already existing database from a previous/other installation, please skip this step.
After your pre-registration ends and before your at-convention registration begins, you will need to prepare the at-convention server with the data from your web server. Follow the steps to install and configure a new server, then continue here.
-
Export the event data from the webserver. (Requires an account with the "admin_sys_admin" or "System_installer" permission.)
-
Log in to the Convention Master console on your web server.
-
Go to the Admin - Install tab and select Export Database File.
-
Check "Set Events Read-Only". (This will prevent any changes to the database.)
-
Create and write down a password and enter it into the password fields. (This will encrypt the database export with the password)
-
Comments are optional, and will be included as a textfile with your export. It is not a good idea to put anything sensitive like passwords in the comments section.
-
Click submit and let it work. This may take a few minutes if you have a large database. Please do not click Stop, Back, or Refresh during this process.
-
Please leave this page open once it finishes.
-
Download the export to your at-convention server.
-
Log into your at-convention server.
-
Type the following commands to download the export to the current directory you are in: (replace the text inside the brackets with the correct url, do not include the brackets
cd $HOME
wget [https://yourwebsite.convention.master/url]/logs/convention_master.tar
-
Now unzip the file:
tar -xf convention_master.tar
-
Run the following command and enter the same password used when using the export tool in step 1.
sudo ./unpack.php
-
Now drop (delete) and re-create the database you created on your at-con server when doing the setup script earlier. Do this by logging into the mysql command line and perform the following commands, or use a graphical tool like phpMyAdmin to get the same results.
-
sudo mysql
-
Your console should now show

-
Re-create the database: (replace convention_master with your database name) Do not include Mysql>
Mysql> drop database convention_master;
-
Re-create the database: (replace convention_master with your database name) Do not include Mysql>
Mysql> create database convention_master;
-
Quit MySQL: Do not include Mysql>
Mysql> quit;
-
Import the mysqldump data into your database.
-
Use this mysql command to import the data. (replace database_name accordingly)
mysql -u CMUser -p database_name < cm_dump.sql
(Parts in bold may be different, ie you created another MySQL user or manually changed the database name.)
-
If the import does not work properly you may need to edit your sql file (with joe or your preferred editor) and enter the following:
-
On the first line add:
SET FOREIGN_KEY_CHECKS=0;
-
On the last line add:
SET FOREIGN_KEY_CHECKS=1;