自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(62)
  • 资源 (5)
  • 收藏
  • 关注

原创 数据库微观案例第53期

根因:在事务隔离级别RC下,事务更新行时,如果此行被其他事务更新,需要重新读取新的版本再重试一次,而范围更新的场景下,tuple新版本大概率会在其它页面上,更容易形成ABBA锁的条件,出现死锁。从MySQL迁移过来的业务如果不希望带时区信息时,应该明确使用timestamp without time zone类型,而不要使用timestamp别名类型。gs_copy_summary表记录COPY执行结果汇总,包括成功行数,出错行数,忽略行数,空行数。业务查询这个大表时,字段有50多个,记录有三千多万。

2024-12-26 16:19:50 792

原创 磐维分布式之轻量化部署

本文介绍在麒麟v10 SP2下部署磐维数据库分布式版本,主要用于个人学习测试,不能用于生产环境部署。

2024-12-22 09:17:51 458

原创 YashanDB崖山数据库部署问题及解决

本文在Cenots 7.9/Centos8.4的arm架构下测试YashanDB官网最新的企业版

2024-12-22 09:09:41 661

原创 数据库微观案例第52期

系统自动帮我们生成了10月之前的上边界分区,同时利用了10月的分区名称,10月之前的上边界分区名称为p2410_0,10月的分区名称为p2410_1,11月的分区名称保持不变。注记的编写并不是一件容易的事,即要兼顾不同提交者的声音,又要对所有的变化保持简明扼要及张弛有度。可对于新特性重度爱好者,注记内容的详实度级别是不够的,而这些新增的链接对他们如获至宝。再次查看分区表详情,符合预期。

2024-12-15 11:32:44 1319

原创 数据库微观案例第50期

这个功能仅影响 UNIQUE,PRIMARY KEY,REFERENCES (外键)和 EXCLUDE 约束,他们是可延迟的,而NOT NULL和CHECK是不可以做延迟生效的。执行自治事务可通过pg_running_xacts视图进行观测,自治事务的会话连接,sessionid对应的is_autonomous_session为t,parent_sessionid不为0。当pg_hba.conf文件配置的认证方法为md5,但服务端用户密码采用SCRAM加密时,服务端会自动采用SCRAM认证。

2024-12-15 11:29:26 1008

原创 数据库微观案例第49期

MySQL兼容性下,使用虚拟行号,类似Oracle的rownum,示例如下使用@设置自定义变量,需要先开启enable_set_variable_b_format参数为on。

2024-12-15 11:28:55 922

原创 数据库微观案例第48期

除此之外,不管PG或者openGauss,我们还可以使用dump清单这个高级功能,对-Fc导出的dump文件先使用-l生成清单,编排清单文件后进行恢复,往期的案例也有过介绍。注意:切割sales_maximize时,切割为sales_20240731 和sales_maximize,仍然保留了原来的分区名,并新增一个分区。从上面的表格,可以看出PG 14使用LLVM 16的最低小版本是14.10,而当前使用的小版本是14.9。PG 17对pg_restore工具也增加了filter选项读取文件来进行恢复。

2024-12-15 11:28:24 727

原创 数据库微观案例第47期

目前遇到的问题是最新的v0.17不能编译成功,v0.15版本与PG 16可以编译成功,pgcopydb编译后支持的PG版本为11到16,但操作时源端与目标端的大版本必须一致,而pg_dump/pg_restore没有这个限制,因为向下兼容,相对更灵活些。使用pg_dump进行逻辑导出时,在PG 15之前即便不导出分区表,普通表导出也会受pg_dump查询分区函数的影响,而此时任意某个分区表有DDL操作时都会导致pg_dump被卡。从PG 15开始,这个场景pg_dump可以正常执行完成,不会被卡。

2024-12-15 11:27:51 761

原创 数据库微观案例第46期

由于主库并未提前创建相应的复制槽,但基础备份还是会继续执行拉取数据的流程,数据拉完后再提示slot的错误,为什么不先检测slot,如果不存在就直接报错退出,而需要浪费时间拉完数据再删除呢?个人觉得这是一个可以优化的点,当前的流程是先拉取数据,拉取数据的过程中同时去接收WAL(stream模式),同时使用复制槽来预防备份过程中数据变化太快,可能导致WAL被回收。),能正常显示为中文吗?如果使用自定义的slot,需要我们提前创建,并且还需要注意及时删除,所以缺省的临时复制槽对我们更合适。

2024-12-15 11:27:14 615

原创 数据库微观案例第46期

由于主库并未提前创建相应的复制槽,但基础备份还是会继续执行拉取数据的流程,数据拉完后再提示slot的错误,为什么不先检测slot,如果不存在就直接报错退出,而需要浪费时间拉完数据再删除呢?个人觉得这是一个可以优化的点,当前的流程是先拉取数据,拉取数据的过程中同时去接收WAL(stream模式),同时使用复制槽来预防备份过程中数据变化太快,可能导致WAL被回收。),能正常显示为中文吗?如果使用自定义的slot,需要我们提前创建,并且还需要注意及时删除,所以缺省的临时复制槽对我们更合适。

2024-12-15 11:26:30 953

原创 数据库微观案例第45期

so_reuseport的作用是让pgbouncer启动并监听网络端口时增加Socket选项SO_REUSEPORT ,这个选项允许多个进程在同一个端口上进行监听。文档描述可以手动起多个pgbouncer进程,监听同一端口,但要设置so_reuseport=1且需要设置不同的unix_socket_dir、pidfile和logfile参数。

2024-12-15 11:25:53 1163

原创 数据库微观案例第44期

从12版本开始,浮点数输出显示的精度做了优化,extra_float_digits参数描述也说明了这一点,使用shortest-precise模式。这是9.6版本的行为,而10版本插入的行数虽然是一致,但第二个函数只产生2行数据不会重复,其他数据库行的第二列值为NULL。FROM子句后的函数使用with ordinality后缀修饰时,函数的每行输出将追加一列类型为bigint的自增序号。注意增量追赶主库,需要先停standby节点的服务,才能操作。同时保留postgresql.conf配置文件,不同步。

2024-12-15 11:24:04 564

原创 数据库微观案例第43期

如果活动会话视图监控到commit操作产生等待,优先排查的方向是操作系统层I/O是否存在压力,检查I/O是否使用NAS,TCP网络是否超载,或者共享存储是否有争用,磁盘或者操作系统硬件相关的问题。成本预估:use_remote_estimate、fdw_startup_cost、fdw_tuple_cost、analyze_sampling。commit提交事务是一件很轻量的事儿,它仅需注册clog文件里2个比特位的状态,也无需对数据表进行操作,通常很快。3)设置fetch_size。

2024-12-15 11:23:36 496

原创 数据库微观案例第42期

需要将事件触发器以及清理函数与插件删除依赖绑定关系,当删除插件产生sql_drop事件时,清理函数才能正常工作。建表后插入测试数据,a表插入1000条,b表插入500万条,只包含aid的500个id。上面两种方式将执行时间下降到18s左右,德哥还有大招:稀疏列变态优化,详情见文章。分区表主键字段如果不是分区键,那创建主键约束时会包含tableoid列。3.alter database…1.默认情况下gs_guc工具可以修改实例级的参数,并立即生效。改写前执行时间30s,改写后34ms,大约1000倍提升。

2024-12-15 11:22:19 594

原创 数据库微观案例第41期

本期分享几个NULL相关的案例,包括:NULL与操作符、NULL与索引、NULL与UNIQUE字段、NULL与外键引用、NULL与默认值。

2024-12-15 11:21:38 407

原创 数据库微观案例第41期

本期分享几个NULL相关的案例,包括:NULL与操作符、NULL与索引、NULL与UNIQUE字段、NULL与外键引用、NULL与默认值。

2024-12-15 11:21:03 259

原创 数据库微观案例第40期

除此之外,不管PG或者openGauss,我们还可以使用dump清单这个高级功能,对-Fc导出的dump文件先使用-l生成清单,编排清单文件后进行恢复,往期的案例也有过介绍。注意:切割sales_maximize时,切割为sales_20240731 和sales_maximize,仍然保留了原来的分区名,并新增一个分区。从上面的表格,可以看出PG 14使用LLVM 16的最低小版本是14.10,而当前使用的小版本是14.9。PG 17对pg_restore工具也增加了filter选项读取文件来进行恢复。

2024-12-15 11:19:20 1000

原创 快速掌握PostgreSQL版本新特性:勘误

今年一月发布新书后,陆续收到读者朋友们的一些问题反馈,我们在三月份根据读者朋友们的反馈做了第1次修订,最近正要进行第2次修订,现正式发布完整的勘误表,各位朋友们如果还有新的问题请随时反馈给我。

2024-09-11 10:41:16 521

原创 PostgreSQL 17增量备份

PostgreSQL 17使用pg_basebackup工具支持全备和增备

2024-09-11 10:38:22 1130

原创 飘香新特性到来:PostgreSQL 17 Beta3 发布

解读Beta3相比Beta2的更新变化

2024-08-09 08:37:05 839 1

原创 PG版本新特性,我是如何追的。

分享个人是如何学习,追各个版本的新特性。

2024-05-30 07:58:12 757

原创 PostgreSQL智慧碎片|微观案例 |宏观收获

精选10个小案例:分区键妙用表达式、默认权限的小误解、普通用户禁用触发器失败、数据库管道操作安全问题、多种方式灵活设置search_pathchar、字段使用bpchar转型走索引

2024-05-30 07:56:48 819

原创 逻辑复制7大工艺:历经8载的淬炼

逻辑复制的7大工艺:流式传输大事务及并行应用、二进制传输、数据过滤、解码内存、避免事务回环、standby解码

2024-05-05 09:47:08 776

原创 PostgreSQL知识分享-第39期

通过LSN获取WAL段文件名为什么失灵、设置GUC参数可直接更新pg_settings吗、MySQL存过一次返回多个结果集,如何迁移?

2024-05-05 09:43:11 981

原创 PostgreSQL知识分享-第38期

摘要:char类型如何走索引、PL过程执行DDL报错问题、openGauss物化视图名称发生变化

2024-05-05 09:41:02 979

原创 Halo数据库单机版快速部署

一款基于PG 14.11的国产商业数据库:Halo数据库

2024-04-19 08:01:08 812 1

原创 PostgreSQL知识分享-第37期

本期分享如下:浮点数精度问题、分区键巧用表达式、PostGIS依赖的组件版本、pg_profile部署

2024-04-16 09:52:24 513

原创 PostgreSQL知识分享-第36期

ACL默认显示问题、关于发布的两个小知识、Drop Table后空间未释放、DBeaver阻止并行、映射bit类型

2024-04-16 09:50:58 904

原创 几个提高性能的小特性

LOCALE 与 "operator class"Trigger 与 Transition TableCase 与 Filter

2024-04-08 09:06:27 181

原创 Unnest函数的几个小特性

使用support属性准确预估行将字符串转化为表基于ordinality属性生成行号巧用variadic可变参数

2024-04-08 09:06:12 1295

原创 PostgreSQL自定义快捷命令

PSQL自定义快捷命令

2024-04-08 09:05:55 998

原创 两个与性能相关的压缩参数

与性能相关的压缩参数:default_toast_compression和wal_compression

2024-04-07 08:13:40 765

原创 报表统计之groupBy扩展用法

group by分组统计扩展用法

2024-04-07 08:13:30 753

原创 PostgreSQL “in place“ tablespaces

表空间测试参数:allow_in_place_tablespaces

2024-04-07 08:13:17 286

原创 PostgreSQL安全修葺

对PostgreSQL安全特性重新翻修,加强警戒。

2024-04-07 08:13:07 2409

原创 新书发售:快速掌握PostgreSQL版本新特性

PostgreSQL 10-16 版本新特性及实践案例

2024-04-07 08:12:56 1150

原创 psql元命令之简单爱

快速编辑SQL并执行、 定制客户端提示符、使用边框美化查询结果、独立存储每个DB的历史SQL、高效搭配tmux分屏工具

2024-04-07 08:12:45 988

原创 PGer应知十技

1.准确理解tuple(元组)的概念2.初始化时打开checksums3.跨库访问需重新连接4.xlog不能删除5.按需设置日志项并合理输出6.truncate操作应按DML进行配置7.使用tmux工具高效搭配psql8.autovacuum调优9.定期维护索引10.善用PG关键字

2024-04-07 08:12:18 1058

原创 PostgreSQL 16将迎来完备的权限管理

普通用户的日常管理、成员角色权限以及初始用户权限优化提升。

2024-04-07 08:11:52 856

转载 请不要固步自封,升级到 PostgreSQL 16 的 7 大理由!

升级时考虑的7大理由:1. 生命周期 2.安全性 3. 并行能力 4.易于管理和配置 5. 详细的I/O诊断信息,方便DBA甩锅 6. 逻辑复制不受主备切换影响,可安心的发布订阅数据表 7. SQL:2023新标准,PostgreSQL比商业数据库支持更全面

2024-04-07 08:11:33 2118

区块链blockchain概念

区块链技术是金融科技(Fintech)领域的一项重要技术创新。 作为去中心化记账(Decentralized Ledger Technology,DLT)平台的核心技术,区块链被认为在金融、征信、物联网、经济贸易结算、资产管理等众多领域都拥有广泛的应用前景。 区块链技术自身尚处于快速发展的初级阶段,现有区块链系统在设计和实现中利用了分布式系统、密码学、博弈论、网络协议等诸多学科的知识,为学习原理和实践应用都带来了不小的挑战。

2017-09-08

com.borland.jbcl.layout.jar

com.borland.jbcl.layout.jar

2013-09-22

Java加密与解密的艺术

Java加密与解密的艺术 java开发人员必须看的书籍之一

2012-04-03

jbpm-jpd 工作流设计器插件

工作流设计器xml 插件 link方式集成到eclipse里

2011-11-23

SQL语句经典教程

SQL语句经典教程 非常经典 值得学习 值得珍藏

2011-09-07

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除