
postgresql_锁
文章平均质量分 76
rudy_gao
这个作者很懒,什么都没留下…
展开
-
修改表结构DDL语句与锁
--当pg开启一个事务,执行dml操作时,如果另一个事务要修改表结构,其不得不等待--session1 中执行dmlpostgres=# begin;BEGINpostgres=# select pg_backend_pid(); pg_backend_pid ---------------- 4144(1 row)postgres=原创 2015-10-22 11:55:25 · 2779 阅读 · 0 评论 -
postgresql 查看系统中的锁信息与锁资源
--查看当前活动的客户端连接数 SELECT count(*) FROM pg_stat_activity WHERE NOT pid=pg_backend_pid(); --查询客户端连接的情况 SELECT pid,case when waiting='f' then 'already get lock,sql executing' when waiting='t' th原创 2015-10-22 15:18:46 · 8528 阅读 · 0 评论 -
PostgreSQL逻辑备份,锁,长时间导出数据与备份
PostgreSQL逻辑备份, 指通过pg_dump或者直接调用COPY进行的备份方法.一般来说, PostgreSQL 使用pg_dump备份数据库时, 会1. 开启一个repeatable read事务, 2. 然后需要从系统表以及传入的参数, 生成备份集, 3. 备份开始前, 需要一次性把需要备份的所有对象都加上access share lock, 这个锁与D转载 2015-10-27 16:31:11 · 2586 阅读 · 0 评论 -
通过函数定位DML锁等待
--创建函数,注意此函数只能定位由于dml操作所引起的锁等待,对于ddl引起的锁等待,此sql无法完全定位CREATE OR REPLACE FUNCTION report_lock(refcursor, refcursor) RETURNS SETOF refcursor AS$BODY$declarev_activity_count integer;v_cur_relation原创 2016-03-25 15:08:35 · 645 阅读 · 0 评论