php教程 PHP开发 사용자 및 테이블스페이스를 삭제하는 Oracle에 대한 자세한 소개

사용자 및 테이블스페이스를 삭제하는 Oracle에 대한 자세한 소개

Jan 06, 2017 am 11:37 AM

Oracle은 사용자 및 테이블스페이스를 삭제합니다

Oracle은 오랫동안 사용되었으며 많은 새로운 사용자 및 테이블스페이스가 추가되었습니다.

단일 사용자 및 테이블스페이스의 경우 다음 명령을 사용하여 완료할 수 있습니다.

1단계: 사용자 삭제

drop user ×× cascade
로그인 후 복사

참고: 사용자를 삭제하면 사용자 아래의 스키마 개체만 삭제되고 해당 테이블스페이스는 삭제되지 않습니다.

2단계: 테이블스페이스 삭제

DROP TABLESPACE tablespace_name INCLUDING CONTENTS AND DATAFILES;
로그인 후 복사
로그인 후 복사

단, 개발환경용 DB이기 때문에 정리해야 할 사용자 및 테이블스페이스가 많다.

아이디어:

모든 사용자와 테이블스페이스를 DB로 내보내고, 시스템과 유용한 테이블스페이스를 필터링하고, 유용한 정보를 테이블에 로드합니다. 그런 다음 유용한 테이블에 없는 테이블스페이스를 삭제하는 루틴 루프를 작성합니다.

1. dba_users에서 username,default_tablespace를 선택합니다.

2. >

3.
create table MTUSEFULSPACE
(
  ID Number(4) NOT NULL PRIMARY KEY,
  USERNAME varchar2(30),
  TABLESPACENAME varchar2(60),
  OWNERNAME varchar2(30)
);
로그인 후 복사

declare icount number(2);
    tempspace varchar2(60);
begin
 for curTable in (select username as allusr,default_tablespace as alltblspace from dba_users)
 loop
 tempspace :=curTable.alltblspace;
 dbms_output.put_line(tempspace);
 select count(TABLESPACENAME) into icount from MTUSEFULSPACE where TABLESPACENAME = tempspace;
 if icount=0 then
  DROP TABLESPACE tempspace INCLUDING CONTENTS AND DATAFILES;
 end if;
 commit;
 end loop;
end;
로그인 후 복사


실행 후 아래와 같은 오류가 발생합니다.

ORA-06550: 第 10 行, 第 5 列:
PLS-00103: 出现符号 "DROP"在需要下列之一时:
 begin case declare exit
  for goto if loop mod null pragma raise return select update
  while with <an identifier>
  <a double-quoted delimited-identifier> <a bind variable> <<
  close current delete fetch lock insert open rollback
  savepoint set sql execute commit forall merge pipe
06550. 00000 - "line %s, column %s:\n%s"
*Cause:  Usually a PL/SQL compilation error.
*Action:
로그인 후 복사


잠긴 것 같아요. .

방법이 없습니다. 루틴을 작성할 수 없기 때문에 명령문을 작성하고 실행만 하면 됩니다.


삭제해야 할 사용자 및 테이블스페이스를 Excel로 내보냅니다. CONCATENATE를 사용하여 SQL을 그룹화합니다.


일괄 실행을 위해 SQLdevelop에 게시합니다.

전체 삭제에는 사용자가 100명 이상인 경우 약 12시간이 소요됩니다.

데이터파일의 특정 위치를 알고 싶다면

select t1.name,t2.name from v$tablespace t1, v$datafile t2 where t1.ts# = t2.ts#;
로그인 후 복사


SQL 코드

<를 사용하면 됩니다. 🎜>

--빈 테이블 공간을 삭제하지만 실제 파일은 포함하지 않음

drop tablespace tablespace_name;
로그인 후 복사

--비어 있지 않은 테이블 공간 삭제 , 그러나 물리적 파일은 포함하지 않음 파일

drop tablespace tablespace_name including contents;
로그인 후 복사

--물리적 파일을 포함한 빈 테이블스페이스 삭제

drop tablespace tablespace_name including datafiles;
로그인 후 복사

--물리적 파일을 포함하여 비어 있지 않은 테이블스페이스를 삭제합니다.

DROP TABLESPACE tablespace_name INCLUDING CONTENTS AND DATAFILES;
로그인 후 복사
로그인 후 복사

--다른 테이블스페이스의 경우 테이블에 이 테이블스페이스의 테이블 필드와 관련된 외래 키 및 기타 제약 조건이 있는 경우 CASCADE CONSTRAINTS

를 추가해야 합니다. 읽어 주셔서 감사합니다. 모두 도와주세요. 이 사이트를 지원해 주셔서 감사합니다!

drop tablespace tablespace_name including contents and datafiles CASCADE CONSTRAINTS;
로그인 후 복사
사용자 및 테이블스페이스 삭제에 대한 자세한 Oracle 관련 기사를 보려면 PHP 중국어 웹사이트를 주목하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25 : Myrise에서 모든 것을 잠금 해제하는 방법
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)