목록Programing/리눅스 (18)
꾸준한 개발일기
먼저, 백업을 한다. 밑의 링크를 참고하면 된다. https://dev-h2.tistory.com/13 리눅스:: 데이터베이스에서 원하는 스키마만 백업하기(pg_dump) 운영서버에 있는 최신 데이터를 개발서버에 적용하기 위해 백업이 필요하다. ui에 해당하는 데이터가 있는 public 스키마의 데이터만 덤프를 뜨려한다. 1. pg_dump pg_dump -h xxx.xxx.xxx.xxx -d postgres -n pub. dev-h2.tistory.com 1. 덤프파일을 원하는 DB서버에 복사 wget http://xxxxx 2. psql 접속 su – postgres 3. db import psql –d db_name –h localhost –U user_name < schema_dumpfile.sq..
운영서버에 있는 최신 데이터를 개발서버에 적용하기 위해 백업이 필요하다. ui에 해당하는 데이터가 있는 public 스키마의 데이터만 덤프를 뜨려한다. 1. pg_dump pg_dump -h 10.1.46.162 -d postgres -C -Fc -n public --username=postgres > /home/centos/postgres_public_211229.dump ssh에 들어가 pg_dump 명령어를 입력해준다. 파일형식은 dump로 하는 것을 추천한다.(대략 1시간 정도 걸림, sql로 실행시 10시간이 넘게 소요된다.) -h : ip를 입력해준다. -d : 데이터베이스 명을 입력해준다. -C: 데이타베이스의 생성부분까지 백업을 하라는 옵션이다. 기존 스키마가 존재하는 곳에 데이터만 넣어주..
웹 서버에서 배치서버로 connection할 때 오류가 발생했다. Caused by: org.postgresql.util.PSQLException: FATAL: sorry, too many clients already at org.postgresql.core.v3.ConnectionFactoryImpl.doAuthentication(ConnectionFactoryImpl.java:433) ~[postgresql-9.4.1208.jar:9.4.1208] at org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:208) ~[postgresql-9.4.1208.jar:9.4.1208] at org.p..
배치서버에서 기능이 돌아가는데 버퍼링이 걸리는 오류가 발생했다. 처음엔 ui 서버에서 배치서버로 넘어가는 데에 로딩이 걸리는 줄 알았지만 로그를 확인해보니 스케쥴러에서 발생한 오류였다. 기능이 동작된 이후에 찍힌 로그의 타임라인을 확인하니 현재 시간과 차이가 있었다. 그리고 이를 해결해보았다. 시간 확인 # timedatectl 리눅스에서 ssh에 timedatectl 명령어로 서버시간을 확인해보았다. 예상대로 8분 차이가 나는 것을 확인할 수 있었다. 자동 시간 동기화 설정 # timedatectl set-ntp 자동 시간 설정 명령어를 입력해 보았지만 먹히지 않았다. 수동 날짜, 시간 설정 # timedatectl set-time "2021-12-02 13:04:10" 수동설정을 해보았더니 서버 시간..
:: psql로 DDL문 추출하기 데이터베이스 테이블에서 geom 컬럼의 데이터 타입이 geometry여야 하는데 character varying으로 설정되어있었다. 원인을 분석하기 위해 DDL을 추출해보았다. 1. ssh에서 psql로 접속한다. https://dev-h2.tistory.com/6 꼭 필요한 psql로 리눅스에서 데이터베이스 연결, 확인하기 웹사이트로 운영서버에 데이터를 적재하고, 이를 확인하기 위해 리눅스를 사용한다. 로컬이나 개발서버에서 처럼 DBeaver(DB 프로그램)를 사용하면 편하겠지만 ssh와 sftp만을 사용하여 관리해야하 dev-h2.tistory.com 2. generate_create_table_statement 함수를 생성한다. 복잡해 보이지만 밑에 코드를 모두 복..