약 100000건정도의 데이터를 오라클로 집어넣는 마이그레이션프로그램을 만들었는데
잘 들어가다가 어느정도까지만 들어가고 테이블스페이스의 부족으로 더이상 들어가지
않습니다
현재 테이블스페이스는 system으로 되어있습니다
아래는 테이블을 만든 스크립트입니다
CREATE TABLE TBL (
SEQ NUMBER(22) NOT NULL,
MAILSERVICE CHAR(1),
PRIMARY KEY ( SEQ )
)
TABLESPACE SYSTEM
PCTFREE 10
PCTUSED 40
INITRANS 1
MAXTRANS 255
STORAGE (INITIAL 10240
NEXT 55928832
MINEXTENTS 1
MAXEXTENTS 121
PCTINCREASE 50
FREELISTS 1
FREELIST GROUPS 1);
테이블스페이스를 늘릴려면 어떻게 해야하나요
다시 테이블을 만들어도 상관이 없습니다. 좋은 방법좀 부탁합니다(오라클버젼 8.0.5)
매우 급합니다
> 약 100000건정도의 데이터를 오라클로 집어넣는 마이그레이션프로그램을 만들었는데
> 잘 들어가다가 어느정도까지만 들어가고 테이블스페이스의 부족으로 더이상 들어가지
> 않습니다
> 현재 테이블스페이스는 system으로 되어있습니다
> 아래는 테이블을 만든 스크립트입니다
> CREATE TABLE TBL (
> SEQ NUMBER(22) NOT NULL,
> MAILSERVICE CHAR(1),
> PRIMARY KEY ( SEQ )
> )
> TABLESPACE SYSTEM
> PCTFREE 10
> PCTUSED 40
> INITRANS 1
> MAXTRANS 255
> STORAGE (INITIAL 10240
> NEXT 55928832
> MINEXTENTS 1
> MAXEXTENTS 121
> PCTINCREASE 50
> FREELISTS 1
> FREELIST GROUPS 1);
>
> 테이블스페이스를 늘릴려면 어떻게 해야하나요
> 다시 테이블을 만들어도 상관이 없습니다. 좋은 방법좀 부탁합니다(오라클버젼 8.0.5)
> 매우 급합니다
>
가장 간단한 방법은 db에 공간의 여유가 있다면 먼저 tbl 테이블을 백업을 받고
다시 테이블을 만드는것입니다. 다시 만들때에는 이 테이블에 레코드 증가 많다면
next 를 처음 만들때에와 같이 만약 50M 가 였다면 next 도 50M가 로 주세요..
왜냐하면 Next 를 조금씩 주면 테이블에 변화가 자주 생길경우 속도가 느려질 가능성이 있습니다..
그리고 간단한 백업은 이렇게 하세요..
Create table k_tbl as (select * from tbl);
하시구요
다시 만든 테이블에 insert 하세요..
혹시 예로..
insert into tbl (select * from k_tbl);
답변이 제대로 되었지 모르겠습니다...