>  기사  >  데이터 베이스  >  PostgreSQL 버전 식별에 대한 자세한 설명

PostgreSQL 버전 식별에 대한 자세한 설명

jacklove
jacklove원래의
2018-06-11 17:22:422325검색

Insertdeleteupdate ctid로 찾아 xminxmax 기록의 변경 사항을 확인하세요.

Xid: 데이터베이스 트랜잭션 ID;

ID : 삭제 또는 lock기록된 트랜잭션을 나타냅니다. ID

xid_snapshot: 다음 날짜에 종료된 거래 현재 클러스터 Clog: 트랜잭션 제출 상태 로그 레코드 형식 정의: htup_ 세부 정보. h

:

POSTGRES 힙 튜플 헤더 정의.

1) 모든

xid

관련 기능을 확인하세요. 여기에 필요한 것은 txid_current

기능입니다

2)

현재 거래를 볼 수 있습니다ID

postgres=# select * from txid_current();
 txid_current
--------------
         1676
(1 row)
 
3)进行一次insert后,看事务ID已经+1
postgres=# insert into tt values(1);
INSERT 0 1
postgres=# select ctid,xmin,xmax,cmin,cmax,id from tt;
 ctid  | xmin | xmax | cmin | cmax | id
-------+------+------+------+------+----
 (0,1) | 1677 |    0 |    0 |    0 |  1
(1 row)

4)이후 거래 개시, 수행 update

postgres=# begin;
BEGIN
 
postgres=# update tt set id=3;
UPDATE 1
postgres=# select ctid,xmin,xmax,cmin,cmax,id from tt;
 ctid  | xmin | xmax | cmin | cmax | id
-------+------+------+------+------+----
 (0,2) | 1678 |    0 |    0 |    0 |  3
(1 row)

5) 다른 세션에서 보기

postgres=#  select ctid,xmin,xmax,cmin,cmax,id from tt;
 ctid  | xmin | xmax | cmin | cmax | id
-------+------+------+------+------+----
 (0,1) | 1677 | 1678 |    0 |    0 |  1
(1 row)

현재 완료되지 않은 거래 또는 미개봉 거래를 확인하세요


postgres=# select *from txid_current_snapshot();
 txid_current_snapshot
-----------------------
 1684:1684:
(1 row)
 
postgres=# select * from txid_current();
 txid_current
--------------
         1684
(1 row)

기록 거래가 제출되었는지 여부는 이 파일에서 bit

:

-rw-------. 1 pg pg 8192 Jun 10 04:19 0000
[pg@localhost pg_clog]$ pwd
/home/pg/data/pg_clog
이 기사 소개 PostgreSQL 버전 식별에 대한 소개입니다. 더 많은 관련 내용을 보려면 PHP 중국어 웹사이트를 참조하세요.

관련 추천:

B/S와 C/S가 무엇인지 설명

css3+html5를 통해 세로 메뉴 구현 방법

HTML5 로컬 저장소 관련 설명

위 내용은 PostgreSQL 버전 식별에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.