본문 바로가기

전체 글

오라클 에러 정보 (ORA-01950) - no privileges on tablespace 'USERS' Oracle DB 내에서 CTAS(Create Table As Select) 로 테이블을 생성하거나 Insert 하려고 할때 ORA-01950 에러를 만나는 경우가 있습니다. 데이터를 기록하려고 하는 테이블스페이스(Tablespace)에 권한(privilege)이 없어서 발생하는 에러입니다. 따라서, 해결방법은 간단히 권한을 주면 끝입니다. alter user SCOTT quota 50M on USERS; 위는 scott 유저에게 USERS 테이블스페이스를 50MB 사용할 수 있도록 권한을 주는 것입니다. scott 유저에게 모든 테이블스페이스에 대한 무제한 사용권한을 주고자 하는 경우에는 아래처럼 합니다. grant unlimited tablespace to SCOTT; 예전 Old 버전의 Oracle.. 더보기
Woman up! (여장부처럼 해!), Man up! (대장부처럼 해!) - 힘내! Woman up. 여장부처럼 해. Man up. 남자 대장부처럼 해. 둘다 쫄지말고, 겁먹지 말고 용기를 내어서 자신있게 하라는 얘기~~ Don't be pussy. 정도의 의미. 남자한테는 man up 을 쓰고, 여자한테는 woman up 을 쓰는게 맞겠죠~ 하지만, 웃음을 주기 위해서 반대로 쓰기도 합니다.^^ 영화 빅히어로(Big Hero 6) 에서 이런식으로 사용됩니다. 남자주인공 "히로"한테 "Stop whining. Woman up." 고만징징대고. 여장부처럼 해. 이라고 말합니다. ㅋㅋ 예문)) A : What am I gonna do? I'm pregnant and my boyfriend left me as soon as he found out. A : 나 어떡해? 나 임신했는데, 남자친구.. 더보기
Oracle 19c 에서 멀티테넌트 DB 생성 (Create Multitenant Database) 오라클 멀티테넌트 기능에 대한 기본적인 설명은 여기를 참조하세요. => >> 오라클 멀티테넌트 DB 기본개념 정리 더보기
멀티테넌트 DB(CDB) 내의 PDB 에서 변경할 수 있는 DB 초기화 파라메타 Oracle Multi-Tenant DB 에서 CDB 내에 있는 PDB 들의 시스템 자원 사용량을 제한하기 위해서 지정가능한 DB 파라메타들은 다음과 같은 것들이 있습니다. > * CPU_COUNT * CPU_MIN_COUNT PDB 들의 CPU 사용량(최대 CPU Thread 갯수)을 제한합니다. Core당 2 Thread 인 8 Core CPU 장비라면 총 사용가능한 CPU Thread 는 16 입니다. 만약 특정 PDB에서 CPU_COUNT 를 4 로 지정했다면 4 Thread 이상은 사용하지 못하게 제한을 거는 겁니다. > * DB_CACHE_SIZE * SHARED_POOL_SIZE * SGA_MIN_SIZE * SGA_TARGET * PGA_AGGREGATE_LIMIT * PGA_AGGREGA.. 더보기
멀티테넌트 DB(CDB) 내의 PDB 들간의 시스템 자원(CPU, Memory, Disk IO) 경합 Oracle Multi-Tenant DB 에서는 CDB(Container DB) 안에 여러 PDB(Pluggable DB) 들이 시스템 자원(CPU, Memory, Disk I/O 등)을 공유하고 있습니다. 만약 특정 PDB가 지나치게 자원을 많이 사용함으로써 다른 PDB 들에게 영향을 주는 경우에 대한 대책이 있어야 합니다. 미꾸라지 한마리가 물을 흐리는 형국이 PDB들간에서도 발생할 수 있기 때문이죠. 오라클DB에서는 이런식으로 한집안에 있는 DB 인스턴스들끼리의 자원경합을 방지하기 위해 다음과 같이 2가지 기능을 제공합니다. 1) Resource Manager 를 통한 자원 배분 2) PDB 레벨에서 지정가능한 Init Parameter Resource Manager 는 Multi-Tenant 기능.. 더보기
오라클 멀티테넌트 DB 기본개념 정리 (Oracle Multi-Tenant DB Basics) 오라클 MultiTenant 기능은 Oracle 12c 버전에서 처음 소개되었습니다. 현재는 Oracle DBMS 버전이 18c, 19c, 20c 까지 나온 상태라 이 기능도 꽤 연륜이 쌓였다고 할 수 있겠습니다. 개념은 그닥 복잡하지 않습니다. "DB 안에 여러 DB들이 들어가 있는 구조" 입니다. ^^ Multi-Tenant 라는 단어에서 Multi 는 "여러개" 의 뜻이고, Tenant 는 "세입자" 라는 뜻입니다. 여러 세입자(DB)가 큰 집에 옹기종기 모여산다는 개념^^ 되겄심다. 클라우드(Cloud)에 대해서 공부 좀 하신 분들은 쉽게 이해가 가는 구조입니다. 원래 클라우드라는 게 여러 서비스/업무/플랫폼 등을 사용자는 모르게, 한곳(데이터센터?)에 잘 담아서 서비스 하는 개념입니다. (너무 .. 더보기
오라클 에러 정보 (ORA-65096) - 공통 사용자 또는 롤 이름이 부적합합니다. Oracle 멀티테넌트DB (Multi-Tenant DB) 에서 DB 유저를 만들려고 하면 아래와 같이 ORA-65096 에러를 만나는 경우가 있습니다. 영어로는 아래와 같이 "Invalid common user or role name" 이라고 나오고, 한글로는 "공통 사용자 또는 롤 이름이 부적합합니다." 라고 나옵니다. 멀티테넌트 DB 에서 그냥 "sqlplus / as sysdba" 와 같이 기존처럼 접속하면 CDB(Container DB)로 접속하게 됩니다. 이 CDB는 여러개의 PDB(Pluggable DB)들을 담고 있는 그릇(Container)입니다. 따라서 사용자 계정은 PDB 안에서 만들어야 합니다. PDB로 접속할때는 tnsname 을 미리 만들고 그것을 사용해서 접속하는 방법이 있고,.. 더보기
(신박한 영어표현) I don't give a rat's ass(butt). 뜻, 의미 I don't give a rat's ass. 쥐꼬리만큼도 신경 안써. 그닥 신경쓰지 않는다. = I don't give a rat's butt. = I don't care. = I don't give a shit. 보통은 "그닥 신경쓰지 않는다"는 표현을 할때, I don't care too much. 정도로 하면 될 것을 굳이 이렇게 쓰는 이유는 그게 좀 더 말하는 재미도 있고, 좀더 강조하는 효과도 있어서 쓴다고 합니다. 하지만, 격식이 필요한 경우에는 쓰지 않고 주로 친한 경우에 사용합니다. 약간 rude 한 일종한 Slang 이니까요~~ 이런 표현이 생겨난 이유를 누가 설명해 놨는데, 정말 그런지는 확실하지 않지만 ... 고양이가 쥐를 잡아먹을때 꼬리부분은 안먹고 남겨둔다고 합니다.(정말??) .. 더보기