I've a huge InnoDB table customer_users_old
(150G) that it's not in use anymore in the database, it was renamed from customer_users
.
My setup has a Master-Slave replication of MySQL 5.5 with innodb_file_per_table
activated, so the table has it's own files.
As the DROP
command takes a lot of time, I'm afraid it can have some inpact on the prodcution database.
So I'm thinking on disaling unique and foreign key checks for the session as it was suggested on DROP TABLE on a huge InnoDB table:
SET FOREIGN_KEY_CHECKS=0;
SET UNIQUE_CHECKS=0;
And disabling the binary log to drop the table first on the master and then on the slave as it was suggested on Deleting data from a large table with replication:
SET sql_log_bin = 0;
Will this speedup the process and minimize the impact on the servers load?
Best Answer
In the end we realized that the process was so slow because we did try to do the
DROP
while themysqldump
backup was running and the table was blocked by the backup process.After the backup process had finished the
DROP
was quite fast and took only some minutes and did not have a big inpact on the server performance.