postgresql 데이터베이스 가져오기 및 내보내기, 백업/복구
2652 단어 python
su postgres
psql 실행
데이터베이스 만들기
CREATE USER 사용자 이름 WITH PASSWORD'****';create 데이터베이스 [데이터베이스 이름];또는create 데이터베이스 [데이터베이스 이름] owner[사용자 이름];
전체 데이터베이스 가져오기 - W 비밀번호 입력 - p 포트 번호 지정
psql - U postgres(사용자 이름) 데이터베이스 이름(기본적으로 같은 사용자 이름) psql 데이터베이스 이름 가져오기 오류 psql: FATAL: Peer authentication failed for user "postgres"수정vim/var/lib/pgsql/9.6/data/pghba.conf 파일
# TYPE DATABASE USER ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all peer
-----------------------------------------------------------------------------------------------
:
# TYPE DATABASE USER ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all trust
데이터베이스 서비스 다시 시작하기;만약 사용하지 않으면 리부트를 다시 시작합니다
전체 데이터베이스 내보내기 - O 소속 사용자 무시 - p 지정 포트 번호 pgdump -h localhost-U postgres(사용자 이름) 데이터베이스 이름(기본적으로 같은 사용자 이름)>/data/dum.sql pg_dump 데이터베이스 이름>/data/dum.sql
테이블 내보내기
pg_dump -h localhost-U postgres(사용자 이름)-t table(테이블 이름) 데이터베이스 이름(생략시 같은 사용자 이름)>/data/dum.sql
압축 방법
일반적으로dump로 데이터를 내보내는 것이 비교적 크므로 xz압축을 사용하는 것을 추천합니다
압축 방법sql에서dum을 생성합니다.sql.xz 파일
xz 압축 데이터 역수 데이터베이스 방법
xzcat/data/dum.sql.xz | psql - h localhost - U postgres(사용자 이름) 데이터베이스 이름(기본적으로 같은 사용자 이름)
pg 사용dumpall pg_dump는 데이터베이스 집단의 어떤 데이터베이스 데이터만 백업하고 역할과 테이블 공간에 대한 정보를 내보내지 않습니다.pg_dumpall은 전체 데이터베이스 집단의 모든 데이터베이스에 있는 데이터를 내보낼 수 있으며 역할, 사용자와 테이블 공간의 정의 정보도 내보낼 수 있다.pg 사용dumpall의 일반 명령 형식은 다음과 같습니다.
pg_dumpall > backup_file
pg_dumpall도 지원 및 pgdump와 같은 명령행 옵션입니다. 예를 들어 -h와 -p 등입니다.pg 에서dumpall에서 만든 백업 파일에서 데이터베이스를 복구합니다.데이터베이스 슈퍼 사용자를 사용하여 데이터베이스를 복구하는 작업을 해야 한다.명령 형식은 다음과 같습니다.
psql -f backup_file postgres
pg_dumpall을 실행하는 과정에서postgres를 사용자 이름으로 데이터베이스에 연결합니다.시스템이 자동으로 만든 데이터베이스postgres의 내용도 도출되고 데이터베이스template0과template1의 내용도 도출되지 않습니다.
데이터베이스 DROP DATABASE testdb를 삭제합니다.이 가능하다, ~할 수 있다,...
ERROR: database "testdb" is being accessed by other users
DETAIL: There are 3 other sessions using the database.
이 데이터베이스에 연결된 모든 연결을 끊고 데이터베이스를 삭제합니다
SELECT pg_terminate_backend(pg_stat_activity.pid)
FROM pg_stat_activity
WHERE datname='testdb' AND pid<>pg_backend_pid();
pg_terminate_backend: 데이터베이스와의 연결을 중지하는 프로세스 id의 함수입니다.pg_stat_activity: 서비스 프로세스의 속성과 상태를 저장하는 시스템 테이블입니다.pg_backend_pid(): 현재 세션에 첨부된 서버 프로세스의 ID를 가져오는 시스템 함수입니다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
로마 숫자를 정수로 또는 그 반대로 변환그 중 하나는 로마 숫자를 정수로 변환하는 함수를 만드는 것이었고 두 번째는 그 반대를 수행하는 함수를 만드는 것이었습니다. 문자만 포함합니다'I', 'V', 'X', 'L', 'C', 'D', 'M' ; 문자열이 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.