pg_cron은 데이터베이스 내부에서 확장으로 실행되는 PostgreSQL(10이상)용 cron 기반의 스케줄러이다. linux의 crontab과 동일한 구문을 사용하며 데이터베이스에서 직접 query 실행을 예약할 수 있다. 설치 # 사용하고 있는 postgresql 버전에 맞게 설치하자. # 아래는 postgresql13 용 pg_cron을 설치하는 예시이다. # Red Hat, CentOS, Fedora, Amazon Linux $ sudo yum install -y pg_cron_13 # Debian, Ubuntu $ sudo apt-get -y install postgresql-13-cron postgresql.conf 설정 #postgresql.conf 파일에 아래의 설정을 추가 하자. # p..
먼저 psql을 명령어를 사용하여 PostgreSQL에 접속 한다. $ psql -U postgres -W postgres 사용자의 암호: psql (10.17) 도움말을 보려면 "help"를 입력하십시오. postgres=# -U 옵션은 사용자이고 -W 옵션은 비번을 입력하겠다는 의미이다. 이제 psql에서 자주 사용하는 명령어 몇가지를 알아보자 데이터베이스 목록 조회 \l 좀더 자세한 내용을 원한다면 뒤에 + 만 더 붙이면 된다. \l+ postgres=# \l 데이터베이스 목록 이름 | 소유주 | 인코딩 | Collate | Ctype | 액세스 권한 -----------+-----------+--------+-------------+-------------+----------------------..
pg_dump 명령어 $ pg_dump --help pg_dump dumps a database as a text file or to other formats. Usage: pg_dump [OPTION]... [DBNAME] General options: -f, --file=FILENAME output file or directory name -F, --format=c|d|t|p output file format (custom, directory, tar, plain text (default)) -j, --jobs=NUM use this many parallel jobs to dump -v, --verbose verbose mode -V, --version output version information..
참고: https://www.postgresql.org/docs/current/sql-insert.html INSERT INSERT INSERT — create new rows in a table Synopsis [ WITH [ RECURSIVE ] with_query [, ...] ] INSERT … www.postgresql.org PostgreSQL 8.2 이후 버전에서 사용 가능 INSERT INTO films (code, title, did, date_prod, kind) VALUES ('B6717', 'Tampopo', 110, '1985-02-10', 'Comedy'), ('HG120', 'The Dinner Game', 140, DEFAULT, 'Comedy');
출처: http://www.davidghedini.com/pg/entry/install_postgresql_9_on_centos This post will cover installing and basic configuration of PostgreSQL 9.x on CentOS. We will install PostgreSQL 9 using the PostgreSQL repository and yum. The same procedure can be used to install PostgreSQL 9 on Red Hat and Fedora using the appropriate rpm. Optionally, we'll also see how to install PostGIS. As the directory..
테이블 생성 쿼리 생성 함수 CREATE OR REPLACE Function pg_get_tabledef(text) RETURNS text AS $$ DECLARE tabledef TEXT; dotpos integer; tablename text; schemaname text; prevcol text; coltype text; notnull1 boolean; rec record; oidcheck boolean; BEGIN dotpos:=strpos($1,'.'); if dotpos = 0 then schemaname:='public'; tablename:=substr($1,dotpos+1); else schemaname:=substr($1,1,dotpos-1); tablename:=substr($1,do..
출처 : http://www.toyos.nl/2010/09/21/install-postgresql-9-0-on-centos-5-5/ Today PostgreSQL 9.0 was released, so it’s testing time. Here is a little howto on installing it on a CentOS 5.5 machine. First do a minimal CentOS 5.5 install. Read this. Exclude postgres from the base and updates repos: vi /etc/yum.repos.d/CentOS-Base.repo And add: exclude=postgresql* to the bottom of both sections. Get ..
HKEY_CURRENT_USER\Software\pgAdmin III\Servers
우선 dblink 모듈이 설치 되어 있지 않다면 http://www.postgresql.org/ftp/binary/ 또는 ftp://ftp.postgresql.org/pub/binary/ 에서 postgresql 버전 과 os에 맞는 postgresql-contrib 를 다운 받아서 설치 한다. 예를 들어 redhat 64bit 이고 postgresql 8.4.4 버전을 사용한다면 wget http://wwwmaster.postgresql.org/download/mirrors-ftp/binary/v8.4.4/linux/rpms/redhat/rhel-5-x86_64/postgresql-contrib-8.4.4-1PGDG.rhel5.x86_64.rpm 또는 wget ftp://ftp.postgresql.or..
PostgreSQL 8.0 기존 .설정파일인 postgresql.conf의 설정 설정 입니다 만들다 말다 하다보니 쩝., 8.0이 나오니 양만 늘었네요. 이리 올렸으면, 바뀌건만 하면 되는데 워낙 실력이 미천하고 독학에 되도않는 영어와 사전으로 주어들은거나 본거로 아는 범위내에서 설명을 드렸습니다. 모르는것은 찾아 해메서 이해된건만 기명했으며, 틀린내용은 당연히 듬뿍 많을것입니다. 혹여 튼린부분이 보이시면 지적해주시면 많은 도움이 될것입니다.^^ - FILE LOCATIONS - 시스템과 직접 연관된 파일들에 대한 설정 data_directory = 'ConfigDir' 실제적인 PostgreSQL의 DB Data 폴더 설정입니다. PostgreSQL 는 기본적으로 접근자 Shell의 환경변수중 PGDA..
JDBC로 LargeObject를 업로드하는 코딩을 테스트하는데 500MB짜리 파일을 여러 개 올리고 지우는 테스트를 반복하다 보니, 어느새 /data의 크기가 80기가를 넘어가고 있더군요. 그래서 JDBC의 LargeObject를 지우는 API를 이용해서 파일을 지웠으나 여전히 용량을 그대로. VACUUM 이라는 기능이 있더군요. 이 기능과 관련하여 구글을 검색하다 보니 MySQL과 PostgreSQL을 비교해놓은 MySQL vs. PostgreSQL 라는 글이 있군요. 저 글이 2002년 6월에 쓰여 졌으니, 현재는 각 데이터베이스에서 어떤 기능들이 더 구현되었는지 확인해야 겠지만, 저때만 해도 PostgreSQL에는 구현되어 있으나, MySQL에는 구현되지 않은 기능들도 많이 있군요.(그러나 MyS..
cluster 복사가 맞는 말일려나? ^^;;; 암튼 제목이 조금 어정쩡 하지만 딱히 떠오르는 말이 없어서 그냥 저렇게 한다. ^^:; /usr/local/pgsql 폴더에 PostgreSQL을 설치 하였다. 그리고 /usr/local/pgsql/data에 데이터 베이스를 생성 하였다. 그후 잘 가지고 놀고 있었으니 문제가 발생하였다 ㅠㅠ 디스크 공간 부족 ;;; (아무생각 없이 파티션을 잡고 아무 생각없이 거기에 데이터베이스를 ;;;) 그리하여 data 폴더를 이동하기로 결정 했다. 파티션 사이즈를 무식하게 많이 잡아놓은 /home 아래로 옮기기로 했다. 1. /home/pgsql/data 폴더를 생성한다. 2. /usr/local/pgsql/data의 모든 파일 폴더를 위 폴더로 복사 한다. 3. c..
시스템을 운영하다보면 시스템의 상태를 확인하고 싶을때가 많다. 시스템의 구석구석을 아는것도 중요하지만 시스템을 모니터링을 통해 시스템의 상태를 정확하게 파악하고 있느것도 매운 중요한 일이다. PostgreSQL도 마찬가지다. 현재 난 PostgreSQL에 대해서 잘 모른다. 하지만 PostgreSQL의 상태를 알고 싶은 마음은 굴뚝같다. 그래서 여기저기 알아보고 내용을 정리해봤다. ■ PostgreSQL 의 통계정보. PosgtgreSQL의 통계 정보는 시스템 카탈로그의 pg_stat 로 시작하는 테이블에 저장된다. 현재 데이터베이스 리스트와 OID, 데이터베이스별 사용용량등을 쿼리문을 통해서 확인할수 있다. 이뿐아니라 통계관련 함수도 많이 지원한다. postgres=# SELECT * FROM pg_s..
PostgreSQL은 게시판과 같이 Paging Query 최적화(?) 되어있는 Limit 키워드를 지원 한다. 아래 예제를 보면서 사용법을 알아 보겠다. -- -- 아래 SQL은 처음 10개의 Row를 반환 한다. SELECT * FROM TABLE_NAME LIMIT 10; -- 위 SQL과 아래의 SQL은 같은 결과를 반환 한다. SELECT * FROM TABLE_NAME LIMIT 10 OFFSET 0; -- 아래 SQL은 11번째 부터 10개의 Row를 반환 한다. SELECT * FROM TABLE_NAME LIMIT 10 OFFSET 10; --
- Total
- Today
- Yesterday