当您终止已锁定数据库表的进程时会发生什么?

当您终止已锁定数据库表的进程时会发生什么?

尝试终止正在运行 MySQL 数据库备份的进程,并且表已锁定。如果我终止该进程,会发生什么?

答案1

这取决于执行备份的进程。此外,还取决于您向该进程发送的信号。

如果您使用信号终止了进程SIGTERM,则该进程可能已实现适当的信号处理程序。在这种情况下,进程将能够在退出之前解锁表。

SIGKILL如果您使用信号终止进程(kill -9),则进程在退出之前将没有机会清理所有内容。因此,表将保持锁定状态。在这种情况下,只有 mysql 服务器才能解锁表(我不确定它是否真的会这样做)。

相关内容