Converting Zarafa database to innodb_file_per_table
Minimal Artica version: 1.6.080314
Having everything in one big file means all tables and indexes, from all schemes, are `mixed` together in that file.
We recommend to split this file with the innodb_file_per_table parameter.
This parameter create a .ibd file for each table Instead of using one large ibdata file for all data.
Having a file per table will give more flexibility to move tables to different filesystem partitions for better performance.
In this case:
- Tablespace is not shared among different tables, and certainly not among different schemes.
- Each file is considered a tablespace of its own.
- tablespace never reduces in size.
- It is possible to regain space per tablespace.
The converting operation is not really simple:
To convert to innodb_file_per_table, Artica must backup your MySQL server, remove all datas and restore all backuped datas.
This operation require some disk space and time so it is intended to perform this operation out of production mode.
By default, Artica will use /home/mysqldump directory to save backuped data so you need to be sure that you have disk space in that directory.
To convert the MySQL engine to innodb_file_per_table, open the Zarafa dedicated section.
- Make sure your have some backup containers
- Click on tools tab.
- Click on Convert to innodb file per table icon.
- A new screen is displayed.
- If you are ready, click on "Convert to innodb file per table" button.
- Wait durning the operation.
If you want to see what Artica do you can execute this command-line:
php5 /usr/share/artica-postfix/mysqldefrag.php --innodbfpt --verbose
If the import is failed, databases dump will still stored in the export directory.
In this case, you can perform:
php5 /usr/share/artica-postfix/mysqldefrag.php --innodbfpti --verbose
In order to re-execute the import task.
But you have to choose to perform this operation trough the web interface OR trough command line.
If your MySQL is converted to innodb_file_per_table, the icon must be displayed as grey.