Ale*_*lex 2 kill lock database open-files
我想杀死一个与数据库有开放连接的进程。如果我终止该进程,我可以确保数据库已解锁吗?
“在调用过程中打开的所有文件描述符、目录流、转换描述符和消息目录描述符都应关闭”。这就是 POSIX 所说的,如果进程因信号而退出(即通过“杀死它”)。
所以客户端,一个访问服务器的进程,肯定会关闭它的网络连接端。当客户端(“您的进程”)被杀死时,服务器(“数据库”)的行为由服务器决定(检测并采取行动)。
网络连接肯定会在客户端关闭,但是在这种情况下服务器对会话做了什么就很难说了。如果它对表或表中的行有锁,应该什么时候释放?
MySQL 有一个空闲会话超时,之后它会释放消失的客户端持有的锁(请参阅此 StackOverflow 问题)。您将不得不查看您使用的特定数据库的文档以了解可能发生的情况,但我的猜测是在大多数情况下会涉及某种形式的空闲计时器。
归档时间: |
|
查看次数: |
4106 次 |
最近记录: |