만쥬의 개발일기
article thumbnail
[PostgreSQL] - PostgreSQL DB생성 및 접속 시 Peer authentication 에러 해결법
🛠️TOOL/🐘PostgreSQL 2024. 1. 1. 23:18

PostgreSQL을 사용하며 DB를 생성하거나, psql로 접속할때 종종 Peer authentication 에러가 발생하곤 한다. 이때에는 pg_hba.conf파일의 설정을 변경해주어야 한다. 먼저 pg_hba_conf 파일의 위치를 찾아야하는데, 리눅스 우분투의 경우 보통 다음 경로에 위치한다. /etc/postgresql/{postgresql 버전}/main/pg_hba.conf 해당 파일을 vi 편집기로 접속하고, 몇가지 설정을 변경해준다. 로컬 호스트 기준 여기서 local all postgres와 local all all의 peer을 모두 md5로 변경해준다. 위 사진과 같이 변경되었다면 저장을 해준다. 외부 host기준 host all all 127.0.0.1/32 md5 위 설정에서 12..

article thumbnail
[PostgreSQL] - PostgreSQL사용 시 데이터 공간 부족 문제 해결
🛠️TOOL/🐘PostgreSQL 2024. 1. 1. 23:09

postgresql 설정 파일이 위치한 폴더로 이동한다. 각 OS별로 대부분 다음 위치에 존재한다. Linux /etc/postgresql/13/main/postgresql.conf macos /usr/local/var/postgres/postgresql.conf window C:\\Program Files\\PostgreSQL\\13\\data\\postgresql.conf 해당위치의 postgresql.conf 파일에서 data_directory를 확인한다. 해당 경로가 postgresql 서버에서 사용하는 모든 데이터와 메타데이터가 저장되는 데이터베이스 클러스터이다. 그리고 해당 파일에서 log_temp_files 부분을 다음과 같이 수정해준다. log_temp_files = 10240 공간 확보 ..

article thumbnail
[Spring Boot] - 클라이언트 접속 IP 기록용 Tomcat Access Log 설정하기

Tomcat Access Log란? 웹 서버의 로그 파일로서 클라이언트의 HTTP 요청 및 응답에 대한 정보를 기록하는 로그입니다. 이를 통해 애플리케이션의 동작 상태를 파악하고 문제를 해결하는 데 유용하게 사용됩니다. Tomcat Access Log 사용 목적 💡 가장 주요한 사용 목적은 HTTP 요청 및 응답 정보를 기록 애플리케이션의 동작 상태 파악 애플리케이션의 성능 분석 보안 이슈 파악 사용자 행동 분석 Access Log의 구성 요소 구성 요소의 종류 구성요소 약어 설명 Remote Host %a HTTP 요청을 보낸 클라이언트의 IP 주소 Timestamp {yyyy-mm-dd HH:mm:ss} HTTP 요청이 발생한 시간 Request Line %r HTTP 요청 메서드, URL 및 HTT..

[Java / Trouble Shooting] - Exception in thread "main" java.lang.NoClassDefFoundError: com/google/gson/Gson 에러 발생 시 해결 방법

gson은 json 파일의 내용을 읽어서 java 객체로 만들어주는 라이브러리다. implementation 'com.google.code.gson:gson:2.8.9' 위와 같이 build.gradle에 의존성을 추가하면 사용 가능하다. 그러나 해당 라이브러리를 참조하는 과정에서 오류가 생길 때가 있었다. intellij등의 IDE를 통해 자바 프로젝트를 실행하면 라이브러리를 잘 참조했으나, jar 파일로 만들어 실행하면 다음과 같은 에러가 뜨는 것이었다. Exception in thread "main" java.lang.NoClassDefFoundError: com/google/gson/Gson at Potatonet.PortScan.application.APICaller.getIpListWithPo..

article thumbnail
[Spring Boot / Trouble Shooting] - 스프링 부트 프로젝트의 외부 접속이 막혔을 때 다양 해결 방법

Spring Boot로 외부 메인 서버에 서버를 띄웠을 때, 분명 서버도 잘 올라가 있고 내부망에서는 API 송수신이 되는데, 간혹 외부 접속은 아예 불가능 한 경우가 있었다. 그때의 해결 방법들을 모아보자. 다음 먼저 개발 환경은 다음과 같다. Spring Boot 버전 3 이상 Linux Ubuntu 20.04 스프링 설정에서 외부 접근 권한이 막혔을때 application.properties에 다음 내용을 추가한다. server.port=8080 server.address=0.0.0.0 server.port 설정은 내가 서버를 열 포트를 지정한다. (default는 8080) server.address=0.0.0.0 는 모든 IP에서의 접근을 허용한다. 스프링 부트의 port가 외부 접근이 막혔을 ..

[Trouble Shooting] - 파이썬 모듈 Selenuim 사용 시 unknown error: cannot find Chrome binary 에러 해결

크롬 deb 파일이 있는 경우, 다음 명령어로 크롬을 설치해준다. sudo dpkg -i google-chrome-stable_current_amd64.deb 그리고 리눅스의 경우 보통 /usr/bin 하위에 크롬이 위치하므로, 다음 옵션을 추가해 크롬의 위치를 지정해준다. options.binary_location= "/usr/bin/google-chrome" 그리고 Selenium과 관련된 대부분의 문제는 버전 문제일 확률이 높다. 버전과 관련된 스택오버플로 글들을 찾아보자. 필자는 4.4.3 버전만을 사용한다. (버전이 높을 수록 지원하지 않는 문법이 많다) reference https://jo-coder.tistory.com/45

[Linux] - SCP를 이용한 파일전송
🛠️TOOL/📄Linux 2024. 1. 1. 22:15

프로젝트를 하다보면 종종 SSH로 연결된 서버에 파일 혹은 폴더를 전송해야 하는 경우가 있다. 이때는 SCP를 활용한다. 로컬 ➡️ 원격 서버 scp -P 포트번호 -r {전송할 폴더 위치} {전송한IP의 ID}@{전송할IP}:{도착주소} 원격 서버 ➡️ 로컬 scp -P {원격서버포트} -r {원격서버ID}@{원격서버 IP or DDNS}:{전송하려는 파일 절대경로} {전송받는 로컬 폴더 절대경로} -r 옵션은 폴더를 전송할 때 사용한다. 파일을 전송한다면 생략해도 된다. 만약 원격 서버 ➡️ 로컬을 진행할때, ssh 키 등록이 안되어있어 에러가 난다면, 로컬의 ssh public 키를 원격 서버의 ~/.ssh/authorized_keys 에 등록해준다.

article thumbnail
[Trouble Shooting]- Chromedriver (unknown error: DevToolsActivePort file doesn't exist)

크롤링을 할때 사용하던 크롬 드라이버가 작동하지 않는 오류 chromedriver가 업데이트되면서 DevToolsActivePort를 찾을 수 없다고 한다. 이때는 웹 드라이버에 다음과 같이 옵션들을 추가해준다. options = Options() options.add_argument('--headless') # headless 모드 활성화 options.add_argument('--no-sandbox') options.add_argument('--disable-gpu') options.add_argument("--single-process") options.add_argument("--disable-dev-shm-usage") 위 세가지 옵션은 기존에 존재하던 옵션들이고, 아래 두개 옵션이 이번에 새롭..