摘要: 创建分区表的主要语法包含两部分:创建主表和创建分区。 建主表语法如下: CREATE TABLE table name ( ... ) [ PARTITION BY { RANGE I LIST ) ( { column name I ( expression ) ) 创建主表时须指定分区方式,可选 阅读全文
posted @ 2024-02-01 21:43 jl1771 阅读(13) 评论(0) 推荐(0) 编辑
摘要: 本节,我将介绍一种新的句柄类型——SQLHSTMT语句句柄。SQLHSTMT的父级是连接句柄。您必须先释放所有子语句句柄,然后才能释放连接句柄。ODBC 结果处理模型比其他 PostgreSQL API 更复杂。在 libpq、libpq++ 和 libpgeasy API 中,您向服务器发送查询, 阅读全文
posted @ 2024-01-24 23:00 jl1771 阅读(6) 评论(0) 推荐(0) 编辑
摘要: 在本节中,我将添加一些简单的错误处理函数,并向您展示如何正确释放您创建的句柄资源。为了使您的 ODBC 编程更轻松一些,您可以使用以下函数来检查成功或失败: static bool SQL_OK(SQLRETURN result){ if(result==SQL_SUCCESS || result= 阅读全文
posted @ 2024-01-24 22:56 jl1771 阅读(2) 评论(0) 推荐(0) 编辑
摘要: 让我们看一个示例代码client1.c。第一个客户端应用程序连接到数据库,然后退出。 #include <sql.h> #include <sqlext.h> #include <stdio.h> #include <stdlib.h> int main( int argc, char * argv 阅读全文
posted @ 2024-01-24 22:51 jl1771 阅读(5) 评论(0) 推荐(0) 编辑
摘要: 1 获取unixODBC和psqlodbc源码包 打开https://github.com/lurcher/unixODBC/tags,以下载unixODBC-2.3.7.tar.gz为例 打开https://www.postgresql.org/ftp/odbc/versions/src/,以下载 阅读全文
posted @ 2024-01-23 21:26 jl1771 阅读(44) 评论(0) 推荐(0) 编辑
摘要: 快速回顾一下,autovacuum后台进程清理死行,例如旧的已删除行版本。您也可以通过运行手动执行清理VACUUM,但autovacuum会根据表中死行的数量在适当的时候自动执行清理,不要太频繁但足够频繁以控制“垃圾”的数量。 一般来说,autovacuum不能运行得太频繁,只有在表中累积了一定数量 阅读全文
posted @ 2024-01-15 22:14 jl1771 阅读(17) 评论(0) 推荐(0) 编辑
摘要: 在PostgreSQL中,清理是一项维护任务,有助于优化数据库性能和回收空间。它涉及从表和索引中删除已删除或过时的行,以及更新查询计划器使用的统计信息。这个过程对于防止不必要的数据(称为“死行”)的积累是必要的,这些数据会占用大量空间并降低查询速度。 多版本并发控制(MVCC) 为了保持一致性和防止 阅读全文
posted @ 2024-01-15 22:11 jl1771 阅读(32) 评论(0) 推荐(0) 编辑
摘要: 开箱即用的默认 PostgreSQL 配置并未针对任何特定工作负载进行调整。设置默认值以确保 PostgreSQL 在任何地方运行,消耗最少的资源,并且不会导致任何漏洞。它具有所有数据库参数的默认设置。数据库管理员或开发人员主要负责根据系统的工作负载调整 PostgreSQL。在这篇博文中,我们将深 阅读全文
posted @ 2024-01-15 21:56 jl1771 阅读(58) 评论(0) 推荐(0) 编辑
摘要: PostgreSQL 复制(同步和异步复制)是数据库社区中最广泛使用的功能之一。如今,人们正在构建高可用性集群或使用复制来创建只读 副本来分散工作负载。这里需要注意的是,如果您使用复制,则必须确保您的集群受到正确监控。 这篇文章的目的是解释一些基础知识,以确保您的 PostgreSQL 集群保持健康 阅读全文
posted @ 2024-01-15 21:53 jl1771 阅读(43) 评论(0) 推荐(0) 编辑
摘要: 概要 VACUUM 和 ANALYZE 是PostgreSQL 数据库两个最重要的维护操作。 VACUUM 用于回收表中“死元组”占用的空间。当删除或更新记录(先删除后插入)时,会生成死元组。PostgreSQL 不会从表中物理删除旧行,而是在其上放置一个“标记”,以便查询不会返回该行。当 vacu 阅读全文
posted @ 2024-01-15 21:32 jl1771 阅读(59) 评论(0) 推荐(0) 编辑