본문 바로가기

DBMS

[PostgreSQL] 재시작없이 설정불러오기 (reload configuration without restart) PostgreSQL은 다양한 설정을 파일로 다루고 있습니다. 그중 pg_hba.conf 파일로 접근제어를 하게 되는데 운영중 수정이 필요한 상황이 발생했을 때 재시작 없이 적용하는 방법을 가이드 합니다. pg_ctl 이용 pg_ctl에서는 다음방법으로 설정로딩을 지원합니다. $ pg_ctl reload [-s] [-D datadir] 옵션은 -s : 오류 관련 메시지만 출력합니다. -D datadir : PostgreSQL이 사용하는 데이터 경로를 지정합니다. Query 이용 SQL 내에서도 설정로딩을 할 수 있습니다. SELECT PG_RELOAD_CONF(); 제약사항 일반적인 설정은 재적용이 가능하나, 일부 재시작이 필요한 설정은 적용되지 않습니다. 더보기
[MariaDB] 문자열을 날짜로 STR_TO_DATE MariaDB에서 문자열을 날짜형으로 변경하는 방법입니다. 문법 STR_TO_DATE(str, format) str은 날짜로 전환할 문자열이며, format은 문자열의 형식입니다. Format 주요 형식은 다음과 같습니다. 옵션 설명 %Y 4자리 년도 (예: 2021) %y 2자리 년도 (예: 21) %m 2자리 월 (예: 01) %d 2자리 일 (예: 01) %H 2자리 시간 (00 ~ 23) %h 2자리 시간 (01 ~ 12) %i 2자리 분 %S 2자리 초 예시 SELECT STR_TO_DATE('20200101 23:59:59', '%Y%m%d %H:%i%S') 2020-01-01 23:59:59 더보기
[MariaDB] UTF8 사용시 대소문자 구분을 위한 COLLATE 설정 현재 MariaDB를 사용하고 있는데, UTF8 인코딩으로 진행중 다음의 문제점을 발견했다. SELECT * FROM TB_TEST WHERE TB_NAME = 'aaa'; 라고 질의를 던지면 결과가… aaa, AAA, AaA 등 내용에 대한 대소문자를 구분하지 않는다. 원인을 파악해보니, CHARACTER SET은 utf8 이지만 COLLATE에서 utf8_general_ci로 설정이 되어있어서 대소문자 구분이 안되는 것 이었다. 해결방법은 COLLATE를 utf8_bin 으로 변경을 하면 대소문자 구분이 가능해진다. 참고사항으로 MariaDB 10.0.11 기준인데, 일부 검색을 해보면 과거 버전(MySQL)의 경우에는 utf8_general_cs 로 변경하라고 나오기도 한다. 기존에 생성된 데이터베.. 더보기
[Oracle]Archive Log 삭제 방법 Oracle DBMS를 Archive 모드로 수행할 경우 지정한 폴더에 주기적으로 Archive log 파일을 누적합니다.만약 해당 위치의 용량이 가득 찰 경우 DB에 대한 Insert가 수행되지 않을 수 있으므로 주기적으로 관리를 해야됩니다.이때 삭제하는 방법은 강제적으로 삭제해도 무방하나, DB 백업에 사용되는 RMAN에서 오류를 발생시킬 수 있습니다. 그러므로, RMAN에 접속하여 다음 명령어로 삭제를 진행합니다. DELETE ARCHIVELOG UNTIL TIME "SYSDATE-"; 위 경우는 오늘로부터 2일전 Archive Log 파일을 삭제하는 명령입니다.중간에 정말로 삭제할 것 인지 확인하는 메시지가 표시되면 “YES”를 입력하면 됩니다. 더보기
[Oracle]Oracle 기동/종료 절차 오라클 기동sqlplus /nolog 를 통하여 SQLplus 접속하기conn system /as sysdba 를 통하여 DBA 계정으로 접근하기startup 명령으로 DB 기동하기lsnrctl start [LISTENER명] 명령으로 LISTENER 기동하기 오라클 종료select * from v$session 쿼리를 통하여 현재 접속 사용자 점검하기lsnrctl stop [LISTENER명] 명령으로 LISTENER 종료하기sqlplus /nolog 를 통하여 SQLplus 접속하기conn system /as sysdba 를 통하여 DBA 계정으로 접근하기shutdown [normal|immediate|abort] 를 통하여 DB 종료하기 (보통은 immediate) 더보기