IT 21

ORACLE 서버 구조 - 개요(인스턴스, 데이터베이스)

- INTRO ORACLE 서버는 기본적으로 동시에 여러 사람이 쓰는 환경이다(여러 트랜잭션이 동시에 수행된다). 여러 사람들이 쓰다보면 속도에 굉장히 민감하게 되는데 빠른 DB 처리 환경을 위하여 메모리를 이용한다. 여기서 잠깐! 메모리 환경의 장점과 단점을 살펴보면 장점: 처리속도가 매우 빠르다, 단점: 휘발성 장치이기때문에 손실의 위험이 있다. 이런 문제점을 커버하기 위하여 데이터의 안정성을 보장해 주는 스토리지라는 저장영역을 쓰게 된다. 종합해보면 오라클은 모든 데이터를 기본적으로 안전한 스토리지에 보관하고 있다가 요청이 들어오면 데이터를 메모리로 올려서 처리하는 구조를 가지고 있고. 스토리지와 메모리를 연결시켜 주는 여러 가지 프로세스들이 존재한다. - 인스턴스와 데이터베이스 오라클 서버는 크게..

IT/ORACLE 2023.06.24

[파이썬 기초] 반복문 - for 기본 문법 및 range, enumerate 함수

프로그래밍을 할때 특정 코드를 반복하여 작성해야될 때가 있다. 예를들어 1부터 100까지의 숫자를 연속으로 프린트해야 할 경우 print("1"), print("2"), print("3") 이렇게 100까지 연속으로 작성하여도 무방하지만 매우 시간 비효율적이다. 이렇게 특정된 작업을 반복하는 코드를 작성해야 할때 반복문을 사용하면 매우 간편하게 코드를 작성 할 수 있다. 파이썬의 반복문에는 for문과 while문이 있고 먼저 for문에 대하여 알아 보도록 하겠다. | for 문 기본 문법 다양한 예시 함께 쓰이는 함수 1) range - for 문과 range 2) enumerate list의 index값을 같이 보고 싶을때 사용된다. 결과값이 tuple 의 형식으로 반환됨 예시) 추가 한줄로 끝내는 f..

IT/파이썬 기초 2023.06.21

파이썬 조건문 if 기초 및 사용법 정리

코드를 작성할 때 특정 조건을 만족하면 해당 조건에 해당하는 구문이 실행될 수 있도록 해주는 문법을 if문이라고 한다. 예를 들어, 여름 휴가를 계획한다고 가정해 보자. 회사에서 여름휴가가 5일 이내로 주어지면 주말을 더해 동남아 여행을 갈 수 있을 것이다. 또한, 5일 이상 주어진다면 주말을 양쪽으로 더해 미국, 유럽 등 여러 나라를 갈 수 있을 것이다. 하지만 여름휴가가 2일 이내로 주어지거나 주어지지 않는다면 국내여행 혹은 슬프겠지만 휴가를 못 갈 수도 있다. 이와 같이 상황별 수행해야 할 행동들이 다를 때 if 문을 통하여 구현할 수 있다. 먼저 기본 문법은 다음과 같다. if와 elif 조건에 맞을 경우 해당 코드가 수행된다. 하지만 if와 elif의 조건 둘 중 어느 곳에도 속하지 않는다면 e..

IT/파이썬 기초 2023.06.21

FLASHBACK 소개 및 절차(ORACLE 데이터 복구)

개발자의 부주의 OR 기타 요인에 의하여 테이블 혹은 테이블의 데이터등이 날아가 버릴수 있다. 이경우 복구를 위하여 복잡한 과정을 하는 대신에 명령어 몇개로 파일을 복구할수 있는 기능인 FLASHBACK 기능에 대하여 소개하려한다. 1. 기능 소개 FLASHBACK 기능이란 UNDO TABLESPACE에 보관중인 변경 이전의 데이터를 기반으로 특정 시점으로 고속도의 복원을 하는것을 의미한다.(윈도우를 특정시점으로 맞추는것과 같은 개념) 2. 사용 요구 조건 FLASHBACK을 사용하기 위한 요구조건 1. 자동 언두 관리 시스템을 사용해야 함. UNDO_MANAGEMNET = AUTO 2. UNDO_RETENTION 파라미터를 설정 : 이전의 어느 시점까지의 언두(UNDO)정보를 보유하여 Flashback..

IT/ORACLE 2023.06.17

파이썬 자료형 tuple, set

1. tuple - 정의 : 여러개의 자료들을 하나의 변수들에 저장할 때 사용되는 자료형 BUT, list와 다른점은 한번 저장된 값은 수정, 삭제, 추가가 안된다. 즉, 변경되지 않는 list라고 생각하면 됨, 리스트 보다 속도가 빠름 - 예제 : tuple = ("삼성", "한화", "엘지"), tuple[0] --> 삼성, 만약 tuple.add 이런식으로 변경하려고 하면 에러 발생 2. set - 정의 : 집합으로 표현할 수 있는 데이터를 쉽게 처리하기 위한 자료형, 중복이 안되고 순서가 없다. - 예제 : month = {1,2,3,4,5,6,7,8,9,10,11,12} 만약 month = {1,2,3,4,5,6,7,8,9,10,11,12,12,12,12}로 되어있어도 print(month)하면..

IT/파이썬 기초 2023.06.16

파이썬 자료형 list, dictionary

1. LIST - 정의 : 여러개의 자료들을 하나의 변수들에 저장할 때 사용되는 자료형(다른 타입의 자료형도 저장 가능) - 예제 : list = [1 , 2 , 3 ] , list = [1, "파이썬", 2] - 관련 함수들 1) index 정보 출력: list("파이썬") #1출력 됨 2) 값 추가 : list.append("JAVA") 3) 값 꺼냄 : list.pop() # 맨 마지막 index에 있는 값이 꺼내짐 4) 같은 값이 몇개인지 : list.count("파이썬 ") # 1출력 5) 정렬 함수 : list.sort() # list[2,1,3] --> list[1,2,3] 으로 바뀜 , list.reverse() #list[1,2,3,] --> list[3,2,1] 6) 모두 지우기 : l..

IT/파이썬 기초 2023.06.16

파이썬 기초_ 문자열 관련 함수

1. 문자열 슬라이스 - 대괄호 안의 숫자를 입력하여 문자열을 슬라이스 할 수 있음 [a:b] a--> 슬라이스 시작점, b --> 슬라이스 끝 ※ 주의 1) 가장 처음의 시작은 1이 아니라 0임! 2) b -1 까지 슬라이싱 된다 예제) site = “http://naver.com” 여기서 문자열 h는 0, t는 1, 두번째 t는 2, p는 3, :는 4가 된다. http: a를 b로 치환 site.replace(“http://“, “”) --> http:// 를 빈문자열로 치환 3. FIND 함수 위치의 인덱스를 알려줌 site = “http://naver.com” site.find(“n”) —> 위치 인덱스 찾아줌 print(site.find("n")) # 결과값 : 7 4. COUNT 함수 해당 ..

IT/파이썬 기초 2023.06.15

오라클 테이블 lock 현상 해결 방안(SESSION KILL)

- ORACLE 11g 기준 1. oracle 접속 및 Lock 걸린 Table 조회 1) lock 걸린 oracle user명을 알 경우 select * from v$locked_object where oracle_username = 'oracle user name'; 2) lock 걸린 oracle user명을 모를 경우 SELECT DISTINCT X.SESSION_ID, A.SERIAL#, D.OBJECT_NAME, A.MACHINE, A.TERMINAL, A.PROGRAM, B.ADDRESS, B.PIECE, B.SQL_TEXT FROM V$LOCKED_OBJECT X, V$SESSION A, V$SQLTEXT B, DBA_OBJECTS D WHERE X.SESSION_ID = A.SID AND..

IT/ORACLE 2023.06.15

Session Clustering 관련글

Session Clustering관련 이해가 잘되는 블로그 글이 있길래 퍼왔습니다. 세션 클러스터링은 이미 잘 알겠지만 WAS 서버 단에서 클라이언트의 연결 정보나 상태를 가지고 있는 객체(object)다. 인터넷 쇼핑몰 등에서 자주 볼 수 있는 장바구니를 생각하면 이해하기 편한데, 한번 로그인하면 장바구니에 상품을 넣어두었다가 브라우저를 닫고 다시 접속해도 장바구니 페이지를 보면 장바구니가 비어 있지 않고 내가 주문한 상품들을 장바구니에서 계속 확인할 수 있다. 이것이 바로 세션 클러스터링을 이용한 것이다.즉, 세션 클러스터링은 클라이언트가 접속하면 클라이언트 정보를 서버에 있는 세션 클러스터링 객체에 저장해 두고 똑같은 클라이언트가 접속하면 해당 세션 클러스터링을 계속 사용할 수 있게 해서 상태가 저..

IT/기타 2016.06.28

ORACLE DATA LINK 이론 및 생성, Table에 유저 권한 주기

업무를 하는데 있어 현재 관리하고 있는 DB에서 다른 DB의 정보를 필요로 할때가 있다. 이경우 쉽게 다른 DB의 TABLE을 DUMP 받아 새로 현재의 DB에 넣으면 되겠지? 라고 생각할수도 있겠지만 Synchronization의 측면에서 본다면 sync가 맞지 않게되어 생각과 다른 결과가 나올수도 있다. 이와 같은 경우에 다른쪽 DB에서 운영되는 테이블의 정보를 실시간적으로 보기 위해서는 크게 2가지가 있다. 1. 해당 Table에 접근권한을 주는 경우 - 이와같은 경우는 전제 조건이 있다. 전제 조건: 접근하려는 DB가 현재의 DB와 같은 Instance에 존재해야 한다. 적용 방법: 1) 접근할 DB 계정으로 접근 2) GRANT SELECT ON 권한을줄테이블명 TO 권한을 받을 사용자 계정; ..

IT/ORACLE 2016.06.23