上一页 1 2 3 4 5 6 ··· 21 下一页
摘要: 1、背景 在PG中,我们经常因为执行不知道多久结束而苦恼,主要集中在: 1)vacuum、vacuum full(阻塞读写)、analyze 2)pg_dump、pg_restore,缺少进度条,尤其对于大表的导出,只能通过数据量大致估算,但数据在DB中和磁盘上的量是有偏差的。 3)create i 阅读全文
posted @ 2021-04-26 14:57 狂神314 阅读(1920) 评论(2) 推荐(0) 编辑
摘要: explain update test t set crt_time = now() where exists(select 1 from test1 t1 where t1.id = t.id); -> Update on test t (cost=396607.58..1934979.49 ro 阅读全文
posted @ 2021-03-25 16:20 狂神314 阅读(731) 评论(0) 推荐(0) 编辑
摘要: 事务隔离级别实验--SQL在等待锁结束之后,是否会再次获取快照 跟同事讨论一个删除的诡异操作,在Oracle中一个事务中删除再插入,另外一个事务也进行删除,被夯住,当阻塞结束之后,Oracle会将新插入的这条删除,而PG不会,于是进行一下深挖: 测试表结构及数据: drop table employ 阅读全文
posted @ 2021-03-12 15:41 狂神314 阅读(142) 评论(0) 推荐(0) 编辑
摘要: 最近一个同事说可以对PG的表做增量备份,备份针对表的增量SQL,从wal中解析。 着实好奇,搜了一下,应该还没实现,这篇文章很有意思,先转载过来,后续慢慢研究: 转自:http://blog.chinaunix.net/uid-20726500-id-5830666.html 1. 背景 最近在wa 阅读全文
posted @ 2021-02-05 14:58 狂神314 阅读(949) 评论(0) 推荐(0) 编辑
摘要: PostgreSQL Event trigger 使用记录:阻断危险SQL、记录DDL操作 CREATE EVENT TRIGGER — define a new event trigger 语法 CREATE EVENT TRIGGER name ON event [ WHEN filter_va 阅读全文
posted @ 2021-02-03 12:01 狂神314 阅读(699) 评论(0) 推荐(0) 编辑
摘要: 写的特别好,基本上把我想写都写了,就转载吧。 WAL机制简介 WAL即 Write-Ahead Logging,是一种实现事务日志的标准方法。WAL 的中心思想是先写日志,再写数据,数据文件的修改必须发生在这些修改已经记录在日志文件中之后。采用WAL日志的数据库系统在事务提交时,WAL机制可以从两个 阅读全文
posted @ 2021-01-31 11:35 狂神314 阅读(301) 评论(0) 推荐(0) 编辑
摘要: --1.创建模拟数据 DROP TABLE test; CREATE TABLE test(id int, info text); INSERT INTO test SELECT generate_series(1, 10), 'test'; --2.创建存储过程 CREATE OR REPLACE 阅读全文
posted @ 2020-11-19 15:26 狂神314 阅读(619) 评论(0) 推荐(0) 编辑
摘要: prepare的使用: 众所周知,在执行一个SQL时,首先生成执行计划(进行语义分析、词法解析、逻辑优化、物理优化)、执行、结果传输等操作。如果一个SQL在应用中反复使用,我们可以将此SQL参数化,只做一次prepare,后面执行时就不需要进行前面执行计划的生成操作,直接使用prepare好的执行计 阅读全文
posted @ 2020-11-19 14:23 狂神314 阅读(2514) 评论(0) 推荐(0) 编辑
摘要: 传参类型说明: in: 是参数的默认模式,这种模式就是在程序运行的时候已经具有值,在程序体中值不会改变。 out: 模式定义的参数只能在过程体内部赋值,表示该参数可以将某个值传递回调用他的过程。简单说:out参数在调用的时候,不需要传入参数(尝试传入会报错),不需要rutrun该参数,functio 阅读全文
posted @ 2020-11-16 12:57 狂神314 阅读(5704) 评论(0) 推荐(0) 编辑
摘要: Windows上很少安装数据库,这次遇到一个小问题:数据库启动之后提示: 警告: 无法为 "*" 创建监听套接字 致命错误: 无法创建TCP/IP套接字 日志: 数据库系统已关闭 1.首先,打开服务器的netstat功能(位于控制面板->程序->打开windows功能里面),执行命令查看端口占用情况 阅读全文
posted @ 2020-11-03 15:27 狂神314 阅读(4936) 评论(0) 推荐(1) 编辑
上一页 1 2 3 4 5 6 ··· 21 下一页