Unfortunately, you have to let InnoDB purge all its moving parts (Redo Logs, Undo Logs, Dirty Pages, Index Changes, Log Buffer Contents, etc)
Going forward, I recommend the following : Set innodb_max_dirty_pages_pct = 0
By default, innodb_max_dirty_pages_pct is 75. If you set it to 0, it forces the InnoDB Storage Engine to flush every dirty page and its grandmother out of the InnoDB Buffer Pool without any pausing. It will either flush every page or flush it low enough so that new dirty pages enter the Buffer Pool as fast as old dirty pages are flushed out.
Flushing dirty pages and cleaning up transaction is what consumes the most time in a shutdown. Minimizing the number of pages shortens shutdown time.
You can monitor the following status variables
Watch them decrease until it hits zero or levels off. Then, you can issue a shutdown.
Here are additional settings you could use
Give it a Try !!!
Afterthoughts
Don't worry about dumping the buffer pool map and reloading. The output file is very small.
SATA/RAID0 sound scary to me. You should be using SAS/RAID10 for InnoDB.
At the very least you think about splitting up InnoDB data, logs, and system tablespaces into separate devices. See my earlier post MySQL on SSD - what are the disadvantages?
You should also think about getting away from Barracuda. See my old post innodb_file_format Barracuda
UPDATE 2014-12-07 18:14 EST
If you want to interrupt an InnoDB purge of everything and you don't want to preserve the data being fixed up, your only option is to set InnoDB Recovery Options. See my post The InnoDB log sequence number is in the future. If you use the innodb_force_recovery options, it may not let you do any more writes of InnoDB. If you a moderate amount of data, you could mysqldump whatever data can come out, shutdown mysqld, delete all data folders (except mysql schema), ib_logfile0, ib_logfile1, and ibdata1, start up mysql, reload data.
I cannot really help you if you have 1TB in a forced recovered state.
Best Answer
SHUTDOWN
MySQL 5.7 now features the SHUTDOWN command, which requiresthe SHUTDOWN privilege.
SHUTDOWN METHOD #1: Within mysql client
SHUTDOWN METHOD #2: From OS using mysql client
SHUTDOWN METHOD #3: Using mysqladmin
This can be done with any MySQL 5.x version
STATUS
You can use mysqladmin
For example, to see if mysqld is alive, run this:
You can also do one of the following:
AUTO START
Make sure you have
chkconfig mysqld on
orchkconfig mysql on
enabledThere are no mysql utility programs to auto-startup except for mysqld_safe, which is launched by the mysqld (or mysql) service. This is usually issued by
sudo service mysqld start
(MySQL 5.7) orsudo service mysql start
.If you would like to attempt to write a custom mysqld_safe script, please see my old posts for ideas
Sep 30, 2011
: Running multiple instances on the same hostSep 17, 2012
: mysqlservice command syntax