MySQL在ArchLinux上的安装与启动
2007-05-09 10:57:48 来源:WEB开发网Error: Can't create thread to kill server
3 服务器停止接受新的连接
为了避免在结束过程中新的活动,服务器停止新收新的连接。这样做的方法是结束平时监听的网络连接:TCP/IP端口,Unix套接字文件,Windows命令管道,Windows上的共享主存.
4 服务器结束当前的活动
为每一个与客户端相关的进程,到客户端的每一个连接断开并且每一个进程被标识为死亡.当进程发现他们被进行了这样的标识时就会死掉.空连接的进程会很快死掉.当前正在进行查询的进程会检查他们的状态并且过后死掉.
对于有一个开放事务的进程,事务会滚回.在这里我们要注意的是如果一个进程在更新一个非事务表,例如多行更新或是插入的操作,将会使得表部分更新,因为这样的操作会在完成之前结束.
如果这个服务器是一个主复制服务器,与当前连接的从服务器的进程也会被当作其他的客户端进程对待.也就是说,每一个进程都会被标识为死亡,当下一次检查状态时退出.
如果这个服务器是一个从复制服务器,I/O与SQL进程,如果是活动,将会在客户端进程被标识为死亡之前被停止.SQL进程会允许结束当前的语句然后退出.如果SQL进程此时正在进行事务处理,事务将会滚回.
5 存储引擎结束或是关闭
在这一步,数据表缓存将会被刷新,而所有打开的表都会被关闭.
每一个存储引擎都会为他所管理的数据表进行必要的操作.例如,MyISAM会刷新一个表的索引.
6 服务器结束.事务会滚回.在这里我们要注意的是如果一个进程在更新一个非事务表,例如多行更新或是插入的操作,将会使得表部分更新,因为这样的操作会在完成之前结束.
如果这个服务器是一个主复制服务器,与当前连接的从服务器的进程也会被当作其他的客户端进程对待.也就是说,每一个进程都会被标识为死亡,当下一次检查状态时退出.
如果这个服务器是一个从复制服务器,I/O与SQL进程,如果是活动,将会在客户端进程被标识为死亡之前被停止.SQL进程会允许结束当前的语句然后退出.如果SQL进程此时正在进行事务处理,事务将会滚回.
5 存储引擎结束或是关闭
在这一步,数据表缓存将会被刷新,而所有打开的表都会被关闭.
每一个存储引擎都会为他所管理的数据表进行必要的操作.例如,MyISAM会刷新一个表的索引.
6 服务器结束.
更多精彩
赞助商链接