본문 바로가기
반응형

4. Database40

[ MySql ] 스키마 생성하기, 계정 생성 하기(with MySql Workbench) [ MySql ] 스키마 생성하기, 계정 생성 하기(with MySql Workbench) 안녕하세요. 갓대희 입니다. 이번 포스팅은 [ MySql Workbench로 스키마 및 계정 생성하기] 입니다. : ) 1. WorkBench로 스키마(데이터 베이스) 생성하기 1. Workbench를 통해 root 권한으로 접속 한다. - 하기 이미지와 같이 "Create a new schema in the connected server" 클릭 한다. - 스키마(데이터베이스)이름을 입력한다. - Charset/Collation : 캐릭터셋은 나와 같은 경우는 일단 utf8, Collation은 Default Collation을 선택 하였다. - Apply 클릭. - 스키마 생성 쿼리를 확인할 수 있다. 해당 쿼리.. 2020. 11. 11.
[Oracle] 오라클 Lock(1) enq: TX - row lock contention [Oracle] 오라클 Lock(1) enq: TX - row lock contention 안녕하세요. 갓대희 입니다. 이번 포스팅은 [ [Oracle] Lock 첫번째 TX - row lock contention ] 입니다. : ) - 오라클 모니터링을 하다보면 Active 세션 중 다음과 같은 락발생 현황을 종종 볼 수 있다. 이와 관련된 내용을 알아 보도록 하자. 0.Oracle Lock - 사실 오라클 락은 매우 다양한 종류가 있지만, 이번엔 간단히 자주 볼수있는 Lock의 종류중 하나인 TX Lock에 대해 알아 보려 한다. TX Lock과 관련된 내용을 천천히 알아보자. 1) Enqueue Lock - 테이블, 트랜젝션, 테이블스페이스, 시퀀스, Temp 세그먼트 등의 공유 리소스에 대한 액세.. 2020. 8. 31.
[Oracle] ORA-01031 : insufficient privileges [Oracle] ORA-01031 : insufficient privileges 안녕하세요. 갓대희 입니다. 이번 포스팅은 [ [Oracle] ORA-01031 : insufficient privileges ] 입니다. : ) 0.현상 ex) 윈도우환경에서 많은 분들이 직접 DB를 설치하여 사용하는 경우 비밀번호 만료 되었는데, 비밀번호를 잊어 버렸을때 라던지 등의 상황에 관리자 비밀번호를 초기화 하기위해 다음과 같은 방법으로 비밀번호 초기화 시도를 하게 된다. 일반적으로는 다음과 같이 비밀번호 초기화 시도를 한다. - Window키 + R (실행창) > cmd 입력 - sqlplus (sql plus 실행) - usename : sys as sysdba - password : 입력하지 않고 엔터 보통의.. 2020. 8. 19.
[Oracle] PL/SQL 기초9 - 예외처리(Exception) [Oracle] PL/SQL 기초9 - 예외처리(Exception) 안녕하세요. 갓대희 입니다. 이번 포스팅은 [ [Oracle] PL/SQL 기초 - 예외처리(Exception) ] 입니다. : ) 0.Oracle PL/SQL 예외 처리 (Exception Handling) 1) 컴파일 에러(Compilation Error) - PL/SQL 블록을 Parsing, 컴파일 하는동안 문법적인 오류로 발생 하는 동안 발생하는 에러 2) 런타임 에러 (Run-Time Error) - PL/SQL 블록을 실행하는 도중 발생하는 에러, 이를 Exception이라고 한다. - 즉 오라클에서는 런타임 에러를 예외(Exception)라고 부른다. 이 예외 처리에 대해 오늘은 정리해 보려고 한다. - 일반적인 SQL에서.. 2020. 8. 2.
[Oracle] PL/SQL 기초8 - 레코드(RECORD) [Oracle] PL/SQL 기초8 - 레코드(RECORD) 안녕하세요. 갓대희 입니다. 이번 포스팅은 [ [Oracle] PL/SQL 기초 - 레코드(Record) ] 입니다. : ) 혹시 이해가 안되는 내용이 많을 수 있으니, 하단의 예제부터 보는것도 추천 한다. 0.Oracle Record ▶ 0. 레코드(Record)란? - PL/SQL에서 제공하는 테이블 형태의 데이터 타입 이다. - 여러개의 데이터 타입을 갖는 변수들의 집합.(일반 빌트인 타입으로 변수 선언시 1개의 값만 가질 수 있다.) - 논리적 단위로서 필드 집합을 처리할 수 있도록 해준다. - 스칼라(%type/%rowtype), RECORD, 또는 PL/SQL TABLE datatype 중 하나 이상의 요소로 구성 - PL/SQL 테.. 2020. 7. 25.
[Oracle] PL/SQL 기초7 - 컬렉션(Collection) : VARRAY, Nested Table, 연관 배열, 메소드 등 [Oracle] PL/SQL 기초7 - 컬렉션(Collection) : VARRAY, Nested Table, 연관 배열, 메소드 등 안녕하세요. 갓대희 입니다. 이번 포스팅은 [ [Oracle] PL/SQL 기초 - 컬렉션(Collection) ] 입니다. : ) 혹시 이해가 안되는 내용이 많을 수 있으니, 하단의 예제부터 보는것도 추천 한다. 0.Oracle Collection ▶ 0. 컬렉션(Collection)이란? - 배열 형태의 데이터 타입 - 같은 데이터 타입을 가진 요소들로 구성 된다. - 다양한 데이터 타입을 가질 수 있는 동시에, 여러 로우에 해당하는 데이터를 가질 수 있는 자료형 - 생성자를 이용해 초기화가 가능 하다. - 빌트인 함수와 프로시저로 구성된 컬렉션 메소드를 제공 한다. .. 2020. 7. 25.
[Oracle] PL/SQL 기초6 - 함수(Function) 두번째 : 테이블 함수(Table Function, Pipeline Table Function) [Oracle] PL/SQL 기초6 - 함수(Function) 두번째 : 테이블 함수(Table Function, Pipeline Table Function) 안녕하세요. 갓대희 입니다. 이번 포스팅은 [ [Oracle] PL/SQL 기초 - 함수(2) - 테이블 함수 ] 입니다. : ) 0.Oracle Table Function ▶ 1. Table 함수란? - 여러 로우를 가진 컬렉션을 반환하는 함수 (컬렉션 타입을 반환하는데, 연관 배열은 반환하지 못하고, 중첩 테이블이나 VARRAY만 반환 가능하다.) - 기본 함수는 하나의 값만 반환이 가능하지만 테이블 함수로는 여러 행, 열의 반환이 가능 하다. (Oracle Table Function은 Multi column + Multi Row로 값을 Ret.. 2020. 7. 24.
[Oracle] PL/SQL 기초5 - 함수(Function) 첫번째 : 사용자 정의 함수(User Defined Function) [Oracle] PL/SQL 기초5 - 함수(Function) 첫번째 : 사용자 정의 함수(User Defined Function) 안녕하세요. 갓대희 입니다. 이번 포스팅은 [ [Oracle] PL/SQL 기초 - 함수(1) - 사용자 정의 함수 ] 입니다. : ) 0.Oracle Function ▶ 1. 함수(Function)란? - 이번에 설명하는 함수는 오라클에서 제공하는 내장함수(TO_CHAR, TO_DATE 등)가 아닌 사용자 정의 함수((User Defined Function)이다. - 특정 기능들을 모듈화, 재사용 할 수 있어서 복잡한 쿼리문을 간결하게 만들수 있다. 하지만, 함수 사용이 쿼리 속도를 느리게 만드는 원인(인덱스를 타지 않는 등)이 될 수 있으니 꼭 필요한 경우가 아니라면 권.. 2020. 7. 12.
[Oracle] 핸드폰번호 마스킹(휴대폰번호 마스킹) [Oracle] 핸드폰번호 마스킹(휴대폰번호 마스킹) 하기 안녕하세요. 갓대희 입니다. 이번 포스팅은 [ 정규식을 활용하여 핸드폰 번호 마스킹 처리하기 ] 입니다. : ) 0. 들어가기 앞서 개인정보와 관련하여 마스킹 처리할 일이 많이 있을 것이다. 이 마스킹은 대부분 싸이트에서는 공통으로 만든 Util을 통해 처리하지 않을까 싶지만 그래도 오늘은 오라클에서 마스킹 처리를 해보려 한다. Javscript로 마스킹 하기 참고 2020/04/01 - [3. 웹개발/3_2_2 Javascript Function 모음] - [JavaScript ] 개인정보 마스킹 함수(이름 마스킹, 이메일 마스킹, 휴대폰 번호 마스킹, 주민번호 마스킹) ▶ 1. 휴대폰 번호 마스킹 하기 여러가지 상황에 따라 활용할 수 있도록 .. 2020. 6. 16.
[Oracle] Oracle 달력 만들기 및 날짜 쿼리 활용하기 [Oracle] oracle 달력 만들기 및 날짜 쿼리 활용하기 안녕하세요. 갓대희 입니다. 이번 포스팅은 [ 오라클 쿼리로 날짜 만들기 ] 입니다. : ) 0. 달력을 만들기 앞서 가끔 오라클을 통해 달력을 만들어 활용해야하는 경우가 있다. 오라클 쿼리로 달력을 만들면서, 이때 사용한 쿼리와 관련된 날짜와 관련된 함수들도 알아볼 예정이다. ▶ 1. 해당월의 첫날 부터 마지막 일까지 가져오기 SELECT TO_CHAR (FIRST_DAY + LEVEL - 1, 'D') DAYS -- 요일(숫자) , TO_CHAR (FIRST_DAY + LEVEL - 1, 'MM-DD') TODAY -- 해당일자 , TO_CHAR (FIRST_DAY + LEVEL - 1, 'YYYYMMDD') TODAY_STR -- 해당.. 2020. 4. 15.
[Oracle] 전역 임시 테이블 (Global Temporary Table) [Oracle] 전역 임시 테이블 (Global Temporary Table) 안녕하세요. 갓대희 입니다. 이번 포스팅은 [ 오라클 임시 테이블 ] 입니다. : ) 전역 임시 테이블 (Global Temporary TABLE) [정의 및 특징] - SESSION(또는 TRANSACTION) 레벨의 임시 데이터를 저장하는 용도 (오라클의 실행 계획을 저장하기 위한 Plan 테이블이 전역 임시 테이블의 대표적인 사례) - SESSION(또는 TRANSACTION) 레벨의 임시 데이타 저장하기 때문에 RAC 시스템에서 글로벌 동기화 불필요 - DML LOCK 필요없음 (세션 DATA 간 경합이 발생하지 않기 때문) - REDO LOG 발생 안함 (임시 DATA 이므로 DML문이라도 redo log 발생 하지 .. 2019. 12. 17.
[Oracle] ORA-06533: 첨자가 개수를 넘었습니다. ORA-06533: 첨자가 개수를 넘었습니다. ORA-06533: Subscript Beyond Count error 1. 현상 - 오류 모니터링 중 확인 되었고, 오라클 패키지 내 배열 사용 시 크기가 넘어가는 경우 발생하는 오류 였다. 2. 원인 분석 - PL/SQL 에서의 테이블은 오라클 SQL에서의 테이블과는 다르다. PL/SQL에서의 테이블은 일종의 일차원 배열이라고 생각하면 이해하기 쉬울것이다. 테이블은 크기에 제한이 없으면 그 ROW의 수는 데이터가 들어옴에 따라 자동 증가 한다. EX) 오류 발생 예제 DECLARE -- 중첩 테이블 선언 -- ex) CREATE OR REPLACE TYPE 타입명 IS TABLE OF 값타입; TYPE TABLE_1 IS TABLE OF VARCHAR2(.. 2019. 6. 22.
[Oracle] ORA-31061: XDB 오류: special char to escaped char conversion failed. [Oracle] ORA-31061: XDB 오류: special char to escaped char conversion failed. 1. 현상 여러 행의 데이터를 특정 구분자를 넣거나, 넣지 않고 한줄로 표현할 때 다음과 같은 함수들을 사용 하게 된다. LISTAGG, WM_CONCAT, XMLAGG, XMLELEMENT 등등 참고) 오라클 피벗 - https://goddaehee.tistory.com/57 오라클 상품 상세 테이블의 HTML 컨텐츠 컬럼이 CLOB으로 설계 되어있지 않고, VARCHAR2로 설계되어 있어 위 XMLAGG, XMLELEMENT 를 이용하여 한 ROW로 조회하고 싶을 때, XML로 변환할 수 업는 문자열이 포함도어있어서 XDB 오류가 발생 하였다. 2. 원인 분석 SEL.. 2019. 6. 22.
[Oracle] PL/SQL 기초4 - 프로시저(Procedure) [Oracle] PL/SQL 기초4 - 프로시저 (Procedure) 안녕하세요. 갓대희 입니다. 이번 포스팅은 [ Stored Procedure ] 입니다. : ) 저장 프로시저 (STORED PROCEDURE) [정의] - Transact-SQL 문장의 집합 [용도] - 어떠한 동작을 절차적 일괄처리 작업하는데 사용 - SQL Server에서 사용하는 프로그래밍 기능 [특징] - SQL Server의 성능향상 (첫 실행시 컴파일, 재컴파일 안함) 오라클은 SQL 문 수행시 다음과 같은 행동을 한다. 1. 먼저 같은 실행 계획이 공유 풀에 있는지 확인한다. (공유풀은 다음 글에서 확인 - http://goddaehee.tistory.com/64) 2. 이후 SQL문 문법 검사나 DATA DICTIONA.. 2018. 12. 23.
[Oracle] Transaction이란? [Oracle] Transaction이란? 안녕하세요. 갓대희 입니다. 이번 포스팅은 [ [오라클] 트랜잭션 (Transactions) ] 입니다. : ) Transactions 우리가 흔히 간략하게 알고있는 트랜잭션에 관련 된 수준은 다음과 같다. 1. 하나의 논리적 작업 단위를 구성하는 하나 이상의 sql문 2. 트랜잭션의 효과를 데이터베이스에 확정 하기 → commit 3. 트랜잭션의 효과를 테이터베이스에 취소하기 → rollback ▶ 트랜잭션의 사용 이유?? - 사용자, 오라클 서버, 애플리케이션 개발자, DBA 등에게 데이터 일치성과 데이터 동시발생을 보장하기 위해 ▶ 1. 커밋 하기전 상태 1. 롤백 세그먼트 버퍼가 서버에 만들어 진다. 2. 트랜잭션의 소유자는 select문을 사용하여 트랜.. 2018. 11. 26.
반응형