모든것 썸네일형 리스트형 [DB][ORACLE][관리] Oracle의 휴지통 Flashback테이블 * Flashback테이블 : Oracle에서 Table을 Drop했을때 바로 삭제 되는 것이 아니라, Flashback테이블에 남게 된다. 이는 Oracle Flashback Technologies의 하나이다.* 10g부터 가능한것으로 보이며, 9i는 과거 시점부터 데이터는 볼수 있지만 테이블을 즉시 되살리수는 없다고 합니다.1. 삭제된 테이블 확인. show recyclebin; * 해당 명령을 실행 시키면, 삭제되기전의 테이블 명과 삭제후 변환된 테이블명을 모두 확인 가능하며, 언제 삭제되었는지도 확인이 가능하다. Object가 삭제되면 "BIN$"로 시작되는 임의의 명으로 변경이 된다. 2. 테이블 되살리기FLASHBACK TABLE [테이블명] TO BEFORE DROP; 3-1. 플래쉬백으로 .. 더보기 [OS][LINUX][관리]CPU와 메모리 확인. * 간혹 타 부서나 타 회사에서 서버의 사양을 요청하는 문서를 보낼때가 있다. 그럴때 CPU정보와 메모리 정보가 필요한데, 이것을 확인할때 사용하는 명령이다. 1. CPU확인 cat /proc/cpuinfo 2. 메모리 확인cat /proc/cpuinfo * 리눅스의 proc디렉토리란? 시스템의 여러 실시간 정보들이 디렉토리와 파일 형태로 저장되어 있다. 리눅스에서 proc와 dev는 가상 파일 시스템에서 위치하는 가상디렉토리로 실제 물리적인 디스크를 차지 하지는 않는다. * proc디렉토리에 보면은 이런 저런 별개 다있다. 심심할때 보면 좋으나, 공부 목적으로 보는것은 별로 비추다. 왜냐면 봐도 안쓰면 까먹으니깐 ^^;; 내가 맨날 까먹고 블러그에 남기듯이... 더보기 [DB][ORACLE][관리]계정(USER) 생성및 테이블 스페이스(table space) 생성하기 * 계정을 생성할때 보통 해당 테이블 스페이스와 datafile을 생성하여 관리하는 것이 보통이다. 하지만 매일 사용하는 것이 아니라 프로젝트 시작 단계나, 간혹 사용되는 명령이므로 잊어먹기 좋다. 그래서 따로 기록 해두는 것이 좋은 명령이다.1. 테이블 스페이스 생성 및 데이터파일 생성 CREATE TABLESPACE [테이블스페이스명]DATAFILE '[데이터 파일 경로 / 데이터 파일명.DBF]' SIZE 100M AUTOEXTEND ON; * 데이터 파일을 생성하기 전에 해당 시스템은 어떤 경로로 데이터 파일을 관리 되는지 확인 해보도록 하자.* 각 관리자 별로 마음대로 데이터 파일을 관리 하는경우가 있는데, 이것은 향후 유지관리 면에서 심각한 이슈가 될수 있다.2. 유저 생성. 상기 명령으 TA.. 더보기 [DB][ORACLE][SQL] 테이블 및 컬럼 코멘트 시스템을 관리하거나 개발을 하다보면 테이블을 만들고, 기억못하거나, 인수인계시 고생을 많이 한다. 그런경우 테이블에 또는 컬럼에 코멘트를 달아 놓으면, 누구나 쉽게 이해 할 수가 있다. 1. 테이블 코멘트 COMMENT ON TABLE [USER].[TABLE] IS '[코멘트 내용]'; 2. 컬럼 코멘트 COMMENT ON COLUMN [USER].[TABLE].[COLUMN] IS '[코멘트 내용]'; 1. 코멘트는 후차의 담당자나 개발자 또는 함께 일을 하는 동료들에게 베푸는 매너이다. 그러므로 꼭 지켜야 되는 것이다. 2. 코멘트 명령을 아는 것이 중요 한것이 아니다, 어떤 내용을 적느냐도 중요한데, 예를 들어 구분자로 쓰는 컬럼이라면, 해당값일때 어떤 의미인지, 시퀀스를 사용하는 컬럼이라면 해당.. 더보기 [DB][MYSQL][SQL]INSERT문과 UPDATE문을 한번에 기술하고 처리 하는 MERGE문 * 개발을 하다보면, 입력과 수정문을 동시에 번갈아 가면어 사용해야 될때가 있다. 이럴때 제시 되는 방법이다. * INSERT INTO ~ ON ~ KEY UPDATE INSERT INTO [테이블명] ([컬럼명], ... ) VALUES ([입력값], ... ) ON DUPLICATE KEY UPDATE [컬럼명] = [업데이트 값], ... ; * 오라클 또한 이와 비슷한 기능이 있다. => 2013/01/24 - [DB의 속삭임/SQL의 외침] - [DB][ORACLE][SQL]INSERT문과 UPDATE문을 한번에 기술하고 처리 하는 MERGE문 더보기 [DB][ORACLE][SQL]INSERT문과 UPDATE문을 한번에 기술하고 처리 하는 MERGE문 * 개발을 하다보면, 입력과 수정문을 동시에 번갈아 가면어 사용해야 될때가 있다. 이럴때 제시되는 방법이다. * MERGE INTO 문 MERGE INTO [테이블명] T1 USING ([SELECT QUERY]) T2 ON (JOIN 구문) WHEN MATCHED THEN --조회 값이 있다면, UPDATE SET T1.[컬럼명] = T2.[컬럼명], ... WHEN NOT MATCHED THEN --조회 값이 없다면, INSERT (T1.[컬럼명], ... ) VALUES (T2.[컬럼명], ... ); * MYSQL에도 이와 유사한 기능이 있다. => 2013/01/24 - [DB의 속삭임/SQL의 외침] - [DB][MYSQL][SQL]INSERT문과 UPDATE문을 한번에 기술하고 처리 하는 M.. 더보기 [DB][ORACLE][관리]계정 삭제 / 계정 세션 끊기 * 계정을 삭제할때, 해당 계정이 접속중이면 삭제가 제한된다. * 유저 삭제 DROP USER [삭제할 유저명] CASCADE; * 유저가 접속해 있으면 삭제가 제한된다. 이럴때는 유저의 접속을 강제로 끊어 줘야 된다. 1. 타겟이 될 유저의 SID와 SERIAL을 확인한다. SELECT SID,SERIAL# FROM V$SESSION WHERE USERNAME = '[타겟이 될 계정명]'; 2. 확인된 SID와 SERIAL로 삭제한다. ALTER SYSTEM KILL SESSION '[SID],[SERIAL]'; 더보기 [DB][ORACLE][관리][에러]ORA_28000_ the account is locked * 암호가 잘못 되었거나 계정에 락이 걸렸을때 생기는 에러 * 계정 상태 확인 방법 [SQL문]SELECT USERNAME, ACCOUNT_STATUS, TO_CHAR(LOCK_DATE,'YY/MM/DD HH24:MI') LOCK_DATE, PROFILE FROM DBA_USERSWHERE USERNAME = '[계정]'; * 계정 락 해제 ALTER USER [계정] ACCOUNT UNLOCK; 더보기 이전 1 ··· 5 6 7 8 다음