본문 바로가기

다른 DBMS/PostgresDB11

[DDL] Alter 명령어가 끝나지 않고 계속 수행중일때 테이블 재생성을 위해 alter table DROP PK 명령어를 수행하였는데 끝나지 않고 계속 수행중이었습니다.이것을 해결한 방법을 정리하였습니다. 원인 : 세션 중 테이블에 accesssharelock을 잡은 세션이 있었음.해결 : 해당 세션 kill lock 확인 쿼리select c.relname, l.*, psa.*from pg_locks linner join pg_stat_activity psa on (psa.pid=l.pid)left outer join pg_class c on (l.relation = c.oid)where l.relation = '테이블명'::regclass; 결과로 내가 수행중인 세션 외에 accesssharelock을 잡고있는 세션을 발견하였습니다. 해당 세션의.. 2024. 11. 29.
형 변환과 CREATE CAST postgresql은 형변환을 직접 추가하고 제거하고 할 수 있네요. 형변환도 3가지가 있습니다.explicit,assignment,implicit가 있습니다.explicit는 명시적, assignment는 문맥상 대입 연산이 일어나는 경우에 묵시적으로 호출되는 형 변환자를 만듬. implicit는 무조건 묵시적입니다. 해당 DB가 가지고 있는 implicit cast의 목록을 확인하고 싶으면 아래의 쿼리를 활용합니다. selectcastsource::regtype as source_type,casttarget::regtype as target_type,castcontextfrom pg_castwhere castcontext = 'i'order by 1  cast를 생성하고 싶다면 create cast로.. 2024. 10. 25.
[pg16] 백업 쉘 만들어서 자동 백업되게 설정하기 pg_dump를 사용하여 postgres 유저에서 자동으로 백업이 수행되게 설정하는 방법입니다.백업은 5일만 보관하며 5일이 지난 백업은 삭제하는 로직이 추가되어 있습니다. 1) 백업용 디렉토리 만들기실제 백업파일이 저장되는 backupfile, 로그가 저장되는 log , 쉘이 저장되는 shell을 생성합니다mkdir -p /pgdata/backup/backup/backupfilemkdir -p /pgdata/backup/backup/logmkdir -p /pgdata/backup/backup/shelldrwxr-xr-x. 2 postgres postgres 94 Jul 31 10:04 backupfiledrwxr-xr-x. 2 postgres postgres 67 Jul 31 10:03 logdrwxr.. 2024. 7. 31.
.pgpass 활용하여 password 입력 없이 접속하기 postgresql에 자동 백업 쉘을 작성하다보니 접속시에 password를 매번 물어보더라구요. pgpass를 활용해서 묻지않고 접속하는 방법을 정리해보았습니다. ##설정전$ psql -U postgres -h 127.0.0.1 -p 15432 -d postgresPassword for user postgres:  ##.pgpass 설정 server:port:database:username:password 이 형식으로 내용을 작성하면 되고 password 제외하고 *(와일드카드)로 대체하여 모든 값들을 설정할 수 있습니다.postgres OS유저의 home에 생성하고 파일내용을 채워넣었습니다.$ touch ~/.pgpass$ chmod 0600 ~/.pgpass$ vi .pgpass###pgpass u.. 2024. 7. 30.