# 客户端管理器
[![](https://box.kancloud.cn/2016-04-26_571f700227473.png)](http://files.devbean.net/images/2016/03/client_manager.png)
客户端管理器处理数据库与客户端之间的通讯。所谓客户端,可以是(网络)服务器或最终用户/应用程序。客户端管理器提供了多种不同方法访问数据库,包括一系列著名的 API:JDBC、ODBC、OLE-DB 等。
客户端管理器还提供了数据库访问的专有 API。
当你连接到一个数据库时:
* 管理器首先检查你的**认证**(用户名和密码),然后检查你是不是有使用数据库的**授权**。访问权限由 DBA 设置。
* 然后,管理器检查是不是有一个可用的进程(或线程)可以管理你的查询。
* 管理器还要检查数据库是不是处于过载状态。
* 管理器会等待一段时间,以便获取必要的资源。如果等待超时,它就会管理连接,然后返回一个人可读的错误信息。
* 然后,管理器会**将你的查询发送到查询管理器**,这样,你的查询就被处理了。
* 由于查询处理并不是“要么全部,要么没有”,只要它从查询管理器取得数据,它就会**将这部分数据保存在一个缓冲区,然后开始将数据发送**给你。
* 如果出现了问题,它就会停止连接,返回给你**可读的原因**,然后释放资源。