300x250



>명령어 

>select name, bytes

from v$sgastat

where name like '%buffer%'

and pool is null;

-Database buffer cache나 redo log buffer 의 크기를 확인.


>select pool, sum(bytes)

from v$sgastat

where pool is not null

group by pool;

-Shared pool, Large pool, java poll의 크기를 확인.


>select name, block_size, buffers, buffers*block_size as "SIZE"

from v$buffer_pool;

-다양한 Database buffer cache의 상태를 확인.


>CREATE TABLESPACE <tablespace명>

DATAFILE '<data file>' SIZE <크기>

BLOCKSIZE <크기>;

-BlockSize에 지정된 크기의 block size를 갖는 tablespace를 생성.

------------------------------------------------------------

>show parameter db_block_size; 

-Standard block size


>select tablespace_name, block_size

from dba_tablespaces;

-각 tablespace 별 block 크기를 확인


>show sga;

-sga영역 조회


>show parameter sga_


>show parameter cache_size

-사용하지 않는 캐쉬 사이즈는 자동으로 관리 되지 않음


>select pool, sum(bytes)

from v$sgastat

where pool is not null

group by pool;

-SGA 내에 여러 pool size 크기 확인


>select name, bytes

from v$sgastat

where name like '%buffer%'

and pool is null;

-Database Buffer Cache , Redo Log Buffer 크기 조회


>select name, block_size, buffers, buffers*block_size as "SIZE"

from v$buffer_pool;

-현재 buffer cache에는 8k block size인 buffer cache만 존재.


---16k block size를 가진 테이블 스페이스 create 명령했지만 오류가 난다.

왜냐면 16k buffer cache가 존재하지 않기 때문이다.


>alter system set db_16k_cache_size =16M;

-16k block 크기의 buffer cache를 설정. 


>show parameter cache_size;

-db_16k_cache_size가 16M로 할당 되었음을 확인


>select name, block_size, buffers, buffers*block_size as "SIZE"

from v$buffer_pool;

-Buffer cache 조회 


>create tablespace imsy

datafile '/app/ora11g/oradata/DISK1/imsy01.dbf' size 5M

blocksize 16k;

-16k block size tablespace를 생성.


>select tablespace_name, block_size

from dba_tablespaces

order by 1;

-table space 조회 _ 16k block 사이즈를 가진 tablespace 확인 


>select tablespace_name, bytes, file_name

from dba_data_files;

-테이블 스페이스, 크기, datafile 경로 조회


>alter system set db_16k_cache_size=0M;

>select tablespace_name, bytes, file_name

from dba_data_files;

-9i에서는 발생한다. 11g에서는 16k block 크기를 사용하는 tablespace가 사용할 수 없게 됨.

-Open 상태이기는 하지만 dba_data_file 조회 할 수 없음.


>select t.name talbespace_name, d.bytes, d.name file_name

from v$tablespace t, v$datafile d

where t.ts#=d.ts#

order by 1;

-dynamic performance view 조회


>create table imsy(no number) tablespace imsy;

-imsy tablespace를 사용 할 수 없다.


>drop table space imsy

-imsy tablespace 삭제 / 

* 바람직한 케이스 tablespace 삭제 -> buffer cache 삭제 :


>imsy01.dbf 파일 삭제

-삭제 후 조회








반응형
300x250

Redo log file


Redo log file 확인

>명령어


>SELECT A.GROUP#, A.MEMBER, B.BYTES, B.STATUS, B.SEQUENCE#

  FROM V$LOGFILE A, V$LOG B

  WHERE A.GROUP#=B.GROUP#

  ORDER BY 1;

-현재 LOG 그룹과 MEMBER의 운영 상황을 조회 한다.

-GROUP # : 그룹번호

-MEMBER : 멤버 파일의 경로 및 파일명

-BYTES : 멤버 파일의 크기

-STATUS : 그룹의 상태

-----------------------------------------------------------------------------------

>ARCHIVE LOG LIST

-Archive log : 관련 내용을 조회.

-Archive log mode가 아닌 경우 조회된 내용은 별 의미가 없다.

-----------------------------------------------------------------------------------


v$log , v$logfile 구조 


--------------------------------------------------------------------

리두 로그 파일의 그룹과 멤버 상태 조회

>SELECT a.group#, a.member, b.bytes, b.status, b.sequence#

  FROM v$logfile a, v$log b

  WHERE a.group#=b.group#

  ORDER BY 1;

-----------------------------------------------------------------------

Log Switch 와 checkpoint


>명령어 

>ALTER SYSTEM SWITCH LOGFILE;

   -Log switch를 강제로 발생

>ALTER SYSTEM CHECKPOINT

  -Check point를 강제로 발생

-------------------------------------------------------

>SELECT a.group#, a.member, b.bytes, b.status, b.sequence#

   FROM v$logfile a, v$log b

   WHERE a.group# = b.group#

   ORDER BY 1;

조회

Log switch 강제 발생

>ALTER SYSTEM switch logfile;

조회

Check Point 강제 발생

>ALTER SYSTEM CHECKPOINT;

조회

-----------------------------------------------------------------------

Log Switch, CheckPoint 간편하게 발생시키기

>!vi switch.sql

ALTER SYSTEM SWITCH logfile;

ALTER SYSTEM CHECKPOINT;


>@Switch

조회



















반응형
300x250

명령어

>ALTER SYSTEM SET <parameter 명> = <값>SCOPE=[SPFILE | MEMORY |BOTH]

-지정한 parameter의 값을 수정

-scope 절은 spfile 운영 환경인 경우만 허용

-SPFILE : spfile만 수정한다.(정적 parameter 수정에서는 필수.)

-MEMORY : 현재 DB의 parameter 설정 값만 수정. spfile은 수정하지 않음. DB 재시작시 원래 설정값으로 환원

-BOTH : spfile 과 instance의 설정된 parameter 값을 모두 수정 (default 값)


*현재 운영중인 parameter 값.

show parameter 파라메터파일명

v$parameter


*spfile에 설정된 값.

v$spparameter

-----------------------------------------------------------------------------------

실습 - parameter 값 변경



계정 :SYS 

데이터베이스 : OPEN

>show parameter undo_retention;

>memory값 변경(memory) 후 

v$parameter(메모리/동적성능테이블)조회


>spparameter 조회 

값이 조회 되지 않았지만 VALUE = 900



이번엔 spfile값을 변경

shutdown immediate - > open 상태 

spfile의 값을 변경


메모리의 설정값은 변경되지않는다.


spfile의 parameter 값은 변경되어있다.



반응형
300x250

명령어

>SELECT NAME, VALUE FROM V$PARAMETER;

-Parameter 이름과 설정된 값을 확인.


>SHOW PARAMETER<parameter 명>

-설정된 parameter 값을 확인 한다.


DBA

 파라메타 조회



반응형

+ Recent posts