The MySQL error “ERROR 1053: Server shutdown in progress” appears when MySQL stops accepting connections because it is shutting down, restarting, crashed, or stuck in a partial shutdown state.

This error often blocks applications, WHM/cPanel services, WordPress sites, and database scripts from connecting.

It usually means one of the following:

  • MySQL is restarting

  • MySQL crashed during shutdown

  • A long-running query is blocking shutdown

  • A corrupted table stalled the server

  • Disk or memory limits caused MySQL to freeze

  • An upgrade interrupted MySQL’s normal shutdown cycle

If you’re fixing this in production and need fast help, check our Emergency Server Support or Linux Server Management.


1. What Causes the “Server Shutdown in Progress” Error?

Below are the real reasons this error happens on MySQL/MariaDB servers.


1. MySQL is already shutting down

If a stop or restart event was triggered:

systemctl restart mysqld
systemctl stop mariadb

…MySQL enters shutdown mode and temporarily blocks all new connections.


2. A long-running query or transaction is preventing shutdown

MySQL waits for active threads to finish before stopping.

Common offenders:

  • Large ALTER TABLE operations

  • Full table exports

  • Long imports

  • Huge JOIN operations

  • Backups (mysqldump) still running


3. MySQL crashed but left a “half-shutdown” state

If mysqld died abruptly, systemd or init may think it is “shutting down” even though the process is gone.


4. Corrupted InnoDB tables

When MySQL detects corruption, it tries to shut down cleanly — often failing midway.

Check:

/var/log/mysqld.log

Look for:

InnoDB: Attempting a graceful shutdown
InnoDB: Corruption detected

5. Out-of-disk or memory exhaustion

If /var/lib/mysql/ has no free space, or RAM is exhausted, MySQL may refuse reads/writes and enter shutdown mode.


6. Upgrade or service conflict

During:

  • cPanel updates

  • MySQL → MariaDB conversions

  • OS updates

  • Yum/DNF package upgrades

…MySQL is temporarily stopped, triggering this error.


2. How to Fix “Server Shutdown in Progress” (Step-by-Step)

Follow these fixes in order. They are safe for production servers.


Step 1 — Check if MySQL is actually running

systemctl status mysqld
systemctl status mariadb

If inactive → proceed to restart.


Step 2 — Force-stop MySQL if it’s stuck

If it shows shutting down for too long:

systemctl stop mysqld

If that fails:

killall -9 mysqld

Then:

systemctl start mysqld

Step 3 — Check the error logs

journalctl -u mysqld -xe
cat /var/log/mysqld.log

Look for:

  • Corruption

  • Low disk space

  • Killed queries

  • Restart loops


Step 4 — Fix long-running queries blocking shutdown

Identify active threads:

mysql -e "SHOW PROCESSLIST;"

Kill specific thread:

mysql -e "KILL QUERY <ID>;"

Or kill all sleeping threads:

mysql -e "KILL ALL QUERY;"

Step 5 — Fix InnoDB corruption (if detected)

Enable forced recovery (temporary only!):

Edit:

/etc/my.cnf

Under [mysqld] add:

innodb_force_recovery = 1

Start MySQL:

systemctl start mysqld

Dump your databases → remove force recovery → restart normally.


Step 6 — Free up disk space

Check storage:

df -h

If /var/lib/mysql is full, MySQL will not restart.

Remove old logs:

rm -f /var/lib/mysql/*.err
rm -f /var/lib/mysql/*.old

Or rotate logs:

logrotate -f /etc/logrotate.d/mysql

Step 7 — Rebuild tables if crash detected

mysqlcheck --all-databases --repair --use-frm

Step 8 — Restart MySQL cleanly

systemctl restart mysqld

If MariaDB:

systemctl restart mariadb

If it starts normally → error solved.


3. How to Prevent This Error in the Future

  • Enable automatic MySQL monitoring

  • Keep disk usage below 80%

  • Avoid interrupting upgrades or restarts

  • Use proper shutdown commands

  • Clean large temporary tables

  • Enable slow query logs

  • Monitor InnoDB health

  • Regularly upgrade MySQL/MariaDB safely

All of this is handled under our Proactive Server Management.


4. Quick Diagnostic Commands

Check running queries:

SHOW FULL PROCESSLIST;

Check InnoDB status:

SHOW ENGINE INNODB STATUS\G

Check uptime:

mysqladmin status

Conclusion

The MySQL error “Server shutdown in progress” appears when MySQL is stopping, stuck in a partial shutdown, blocked by long-running queries, or affected by corruption.

Following the steps above will help you restart MySQL safely, repair underlying issues, and eliminate the error permanently.

If your MySQL server is stuck or down in production, our team can recover it instantly through Emergency Server Support or long-term Linux Server Management.