• postgresql 扩展查询

    postgresql 是使用扩展协议进行prepare/bind方式查询的 在扩展的协议里,前端首先发送一个 Parse 消息,它包含一个文本查询字串, 另外还有一些有关参数占位符的数据类型的信息,以及一个最终准备好的语句对象的名字(一个空字串选择未命名的准备好的语句)。 响应要么是一个 ParseComplete 要么是 ErrorResponse。 参 ...

    阅读全文
    作者:klwang | 分类:Database, postgresql | 阅读:1,393 views | 标签:,
  • postgresql 连接终止过程

    通常的终止过程的优雅方法是前端发送一条 Terminate (终止)消息并且立刻关闭联接。 一旦收到消息,后端马上关闭联接并且退出。 在少数情况下(比如一个管理员命令数据库关闭),后端可能在没有任何前端请求的情况下断开连接。 在这种情况下,后端将在它断开连接之前尝试发送一个错误或者通知信息,给出断开的原因。 ...

    阅读全文
    作者:klwang | 分类:Database, postgresql | 阅读:2,397 views | 标签:,
  • postgresql 的查询取消操作

    原来pg的取消查询是这么做的,果然眼前一亮啊。 在一条查询正在处理的时候,可能取消该查询的处理。 这样的取消请求不是直接通过打开的连接发送给后端的,这么做是因为实现的有效性: 我们不希望后端在处理查询的过程中不停地检查前端来的输入。 取消请求应该相对而言比较少见,所以我们把取消做得稍微笨拙一些,以便不 ...

    阅读全文
    作者:klwang | 分类:Database, postgresql | 阅读:2,178 views | 标签:,
  • postgresql 简单查询处理过程

    一个SQL查询循环是由前端发送一条 Query 消息给后端进行初始化的。 这条消息包含一个用文本字串表达的 SQL 命令(或者一些命令)。 后端根据查询命令字串的内容发送一条或者更多条响应消息给前端, 并且最后是一条 ReadyForQuery 响应信息。 ReadyForQuery 通知前端它可以安全地发送新命令了。 (实际上前端不必在发送 ...

    阅读全文
    作者:klwang | 分类:Database, postgresql | 阅读:1,361 views | 标签:,
  • postgresql 错误消息和具体格式含义

    postgresql使用ErrorResponse报文向前端发送错误信息,具体消息格式如下: Byte1('E') 标识消息是一条错误。 Int32 以字节记的消息内容的长度,包括长度本身。 消息体由一个或多个标识出来的字段组成,后面跟着一个字节零作为终止符。 字段可以以任何顺序出现。对于每 ...

    阅读全文
    作者:klwang | 分类:Database, postgresql | 阅读:1,374 views | 标签:,
  • postgresql 登陆验证时的SSL过程

    postgresl支持 SSL 加密数据传输 如果编译 PostgreSQL 的时候打开了 SSL 支持,那么前后端通讯就可以用 SSL 加密。 这样就提供了一种在攻击者可能捕获会话通讯数据包的环境下保证通讯安全的方法。 有关使用 SSL 加密 PostgreSQL 会话的更多信息。 要开始一次 SSL 加密联接,前端先是发送一个 SSLRequest 消息(当然要和 ...

    阅读全文
    作者:klwang | 分类:Database, postgresql | 阅读:3,030 views | 标签:,
  • postgresql copy 命令执行

    postgresql使用copy命令导入导出表中的数据 COPY 命令允许在服务器和客户端之间高速的大批量数据传输。 拷贝入和拷贝出操作每个都把连接切换到一个独立的子协议中,并且持续到操作结束。 拷贝入模式(数据传输到服务器)是在后端执行一个 COPY FROM STDIN SQL 语句的时候初始化的。 后端发送一个 CopyInResponse 消息给 ...

    阅读全文
    作者:klwang | 分类:Database, postgresql | 阅读:1,869 views | 标签:,
  • postgresql 函数调用

    postgresql使用Function Call通信协议调用函数和存储过程 Function Call 子协议允许客户端请求一个对存在于数据库 pg_proc 系统表中的任意函数的直接调用。客户端必须在该函数上有执行的权限。 注意: Function Call 子协议是一个遗留的特性,在新代码里可能最好避免用它。 类似的结果可以通过设置一个 SELE ...

    阅读全文
    作者:klwang | 分类:Database, postgresql | 阅读:2,194 views | 标签:,
  • postgresql 消息格式

    本节描述各种消息的详细格式.每种消息都标记为它是由一个前端 (F), 一个后端 (B)或者两者(F & B)发送的。 请注意,尽管每条消息在开头都包含一个字节计数,消息格式也定义为我们可以不用参考字节计数就可以找到消息的结尾。 这样就增加了有效性检查。(CopyData 消息是一个例外,因为它形成一个数据流的一 ...

    阅读全文
    作者:klwang | 分类:Database, postgresql | 阅读:1,292 views | 标签:,
  • postgresql 会话启动过程

    要开始一个会话,前端打开一个与服务器的连接并且发送一个启动消息。 这个消息包括用户名以及用户希望与之连接的数据库; 它还标识要使用的特定的协议版本。(另外,启动信息可以包括用于运行时参数的额外设置。) 服务器然后就使用这些信息以及它的配置文件的内容 (比如 pg_hba.conf)以判断这个连接是否可以接受,以 ...

    阅读全文
    作者:klwang | 分类:Database, postgresql | 阅读:1,260 views | 标签:,