Magento does many things well, but maintaining an efficient database is not one of them. So you should learn how to perform Magento Database Maintenance?
To perform Database Maintenance, you need to clean the log files. You can clean the log files with admin panel, or by the cleaning function of the Magento. phpMyAdmin also offer a way to clean the log files that can help in maintaining the database of Magento.
Having many products is a good reason to have a large database. Sadly, this is not the only way your database can become large and sluggish. Maintaining the database through log cleaning can result in a dramatic improvement in site performance and latency. This guide explains how to optimize a large and potentially inefficient Magento database.
Attention: Always backup your data before performing any operations on the database.
Magento maintains several tables for logging. These tables log things such as customer accesses and frequently-compared products.
Magento has a mechanism for cleaning these logs regularly, but unfortunately, this feature is disabled by default and most customers do not enable it.
There are three ways to clean out these tables to perform Magento Database Maintenance:
- Log cleaning in the Magento Admin
- Log.php in the ../shell directory
- Manually via phpMyAdmin or MySQL client
Magento’s log cleaning Function:
Magento Log cleaning via administrator Interface
- From the Magento administrator interface, go to System > Configuration.
- In the left menu under Advanced, click System.
- Under Log Cleaning, change Enable Log Cleaning to Yes and configure the Save Log for 15 days:
You can either configure the shell utility log.php as a cron job or run manually to clean on-the-fly.
- From the Magento root directory, type the command:
2. Use the –days switch to specify how many days of history to save.
Manual cleaning via phpMyAdmin
This is the most efficient way to clean the logs for those more comfortable working with databases.
It is faster than the built-in Magento tools and it allows you to clean other tables not included in those tools.
This procedure will consolidate the data inside those tables, often decreasing database size by as much as 95% and greatly reducing query times.
- Open the database in phpMyAdmin.
- In the right frame, select the checkbox for the following tables:
- At the bottom of the page, click the drop-down box With Selected and select Empty.
- A confirmation screen will appear. Click Yes. This will truncate all of the selected tables.
- Click the Structure tab at the top of the page.
- Select the same tables as you did in step 2, then under the With the Selected drop-down menu, select Optimize.
Magento Database Maintenance
Hope now you know how to perform Magento Database Maintenance.
If still any problem, leave the problem in comments.