1. TABLESPACE란? ■ DB 내의 물리적인 부분으로 DB object 내 실제 데이터를 저장하는 공간이다. 단지 데이터베이스 저장소 위치를 지정하며, 논리적인 데이터베이스 구조나 스키마를 지정하지 않는다. (동일 스키마 내의 다른 오브젝트는 서로 다른 테이블스페이스에 위치할 수 있다.) ■ POSTGRESQL에서 TABLESPACE의 의미 또한 타 DB의 TABLESPACE 역할과 동일하며 DBA가 Database Object가 저장된 파일 시스템 장소를 정의할 수 있도록 한다. 2. TABLESPACE 조회 ■ \db 3. TABLESPACE 생성 ■ CREATE TABLESPACE [tablespace_name]; ■ option (1) OWNER [user_name] - 입력하여 TABLE..
[DB] POSTGRESQL
1. DATABASE 구조 https://kwomy.tistory.com/6 Postgresql database 기본 구조 1. postgresql vs oracle ? - db엔진이 올라간 후, 인스턴스를 생성하면서 database가 생성되어 대부분 1 instance = 1 database 를 나타내는 오라클과 달리 postgresql에서의 인스턴스는 1 instance = 1 server를.. kwomy.tistory.com 2. DATABASE 소유 - Database를 생성하기 위해서는 SUPERUSER이거나 CREATEDB 권한을 가진 USER여야 한다. - SUPERUSER는 다른 USER가 만든 DATABASE를 소유할 수도 있지만 그 외 일반 USER들은 자신이 생성한 DATABASE만 ..
1. USER 조회 ● 쿼리로 조회 : select * from PG_SHADOW; ● 명령어로 조회 : \du ROLE funtion SUPERUSER USER 생성, 권한을 부여해주는 USER CREATE ROLE USER가 새로운 ROLE을 정의하는 기능을 생성 CREATE DB USER가 DB를 생성하는 권한을 부여하는 기능 REPLICATION USER가 DB를 실시간으로 복사하는 기능 - \du 를 입력하면 각 user가 가진 role(권한)을 확인할 수 있다. - DB설치시 default로 생성되는 postgres 유저는 모든 권한을 가지고 있다. 2. USER 생성 및 권한 부여 - USER 권한 목록 (\du 명령어 통해서 조회 가능) OPTION DEFAULT OPTION SUPERUS..
1) help information - psql의 명령어에 대한 정보를 얻기 위해서는 psql로 접속하여 \? 를 입력하면 명령어에 대한 정보를 얻을 수 있다. - sql에 대한 명령어 정보를 얻고 싶을 때는 \h 를 입력하면 sql명령어에 대한 정보를 얻을 수 있다. 2. database 목록 확인 - \l 명령어를 통해 서버에 접속된 database 목록을 확인할 수 있다. - database 내 relation 정보를 확인하려면 \d를 입력한다. ● \dt : database 내 table 조회 ● \d+ : relation 상세 조회 ● \dS : System table 조회 ● \dv : view 조회 ● \dl : Large object 조회 ● \di : index 조회 ● \df : fun..
postgresql를 설치하고나면 다음과 같은 구조가 생성된다. [표]POSTGRESQL 엔진 디렉토리 구조 directory contents bin postgreSQL(DB)에서 사용하는 실행파일 위치 data db의 data directory doc documentation 파일 위치 pg_env.sh 환경변수 설정 파일 include header files 위치(cluster 생성 시 사용됨) installer/scripts installer files lib PostgreSQL(DB)에 필요한 library 위치 pgAdmin3/4 그래픽 관리자 tool stackbuilder GUI 기반 업데이트 관리 tool uninstall-postgresql/ uninstall-postgresal.dat ..
1. postgresql vs oracle ? - db엔진이 올라간 후, 인스턴스를 생성하면서 database가 생성되어 대부분 1 instance = 1 database 를 나타내는 오라클과 달리 postgresql에서의 인스턴스는 1 instance = 1 server를 의미하는 서버 단위의 개념이다. - oracle에서의 클러스터는 RAC 환경의 공유노드 개념으로 하나의 스토리지를 바라보는 여러대의 노드, 오라클 클러스터웨어인 grid instructure 를 통한 active-active의 환경을 조성하고 클러스터웨어를 통해 이루어진 공유노드를 클러스터라고 한다. - postgresql에서의 클러스터는 psql DB 집합체를 의미한다. 처음 postgresql 설치 시 기본적으로 postgres ..