기억의 습작

테이블스페이스(tablespace) 본문

DB/oracle

테이블스페이스(tablespace)

뿌사리다 2021. 8. 29. 00:23

테이블 스페이스 정리

현재 ORACLE서버에 만들어져있는 TABLESPACE보기

SYSTEM계정에서 실행

SELECT file_name, tablespace_name, bytes, status FROM DBA_DATA_FILES;

FILE_NAME : datafile의 물리적인 위치와 파일명을 알 수 있습니다.

TABLESPACE_NAME : 테이블 스페이스의 이름을 알 수 있습니다.

BYTES : 테이블 스페이스의 크기를 알수 있습니다.

STATUS : 테이블 스페이스의 이용 가능 여부를 알 수 있습니다.

테이블 스페이스 삭제

(http://blog.daum.net/_blog/BlogTypeView.do?blogid=0YRP8&articleno=14&_bloghome_menu=recenttext)

DROP TABLESPACE TABLE_NAME

INCLUDING CONTENTS AND DATAFILES

— DATAFILE 패스는 사용자에 맞게 변경 {$ORACLE_HOME} —

데이터 테이블스페이스 생성

CREATE TABLESPACE TS_EDM_DAT

DATAFILE ‘/home/oracle/db/product/12.1.0/dbhome_1/dbs/TS_EDM_DAT.ORA’ SIZE 1G

AUTOEXTEND ON NEXT 10M MAXSIZE 10G

EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO;

인덱스 테이블스페이스 생성

CREATE TABLESPACE TS_EDM_IND

DATAFILE ‘/home/oracle/db/product/12.1.0/dbhome_1/dbs/TS_EDM_IND.ORA’ SIZE 100M

AUTOEXTEND ON NEXT 10M MAXSIZE 500M

EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO;

임시 테이블스페이스 생성

CREATE TEMPORARY TABLESPACE DEV_TMP

TEMPFILE ‘/home/oracle/db/product/12.1.0/dbhome_1/dbs/DEV_TMP.ORA’ SIZE 100M

AUTOEXTEND ON NEXT 5M MAXSIZE 500M

EXTENT MANAGEMENT LOCAL UNIFORM SIZE 1024K;

사용자 생성 후 tablespace 지정

create user edm_own identified by edm_own

default tablespace TS_EDM_DAT

temporary tablespace DEV_TMP;

create user edm_app identified by edm_app

default tablespace TS_EDM_DAT

temporary tablespace DEV_TMP;

create user edm_eai identified by edm_eai

default tablespace TS_EDM_DAT

temporary tablespace DEV_TMP;

사용자 권한설정

grant connect, resource, dba to edm_own;

grant connect, resource, dba to edm_app;

grant connect, resource, dba to edm_eai;

테이블 스페이스 크기 확인

SELECT U.TABLESPACE_NAME “GHSDTS”

        , U.BYTES / 1024000 “크기(MB)”

        , (U.BYTES – SUM(NVL(F.BYTES,0))) / 1024000 “사용됨(MB)”

        , (SUM(NVL(F.BYTES,0))) / 1024000 “남음(MB)”

        , TRUNC((SUM(NVL(F.BYTES,0)) / U.BYTES) * 100,2) “남은 %”

 FROM DBA_FREE_SPACE F, DBA_DATA_FILES U

WHERE F.FILE_ID(+) = U.FILE_ID

GROUP BY U.TABLESPACE_NAME, U.FILE_NAME, U.BYTES

ORDER BY U.TABLESPACE_NAME;

테이블 스페이스 크기 조절

alter database datafile ‘/u01/app/oracle-product/12.1.0/xe/dbs/TS_EDM_IND.ORA’ resize 50M;

#oracle in docker

테이블 스페이스 리스트 보기

SELECT file_name, tablespace_name, bytes, status FROM DBA_DATA_FILES;

데이터 테이블스페이스 생성

CREATE TABLESPACE MY_DAT

DATAFILE ‘/u01/app/oracle/product/12.1.0/xe/dbs/MY_DAT.ORA’ SIZE 100M

AUTOEXTEND ON NEXT 10M MAXSIZE 10G

EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO;

인덱스 테이블스페이스 생성

CREATE TABLESPACE MY_IND

DATAFILE ‘/u01/app/oracle/product/12.1.0/xe/dbs/MY_IND.ORA’ SIZE 10M

AUTOEXTEND ON NEXT 1M MAXSIZE 500M

EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO;

임시 테이블스페이스 생성

CREATE TEMPORARY TABLESPACE MY_TMP

TEMPFILE ‘/u01/app/oracle/product/12.1.0/xe/dbs/MY_TMP.ORA’ SIZE 100M

AUTOEXTEND ON NEXT 5M MAXSIZE 500M

EXTENT MANAGEMENT LOCAL UNIFORM SIZE 1024K;

사용자 생성 후 tablespace 지정

create user my_own identified by my_own

default tablespace MY_DAT

temporary tablespace MY_TMP;

create user my_app identified by my_app

default tablespace MY_DAT

temporary tablespace MY_TMP;

create user my_eai identified by my_eai

default tablespace MY_DAT

temporary tablespace MY_TMP;

사용자 권한설정

grant connect, resource, dba to my_own;

grant connect, resource, dba to my_app;

grant connect, resource, dba to my_eai;

패스워드 제한 풀기

ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;

패스워드 대소문자 구분하지 않기

alter system set sec_case_sensitive_logon=false;

sys 및 system 패스워드 변경

alter user system identified by oraclepw;

alter user sys identified by oraclepw;

commit;

728x90
반응형
LIST

'DB > oracle' 카테고리의 다른 글

SQL developer in Ubuntu  (0) 2021.08.29
Oracle 설치 in CentOs  (0) 2021.08.29
Oracle 설치 및 계정관리 in Windows  (0) 2021.08.29
oracle 에러코드  (0) 2021.08.29
오라클 캐릭터 변경  (0) 2021.08.28