지원 버전 :현재(17) /16 / 15 / 14 / 13
개발 버전 :18 / Devel
지원되지 않는 버전 :12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0 / 8.4 / 8.3

배트맨 토토

배트맨 토토 - a의 OID 및 파일 노드를 해결합니다.배트맨 토토데이터 디렉토리

시놉시스

배트맨 토토[옵션...]

설명

배트맨 토토관리자가 배트맨 토토에서 사용하는 파일 구조를 검사하는 데 도움이되는 유틸리티 프로그램입니다. 이를 사용하려면에 설명 된 데이터베이스 파일 구조에 익숙해야합니다.PostgreSQL : 문서 : 17 : 65 장 와이즈 토토 물리적 스토리지.

Note

이름배트맨 토토는 역사적이며 실제로 오해의 소지가 있습니다. 대부분 사용하기 때문에 실제로 테이블의 filenode 번호 (데이터베이스 디렉토리에 표시되는 파일 이름)와 관련이 있습니다. 테이블 OID와 테이블 filenodes의 차이점을 이해하십시오!

배트맨 토토대상 데이터베이스에 연결하고 OID, Filenode 및/또는 테이블 이름 정보를 추출합니다. 데이터베이스 OID 또는 테이블 스페이스 OID를 표시 할 수도 있습니다.

옵션

배트맨 토토다음 명령 줄 인수를 수락합니다 :

-ffilenode
-filenode =filenode

filenode가있는 테이블에 대한 정보 표시filenode.

-i
-인덱스

목록에 인덱스 및 시퀀스 포함.

-oOID
--Oid =OID

OID가있는 테이블에 대한 정보 표시OID.

-Q
-Quiet

헤더 생략 (스크립팅에 유용).

-s
-TableSpaces

테이블 스페이스 Oids 표시.

-s
--시스템-오브젝트

시스템 개체 포함 (Information_Schema, PG_TOASTandPG_CATALOG스키마).

-tTableName_pattern
---table =TableName_pattern

테이블에 대한 정보 표시TableName_pattern.

-v
-버전

인쇄배트맨 토토버전 및 종료.

-x
-extended

표시된 각 객체에 대한 자세한 내용 : 테이블 스페이스 이름, 스키마 이름 및 OID.

-?
-help

도움말 표시배트맨 토토명령 줄 인수 및 종료

배트맨 토토연결 매개 변수에 대한 다음 명령 줄 인수를 수락합니다.

-d데이터베이스
-dbname =데이터베이스

연결할 데이터베이스.

-hhost
-host =host

데이터베이스 서버 호스트.

-h호스트

Database Server의 호스트. 이 매개 변수의 사용은입니다.감가 상각배트맨 토토 12.

-p포트
-포트 =포트

데이터베이스 서버 포트.

-u사용자 이름
--username =사용자 이름

사용자 이름으로 연결합니다.

특정 테이블을 표시하려면 사용하여 표시 할 테이블을 선택하십시오-o, -f및/또는-t. -oOID를 가져와-ffilenode를 가져 가서-t테이블 이름을 가져옵니다 (실제로는좋아요패턴이므로와 같은 것을 사용할 수 있습니다.foo%). 원하는만큼 이러한 옵션을 사용할 수 있으며 리스팅에는 옵션과 일치하는 모든 객체가 포함됩니다. 그러나 이러한 옵션은에 제공된 데이터베이스에 객체 만 표시 할 수 있습니다.-d.

당신이 아무것도주지 않는다면-o, -f또는-t,하지만-d, 이름이 지정된 데이터베이스에 모든 테이블을 나열합니다.-d. 이 모드에서-sand-i옵션 제어 내용을 제어합니다.

당신이주지 않으면-d또한 데이터베이스 OID 목록이 표시됩니다. 또는 당신은 줄 수 있습니다-s테이블 스페이스 목록을 얻으려면

환경

pghost
pgport
PGUSER

기본 연결 매개 변수.

이 유틸리티, 대부분의 다른 유틸리티배트맨 토토유틸리티는 또한 지원하는 환경 변수를 사용합니다libpq(참조PostgreSQL : 문서 : 17 : 32.15. 환경 배트맨 토토).

환경 변수PG_COLOR진단 메시지에서 색상을 사용할지 여부를 지정합니다. 가능한 값은항상, autoand절대.

노트

배트맨 토토비유 시스템 카탈로그가있는 실행중인 데이터베이스 서버가 필요합니다. 그러므로 치명적인 데이터베이스 부패 상황에서 복구하는 데 제한된 사용이 제한적입니다.

$ # 어쨌든이 데이터베이스 서버는 무엇입니까?
$ 배트맨 토토
모든 데이터베이스 :
    OID 데이터베이스 이름 테이블 스페이스
------------------------------------
  17228 ALVHERRE PG_DEFAULT
  17255 회귀 pg_default
  17227 Template0 PG_DEFAULT
      1 Template1 PG_DEFAULT

$ 배트맨 토토 -s
모든 테이블 스페이스 :
     OID 테이블 스페이스 이름
-----------------------------
    1663 PG_DEFAULT
    1664 PG_GLOBAL
  155151 FastDisk
  155152 BIGDISK

$ # 좋아, 데이터베이스 ALVHERRE를 살펴 보자
$ cd $ pgdata/base/17228

$ # 기본 테이블 스페이스에서 상위 10 개의 DB 객체를 크기별로 주문하십시오.
$ ls -ls * | 머리 -10
-RW ------ 1 ALVHERRE ALVHERRE 136536064 9 월 14 일 09:51 155173
-RW ------ 1 ALVHERRE ALVHERRE 17965056 9 월 14 일 09:51 1155291
-RW ------- 1 ALVHERRE ALVHERRE 1204224 9 월 14 일 09:51 16717
-RW ------- 1 ALVHERRE ALVHERRE 581632 9 월 6 일 17:51 1255
-RW ------- 1 ALVHERRE ALVHERRE 237568 9 월 14 일 09:50 16674
-RW ------- 1 ALVHERRE ALVHERRE 212992 9 월 14 일 09:51 1249
-RW ------- 1 ALVHERRE ALVHERRE 204800 9 월 14 일 09:51 16684
-RW ------- 1 ALVHERRE ALVHERRE 196608 9 월 14 일 09:50 16700
-RW ------- 1 ALVHERRE ALVHERRE 163840 9 월 14 일 09:50 16699
-RW ------- 1 ALVHERRE ALVHERRE 122880 9 월 6 일 17:51 16751

$ # 155173은 어떤 파일입니까?
$ OID2NAME -D ALVHERRE -F 155173
데이터베이스 "Alvherre"에서 :
  Filenode 테이블 이름
------------------------
    155173 계정

$ # 둘 이상의 객체를 요청할 수 있습니다.
$ OID2NAME -D ALVHERRE -F 155173 -F 1155291
데이터베이스 "Alvherre"에서 :
  Filenode 테이블 이름
-----------------------------
    155173 계정
   1155291 Accounts_pkey

$ # 옵션을 혼합하고 -X로 자세한 내용을 얻을 수 있습니다.
$ 배트맨 토토 -d alvherre -t 계정 -f 1155291 -x
데이터베이스 "Alvherre"에서 :
  Filenode 테이블 이름 OID 스키마 테이블 스페이스
--------------------------------------------------------------
    155173 계정 155173 Public Pg_default
   1155291 Accounts_Pkey 1155291 Public PG_DEFAULT

$ # 모든 DB 객체에 대한 디스크 공간 표시
$ du [0-9]* |
 크기 필레 노드를 읽는 동안
하십시오
 echo "$ size`배트맨 토토 -q -d alvherre -i -f $ filenode`"
 완료
16 1155287 Branches_pkey
16 1155289 Tellers_pkey
17561 1155291 Accounts_pkey
...

$ # 동일하지만 크기별로 정렬하십시오
$ du [0-9]* | 정렬 -rn | 읽기 크기 fn
하십시오
 echo "$ size`배트맨 토토 -q -d alvherre -f $ fn`"
 완료
133466 155173 계정
17561 1155291 Accounts_pkey
1177 16717 PG_PROC_PRONAME_ARGS_NSP_INDEX
...

$ # 테이블 스페이스에있는 내용을 보려면 PG_TBLSPC 디렉토리를 사용하십시오.
$ cd $ pgdata/pg_tblspc
$ 배트맨 토토 -s
모든 테이블 스페이스 :
     OID 테이블 스페이스 이름
-----------------------------
    1663 PG_DEFAULT
    1664 PG_GLOBAL
  155151 FastDisk
  155152 BIGDISK

$ # 테이블 스페이스 "FastDisk"에 객체가있는 데이터베이스는 무엇입니까?
$ ls -d 155151/*
155151/17228/155151/pg_version

$ # 오, 데이터베이스 17228은 무엇입니까?
$ 배트맨 토토
모든 데이터베이스 :
    OID 데이터베이스 이름 테이블 스페이스
------------------------------------
  17228 ALVHERRE PG_DEFAULT
  17255 회귀 pg_default
  17227 Template0 PG_DEFAULT
      1 Template1 PG_DEFAULT

$ #이 데이터베이스가 테이블 스페이스에 어떤 객체를 가지고 있는지 보자.
$ CD 155151/17228
$ ls -l
총 0
-RW ------- 1 Postgres Postgres 0 9 월 13:20 155156

$ # 좋아, 이것은 꽤 작은 테이블이지만 ... 어느 쪽입니까?
$ OID2NAME -D ALVHERRE -F 155156
데이터베이스 "Alvherre"에서 :
  Filenode 테이블 이름
------------------------
    155156 foo

저자

b. 성지 순례자

정정 제출

올바른 문서에 아무것도 표시되면 일치하지 않습니다. 특정 기능에 대한 귀하의 경험 또는 추가 설명이 필요합니다. 사용이 양식문서 문제를보고하려면