참조 사이트
http://zetawiki.com/wiki/%EC%9A%B0%EB%B6%84%ED%88%AC_PostgreSQL_%EC%84%A4%EC%B9%98
State: not installed
4. 계정 확인
cat /etc/passwd | grep postgres
postgres:x:110:120:PostgreSQL administrator,,,:/var/lib/postgresql:/bin/bash
네트웍 상태 확인
netstat -tnlp | grep postgres
패스워드 설정
sudo -u postgres psql template1
could not change directory to "/root": Permission denied
psql (9.3.11)
Type "help" for help.
template1=#
template1=# ALTER USER postgres with encrypted password 'P@ssw0rd';
ALTER ROLE
template1=# \q
접속 모든 대역 허용
vi /etc/postgresql/9.3/main/postgresql.conf
listen_addresses = '*'
vi /etc/postgresql/9.3/main/pg_hba.conf
host all all 0.0.0.0/0 md5
접속 db 포함 접속
#psql -h 127.0.0.1 -U postgres customsinsa
다른 DB 접속
postgres=# use customsinsa;
테이블 보기
customsinsa=# \d
컴럼 정보 보기
customsinsa=# \d testa
뷰목록
\dv
DB 목록
\l
종료
\q
아래 참조: http://wwwi.tistory.com/347
● 데이터 베이스 사용자 만들기
create user wwwi with password 'wwwi';
버전 확인
select version();
● 데이터베이스 만들기
create database wwwi;
● 테이블 만들기
create table testa (
key char(16) primary key,
val1 integer,
val2 integer
);
*테이블 만들 때에 NOT NULL 제약(NULL Data 입력 금지),
UNIQUE 제약, (동일한 Data 입력 금지)
DEFAULT 초기값 설정가능
create table testa (
key char(16) primary key,
val1 integer not null,
val2 integer unique,
val3 integer default 0 not null
);
*constraint으로 Primary Key를 설정하거나 복수의 Primary Key는
아래와 같은 방법으로 설정
create table testa (
key char(16),
val1 integer,
val2 integer,
constraint PK_NAME primary key (
key,
val1
)
);
● 테이블 지우기
drop table testa;
● 기본적인 필드 타입
smailint 2 바이트 정수
integer 4 바이트 정수
bigint 8 바이트 정수
decimal(a, a)/numeric(a, s) 10진수형
real 6자리 단정도 부동소수점
double precision 15 자리 배정도 부동소수점
serial 4 바이트 일련번호
bigserial 8 바이트 일련번호
date 일자
time 시간
timestamp 일자시간
char(문자수)/character 고정길이 문자열 (최대 4096 문자)
varchar(문자수)/charcter varying 가변길이 문자열 (최대 4096 문자)
text 무제한 텍스트
Large Object oid형
boolean/bool true/false
● 키 만들기
*단일 키 설정은 테이블 만들 때에 create table에서 하는 편이 좋다.
단일 키를 설정할 필드에 primary key를 지정하면 된다.
key char(16) primary key,
*복수 키는 아래와 같이 추가할 수 이싿.
create table testa (
key char(16),
val1 integer,
val2 integer,
constraint PK_NAME primary key (
key,
val1
)
);
* 인덱스를 추가하면 검색 속도를 빠르게 할 수 있지만 너무 많이 만들면
갱신할 때에 부하가 걸릴 수 있다.
create unique index PK_NAME on testa (
key,
val1
);
create index PK_NAME on testa (
key,
val1
);
● 키 지우기
drop index PK_NAME;
● 일련번호 만들기
*일변번호는 serial로 정의해서 사용할 수 있음
create table testa (
key char(16),
val1 serial,
val2 integer,
);
insert into testa values('key00A');
insert into testa values('key00B');
key | val1 | val2
--------+----+------
key00A | 1 |
key00B | 2 |
create sequence seq;
*다음과 같이 만들면 10 ~ 1000000, 100씩 증가하며 최대값이 되면 다시 최소값으로 돌아간다.
create sequence seq
increment 10
minvalue 10
maxvalue 1000000
start 10
cache 100
cycle
;
*일련번호는 다음과 같이 사용한다.
nextval이 일련번호를 만들어 내고
currval은 일변번호의 현재값을 가져온다.
insert into testa values ('k001', nextval('seq'), 10);
insert into testa values ('k002', nextval('seq'), 10);
insert into testa values ('k003', currval('seq'), 10);
key | val1 | val2
------+-----+------
k001 | 10 | 10
k002 | 20 | 10
k003 | 20 | 10
● 일련번호 지우기
drop sequence seq;
http://zetawiki.com/wiki/%EC%9A%B0%EB%B6%84%ED%88%AC_PostgreSQL_%EC%84%A4%EC%B9%98
1. 설치 확인
aptitude show postgresql | grep StateState: not installed
2. 설치
apt-get install postgresql3. 확인
dpkg -l | grep postgres4. 계정 확인
cat /etc/passwd | grep postgres
postgres:x:110:120:PostgreSQL administrator,,,:/var/lib/postgresql:/bin/bash
네트웍 상태 확인
netstat -tnlp | grep postgres
패스워드 설정
sudo -u postgres psql template1
could not change directory to "/root": Permission denied
psql (9.3.11)
Type "help" for help.
template1=#
template1=# ALTER USER postgres with encrypted password 'P@ssw0rd';
ALTER ROLE
template1=# \q
접속 모든 대역 허용
vi /etc/postgresql/9.3/main/postgresql.conf
listen_addresses = '*'
vi /etc/postgresql/9.3/main/pg_hba.conf
host all all 0.0.0.0/0 md5
접속 테스트
psql -h 135.79.246.80 -U postgres template1접속 db 포함 접속
#psql -h 127.0.0.1 -U postgres customsinsa
다른 DB 접속
postgres=# use customsinsa;
테이블 보기
customsinsa=# \d
컴럼 정보 보기
customsinsa=# \d testa
뷰목록
\dv
DB 목록
\l
종료
\q
아래 참조: http://wwwi.tistory.com/347
● 데이터 베이스 사용자 만들기
create user wwwi with password 'wwwi';
버전 확인
select version();
● 데이터베이스 만들기
create database wwwi;
● 테이블 만들기
create table testa (
key char(16) primary key,
val1 integer,
val2 integer
);
*테이블 만들 때에 NOT NULL 제약(NULL Data 입력 금지),
UNIQUE 제약, (동일한 Data 입력 금지)
DEFAULT 초기값 설정가능
create table testa (
key char(16) primary key,
val1 integer not null,
val2 integer unique,
val3 integer default 0 not null
);
*constraint으로 Primary Key를 설정하거나 복수의 Primary Key는
아래와 같은 방법으로 설정
create table testa (
key char(16),
val1 integer,
val2 integer,
constraint PK_NAME primary key (
key,
val1
)
);
● 테이블 지우기
drop table testa;
● 기본적인 필드 타입
smailint 2 바이트 정수
integer 4 바이트 정수
bigint 8 바이트 정수
decimal(a, a)/numeric(a, s) 10진수형
real 6자리 단정도 부동소수점
double precision 15 자리 배정도 부동소수점
serial 4 바이트 일련번호
bigserial 8 바이트 일련번호
date 일자
time 시간
timestamp 일자시간
char(문자수)/character 고정길이 문자열 (최대 4096 문자)
varchar(문자수)/charcter varying 가변길이 문자열 (최대 4096 문자)
text 무제한 텍스트
Large Object oid형
boolean/bool true/false
● 키 만들기
*단일 키 설정은 테이블 만들 때에 create table에서 하는 편이 좋다.
단일 키를 설정할 필드에 primary key를 지정하면 된다.
key char(16) primary key,
*복수 키는 아래와 같이 추가할 수 이싿.
create table testa (
key char(16),
val1 integer,
val2 integer,
constraint PK_NAME primary key (
key,
val1
)
);
* 인덱스를 추가하면 검색 속도를 빠르게 할 수 있지만 너무 많이 만들면
갱신할 때에 부하가 걸릴 수 있다.
create unique index PK_NAME on testa (
key,
val1
);
create index PK_NAME on testa (
key,
val1
);
● 키 지우기
drop index PK_NAME;
● 일련번호 만들기
*일변번호는 serial로 정의해서 사용할 수 있음
create table testa (
key char(16),
val1 serial,
val2 integer,
);
insert into testa values('key00A');
insert into testa values('key00B');
key | val1 | val2
--------+----+------
key00A | 1 |
key00B | 2 |
create sequence seq;
*다음과 같이 만들면 10 ~ 1000000, 100씩 증가하며 최대값이 되면 다시 최소값으로 돌아간다.
create sequence seq
increment 10
minvalue 10
maxvalue 1000000
start 10
cache 100
cycle
;
*일련번호는 다음과 같이 사용한다.
nextval이 일련번호를 만들어 내고
currval은 일변번호의 현재값을 가져온다.
insert into testa values ('k001', nextval('seq'), 10);
insert into testa values ('k002', nextval('seq'), 10);
insert into testa values ('k003', currval('seq'), 10);
key | val1 | val2
------+-----+------
k001 | 10 | 10
k002 | 20 | 10
k003 | 20 | 10
● 일련번호 지우기
drop sequence seq;
댓글
댓글 쓰기