Postgre는 어디에 있습니까?SQL에서 데이터베이스를 저장하시겠습니까?
Postgre 파일은 어디에 있습니까?SQL 데이터베이스를 저장하시겠습니까?
데이터 디렉토리의 위치를 확인하려면 이 쿼리를 사용합니다.
show data_directory;
모든 런타임 매개변수를 보려면 다음을 사용합니다.
show all;
테이블스페이스를 만들어 파일 시스템의 다른 부분에 데이터베이스 개체를 저장할 수 있습니다.해당 데이터 디렉토리에 없을 수 있는 테이블스페이스를 보려면 이 쿼리를 사용합니다.
SELECT *, pg_tablespace_location(oid) FROM pg_tablespace;
7 7)에서는 모든 7(윈도우 7) 됩니다.pg_database
C:\Program Files (x86)\PostgreSQL\8.2\data\global
그런 다음 아래의 해당 번호로 폴더 이름을 검색해야 합니다.C:\Program Files (x86)\PostgreSQL\8.2\data\base
이것이 데이터베이스의 내용입니다.
"Postgre"에서 제안한 바와 같이리눅스의 SQL 데이터베이스 기본 위치"에서 다음 명령을 사용하여 확인할 수 있습니다.
ps aux | grep postgres | grep -- -D
pgAdmin을 열고 특정 데이터베이스의 속성으로 이동합니다.OID를 찾은 다음 디렉토리 열기
<POSTGRESQL_DIRECTORY>/data/base/<OID>
DB 파일이 있어야 합니다.
Linux를 설치하면 다음과 같습니다./var/lib/postgresql/8.x/
있다니습으로 변경할 수 .initdb -D "c:/mydb/"
모두가 이미 응답했지만 최신 업데이트에 대해서만 응답했습니다.모든 구성 파일이 어디에 있는지 알고 싶다면 셸에서 이 명령을 실행합니다.
SELECT name, setting FROM pg_settings WHERE category = 'File Locations';
당신이 이 질문을 하는 것은 당신이 노력했기 때문일 것입니다.pg_ctl start
다음 오류를 수신했습니다.
pg_ctl: 데이터베이스 디렉토리가 지정되지 않았으며 환경 변수 PGDATA가 설정되지 않았습니다.
즉, 다음에 추가할 디렉터리를 찾고 있습니다.-D
의 신의에pg_ctl start
지휘권
이 경우 찾으려는 디렉터리에 이러한 파일이 들어 있습니다.
PG_VERSION pg_dynshmem pg_multixact
pg_snapshots pg_tblspc postgresql.conf
base pg_hba.conf pg_notify
pg_stat pg_twophase postmaster.opts
global pg_ident.conf pg_replslot
pg_stat_tmp pg_xlog postmaster.pid
pg_clog pg_logical pg_serial
pg_subtrans postgresql.auto.conf server.log
OS와 함께 제공된 검색을 사용하여 위의 파일 및 디렉터리를 찾아 찾을 수 있습니다.
예를 들어, 제 경우(Mac OS X에 HomeBrew 설치), 이러한 파일은/usr/local/var/postgres
서버를 시작하려면 다음을 입력합니다.
pg_ctl -D /usr/local/var/postgres -w start
...그리고 그것은 동작한다.
Postgres는 데이터 디렉토리의 파일에 데이터를 저장합니다.다음 단계에 따라 데이터베이스와 해당 파일로 이동합니다.
postgresql 파일입니다.데이터 는 전체데디의위다치실수얻있다니습을행여음하을는리이를 하여 얻을 수 .SHOW data_directory
Mac) UNIX 같 OS(하드웨어: Mac) 서/Library/PostgreSQL/9.4/data
안으로 ./Library/PostgreSQL/9.4/data/base
를 실행하여 데이터베이스 폴더 이름을 찾습니다(정수 지정).데이터베이스 폴더 이름):
SELECT oid from pg_database WHERE datname = <database_name>;
를 실행하여 테이블 파일 이름을 찾습니다(정수 제공).다음은 파일 이름입니다.
SELECT relname, relfilenode FROM pg_class WHERE relname = <table_name>;
이것은 이진 파일입니다.크기 및 작성 날짜 시간과 같은 파일 세부 정보는 정상적으로 얻을 수 있습니다.자세한 내용은 이 SO 스레드를 참조하십시오.
TABLESPACE를 사용하여 특정 테이블/인덱스의 위치를 조정할 수 있습니다.
CREATE TABLESPACE dbspace LOCATION '/data/dbs';
CREATE TABLE something (......) TABLESPACE dbspace;
CREATE TABLE otherthing (......) TABLESPACE dbspace;
Mac의 경우:/Library/PostgreSQL/9.0/data/base
디렉터리를 입력할 수 없지만 다음을 통해 내용을 볼 수 있습니다.sudo du -hc data
픽메이트의 대답은 옳습니다.기본 DB 폴더 위치는 창에서 (적어도 내 설치에서)
C:\PostgreSQL\9.2\data\base\
프로그램 파일에 없습니다.
필요한 디렉터리/파일을 제공합니다.
SELECT oid from pg_database WHERE datname = <database_name>;
SELECT relname, relfilenode FROM pg_class WHERE relname = <table_name>;
제 이름은 datname 16393이고 렐파일코드는 41603입니다.
윈도우즈의 경우 Postgres가 사용하는 PGDATA 디렉터리SQL 문서는 다음과 같은 위치에 설명되어 있습니다.C:\Program Files\PostgreSQL\8.1\data
특정 데이터베이스에 대한 데이터가 아래에 있습니다(예:C:\Program Files\PostgreSQL\8.1\data\base\100929
여기서 100929는 데이터베이스 번호인 것 같습니다.
나는 도커 컨테이너에서 (우연히 CentOS에서) 포스트그스(9.5)를 실행하고 있으며, 스키피플 그랜드 구루가 위의 댓글에서 언급했듯이, 파일은 다음에 있습니다./var/lib/postgresql/data/
.
$ docker exec -it my-postgres-db-container bash
root@c7d61efe2a5d:/# cd /var/lib/postgresql/data/
root@c7d61efe2a5d:/var/lib/postgresql/data# ls -lh
total 56K
drwx------. 7 postgres postgres 71 Apr 5 2018 base
drwx------. 2 postgres postgres 4.0K Nov 2 02:42 global
drwx------. 2 postgres postgres 18 Dec 27 2017 pg_clog
drwx------. 2 postgres postgres 6 Dec 27 2017 pg_commit_ts
drwx------. 2 postgres postgres 6 Dec 27 2017 pg_dynshmem
-rw-------. 1 postgres postgres 4.4K Dec 27 2017 pg_hba.conf
-rw-------. 1 postgres postgres 1.6K Dec 27 2017 pg_ident.conf
drwx------. 4 postgres postgres 39 Dec 27 2017 pg_logical
drwx------. 4 postgres postgres 36 Dec 27 2017 pg_multixact
drwx------. 2 postgres postgres 18 Nov 2 02:42 pg_notify
drwx------. 2 postgres postgres 6 Dec 27 2017 pg_replslot
drwx------. 2 postgres postgres 6 Dec 27 2017 pg_serial
drwx------. 2 postgres postgres 6 Dec 27 2017 pg_snapshots
drwx------. 2 postgres postgres 6 Sep 16 21:15 pg_stat
drwx------. 2 postgres postgres 63 Nov 8 02:41 pg_stat_tmp
drwx------. 2 postgres postgres 18 Oct 24 2018 pg_subtrans
drwx------. 2 postgres postgres 6 Dec 27 2017 pg_tblspc
drwx------. 2 postgres postgres 6 Dec 27 2017 pg_twophase
-rw-------. 1 postgres postgres 4 Dec 27 2017 PG_VERSION
drwx------. 3 postgres postgres 92 Dec 20 2018 pg_xlog
-rw-------. 1 postgres postgres 88 Dec 27 2017 postgresql.auto.conf
-rw-------. 1 postgres postgres 21K Dec 27 2017 postgresql.conf
-rw-------. 1 postgres postgres 37 Nov 2 02:42 postmaster.opts
-rw-------. 1 postgres postgres 85 Nov 2 02:42 postmaster.pid
단일 터미널 명령:pg_lsclusters
(Ubuntu 사용)
필요한 것은 데이터 디렉토리 아래에 있습니다.
Ver Cluster Port Status Owner Data directory Log file
10 main 5432 online postgres /var/lib/postgresql/10/main /var/log/postgresql/postgresql-10-main.log
11 main 5433 online postgres /var/lib/postgresql/11/main /var/log/postgresql/postgresql-11-main.log
언급URL : https://stackoverflow.com/questions/1137060/where-does-postgresql-store-the-database
'programing' 카테고리의 다른 글
jQuery에서 css 속성을 제거하는 방법 (0) | 2023.05.17 |
---|---|
정수.구문 분석 대.신트 (0) | 2023.05.17 |
비동기 대기가 추가 스레드를 생성하지 않는 경우 애플리케이션의 응답성을 어떻게 높입니까? (0) | 2023.05.17 |
Panda 그룹을 사용하여 여러 행의 문자열을 연결합니다. (0) | 2023.05.17 |
PowerShell에서 개체 수를 계산하는 방법은 무엇입니까? (0) | 2023.05.17 |