반응형

전체 글 58

PostgreSQL DB 성능 개선을 위한 설정 파일 수정

개발 서버에 PostgreSQL DB 설치 후 사용하면서 속도가 느리다는 느낌을 받았습니다. 서버 사양은 낮지 않은데 DB 성능은 좋지 않아 설정의 문제가 있지 않을까 싶어 개선 방법을 찾아보았습니다. PostgreSQL 의 기본 설정은 최고의 성능을 내기 보다는 가능한 다양한 기기에서 잘 동작할 수 있도록 보수적으로 잡혀 있다고 합니다. 설치 후 아무런 설정을 건드리지 않았다면 속도가 느린게 당연한 것이었습니다. PostgreSQL 은 postgresql.conf 파일을 수정한 후 DB 를 재기동하면 설정이 변경됩니다. ※ DB 재기동 없이 Query 또는 Command 를 실행해서 설정을 적용하는 방법도 있습니다. 그러나 일반적인 설정 적용은 가능하지만 일부 재시작이 필요한 설정은 적용되지 않습니다...

PostgresSQL 2023.06.01

linux (Ubuntu) 서버에서 postgresql 이 자동으로 재시작되는 이슈

※ 서버 및 DB 정보 Ubuntu 20.04.5 LTS PostgreSQL 12 ※ DB 모니터링 중 특정 시간에 DB가 종료되었다가 다시 시작되는 이슈를 발견하였다. - 에러 로그 확인 로그 파일 경로 확인 show log_directory; 로그 파일 내용 확인 cd /data/postgresql/log cat postgresql-2023-05-25_000000.log - DB 로그 확인 cd /var/log/postgresql cat postgresql-12-main.log ※ 의심이 가는 부분을 하나씩 확인해보았다. 1. 서버 재기동 last reboot 명령어로 서버 재기동 이력 확인 2. 사용자가 직접 DB 중지 후 재기동 history 명령어로 사용자가 실행한 명령어 이력 확인 → DB 재..

PostgresSQL 2023.05.25

git repository file history 전부 삭제

개인 프로젝트 소스를 private repository 에 중요한 데이터까지 전부 push 해서 관리 중입니다. 요즘은 개발자 입사 지원 시 git 에 포트폴리오 소스코드를 공개하는 것 같아서 방법을 고민해 보았습니다. 1. private repository → public repository 가장 간편한 방법. → 중요 소스코드들이 포함되어 있기 때문에 이 방법은 배제하였습니다. 2. git Submodule git 레포지토리 하위에 다른 저장소를 관리하기 위한 도구 상위 repository 는 슈퍼 프로젝트(superproject), 하위 repository 는 서브 모듈(submodule) 서브모듈을 사용하면 특정한 git 레포지토리를 다른 레포지토리의 하위 디렉토리로 사용할 수 있다. → 상위 r..

tech 2023.05.22

[Android] https 요청 시 ssl 인증서 오류

http 요청은 잘 되는데 https 요청 시 아래 오류 발생 javax.net.ssl.SSLHandshakeException: java.security.cert.CertPathValidatorException:Trust anchor for certification path not found 원인 : Connection 하는 웹사이트의 Certificate 인증서가 안드로이드 단말에 존재하지 않을 경우 발생 해결방법 1. 요청하고자 하는 웹사이트의 인증서 확인 후 다운로드 - 브라우저 주소창에 자물쇠 클릭 - 인증서 정보 클릭 - 세부정보 탭 선택 후 내보내기 버튼 클릭 2. 프로젝트에 인증서 복사 - res > raw 위치에 인증서 붙여넣기 3. Connection 시 인증서 정보 setting Cer..

Android 2023.03.28

[Spring Boot] Swagger, Bearer + JWT(JSON Web Token) 적용

- Spring Boot 3.0.4, springdoc 2.0.4 기준 - JWT(JSON Web Token) JSON 웹 토큰(JSON Web Token, JWT)은 선택적 서명 및 선택적 암호화를 사용하여 데이터를 만들기 위한 인터넷 표준으로 페이로드는 클레임(claim), 표명(assert)을 처리하는 JSON을 보관하고 있다. 전달하고자하는 정보를 안전하게 전송하기 위핸 웹표준(RFC 7519) 방식으로, 인증에 필요한 중요정보(api key, api secret)부터, 만료일, 발행자, 암호화 알고리즘과 같은 기본 정보까지 포함. JWT 토큰 내에 만료일이나 인증정보를 가지고 있기 때문에, 서버에서 인증을 위한 별도의 세션 처리를 할 필요가 없다. 3가지(header, payload, signa..

spring 2023.03.22

[Spring Boot] 스피링 부트 3.x Swagger Ui 설정

- Spring Boot 3.0.4, springdoc 2.0.4 기준 - swagger : springfox, springdoc 2가지 라이브러리가 있음. springfox 는 최근 업데이트가 없고 Spring Boot 3점 대 적용 시 일부 오류 발생 -> java 17 적용 때문인 것 같음 (Spring Boot 3 버전은 java 17 이상 필수) 그래서 springdoc 적용 1. build.gradle - implementation 추가 implementation 'org.springframework.boot:spring-boot-starter-web' implementation 'org.springdoc:springdoc-openapi-starter-webmvc-ui:2.0.4' implem..

spring 2023.03.21

[Spring Boot] 설정 파일(application.properties, logback.xml) 개발, 운영 분리 설정

Spring Boot 개발 환경에 따라 설정 파일을 분리해서 관리하는 방법 1. application.properties - spring.profiles.active 에 profiles 값 설정 : dev(개발), release(운영) 으로 분리함 - 개발, 운영 환경에서 공통적으로 사용하는 설정은 application.properties 파일에 작성. 2. application-dev.properties - spring.profiles.active 값이 dev 로 되어 있을 경우 해당 파일을 설정 파일로 인식 - 개발 환경에서 사용하는 설정 application-dev.properties 파일에 작성 3. application-release.properties - spring.profiles.activ..

spring 2023.03.21

[AWS] Amazon Linux 1 jdk 17 설치

운영하고 있는 Amazon Linux 서버에 jdk 버전업을 하려고 aws 설치 가이드대로 시도 https://docs.aws.amazon.com/ko_kr/corretto/latest/corretto-17-ug/amazon-linux-install.html Amazon Corretto 17 Installation Instructions for Amazon Linux 2 and Amazon Linux 2022 - Amazon Corretto 17 Amazon Corretto 17 Installation Instructions for Amazon Linux 2 and Amazon Linux 2022 This topic describes how to install and uninstall Amazon Cor..

Servers 2023.03.15

[PostGIS] st_equals 함수 속도 느림 공간 index 안타는 문제

공간 테이블 geometry 컬럼 gist 인덱스 설정되어 있는 상태 st_equals 함수 사용하면 속도가 너무 느림. 공간 인덱스 안타는 것 같음 느린 쿼리문 SELECT t1.geom, t2.geom FROM table_a t1 join table_a t2 ON st_equals(t1.geom, t2.geom) 인덱스 타도록 쿼리문 수정 SELECT t1.geom, t2.geom FROM table_a t1 join table_a t2 ON (st_equals(t1.geom, t2.geom) and t1.geom && t2.geom) 위 쿼리문 테스트 결과 인덱스 잘 탐

PostGIS 2022.07.11

[PostgresSQL] plsql(plpgsql) procedure/function 결과 파일로 output

procedure 수행 시 오류 발생 내용을 파일로 생성해서 확인하고 싶었다. CREATE OR REPLACE PROCEDURE cloud.check_insert_error() LANGUAGE plpgsql AS $procedure$ declare /***************************************************************************/ /* 임시변수 선언 */ /***************************************************************************/ n_insert_cnt numeric := 0; -- 작업 건수 n_error_cnt numeric := 0; -- 오류 건수 n_re_insert_cnt nu..

PostgresSQL 2022.07.05
반응형