- 보통 SID와 alias를 같은 걸로 맞춘다. - 호스트란? 쉽게 말해서 인터넷에 접근 가능한 컴퓨터라고 생각하면 된다. 지금 사용하고 있는 컴퓨터도 호스트가 된다. 각각의 인터넷에 연결된 컴퓨터를 식별하는 것이 호스트 아이피(보통 아이피라고 함)이다. - 아이피는 컴퓨터를 식별하는 주소로 보면 되는데 아이피는 ~아파트라면 포트는 ~동 ~호의 개념이라고 생각! - 프로토콜은 통신규약이다. TCP 방식과 UDP방식으로 나뉜다. (속도는 UDP보다 느리지만 정확하게 데이터를 전송하는 TCP를 선택한다.) - SID 디비를 식별하는 DBNAME(한 호스트의 여러개의 DB를 생성 가능)
- 설정 확인 방법 * 시작 - 실행 - cmd - tnsping [SID] 를 실행하여 세팅이 잘 되었는지 확인한다. * Attempting to contact (ADDRESS=(PROTOCOL=TCP)(HOST=xxx.xxx.xxx.xxx)(PORT=1521)) OK (180 msec) 이런 문구가 나오면 성공 * tns접속의 경우 id/pw@SID
- jk를 위한 환경 설정에서 가장 중요한 부분은 아파치 웹 서버에서 저장하는 workers.properties이다.
- 이 환경 설정에서의 값들 하나 하나가 성능과 밀접한 연관을 가지게 된다.
- 로드 발란싱과 같은 기능도 여기서 적용된다.
(자세한 사항은 다른 페이지에서 설명)
6) 마지막 실행
- 톰캣을 먼저 실행하고 아파치 웹 서버를 나중에 실행시킨다.
- 아파치 - html 이미지 같은 정적인 테이터
- 톰캣 - jsp와 서블릿
- html 파일 , 이미지 파일, 자바스크립트 파일 css 파일 아파치/htdocs 디렉토리로 복사
2. 자카르타 톰캣 - JSP 및 Servlet을 해석하는 기능 및 페이지로 뿌려주는 서버 역할을 함.
- 서버상 기능이 아파치에 미치지 못함
- 파싱 기능도 JSP에 한정됨 -> 성능을 제대로 이끌기 위해서 아파치와 연동
[알게 된점]
1. 80포트로 설정된 웹 사이트는 어디서든지 접근이 가능하다.
2. 톰캣은 기본 포트 : 8080
3. 아파치 기본 포트 : 80 (생략 가능)
4. 아파치는 html, 이미지, vm, js 등등의 파일을 담당
5. 톰캣은 java, servlet, jsp 등등의 파일을 담당
6. 톰캣 만으로는 웹 서버의 역할을 하는데 무리가 있다.
7. 아파치 톰캣이 아니라 자카르타 톰캣이다.-_ -
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.
[개념] 트리거(trigger)란?
단어 뜻 그대로 "방아쇠" 입니다.
예전에 톰과 제리란 만화 아시죠?
톰이 제리를 괴롭히기 위해서 치츠를 얹어놓고 줄로 연결하여 사실은 치즈를
짚으면 거대한 망치가 제리를 내려치도록 장치를 만들었습니다.
여기서 치즈에 연결된 장치를 "트리거"(방아쇠) 라고 생각하시면 됩니다.
즉 치즈를 집으므로 해서 방아쇠가 격발되어 이와 연계된 다른 것이 작동하는
것입니다.
테이블에서 어떤 특정한 변경이 있을때 그게 반응하여 다른 작업을 하도록
설치된 것이 트리거 입니다. (어떠한 action이 들어오면 어떠한 action을 해주겠다.)
A란 작업이 일어났을때 부수적으로 꼭 따라다니는 B란 작업이 있다면 별개로
따로따로 작업을 하는것보다 A작업이 일어났을때마다 자동으로 B란 작업이
일어나도록 트리거를 심어주는 것이 더 편리할 것입니다.
이런 것을 위해서 트리거가 있는 것입니다.
트리거는 톰과 제리에서 톰이 만든 복잡한 장치처럼... 한번만 걸릴수도 있지만
A의 변경으로 인해서 트리거작동 -> B의 변경 -> B에 걸린 또 다른 트리거에 의해서
-> C의 변경... 이런식으로 얽힐 수도 있습니다.
참고 하십시요.
[DB_oracle] 트리거(Trigger)
트리거는
특정 테이블이나 뷰에 대해 Update, Insert 또는 Delete문을 실행 할 때
자동으로 다른 테이블 혹은 뷰에 Update, Insert 또는 Delete문을 실행되는 특수한 루틴입니다.
생성구문 :
CREATE TRIGGER trigger_name
ON { table | view }
[ WITH ENCRYPTION ]
{
{ { FOR | AFTER | INSTEAD OF } { [ INSERT ] [ , ] [ UPDATE ] }
[ WITH APPEND ]
[ NOT FOR REPLICATION ]
AS
[ { IF UPDATE ( column )
[ { AND | OR } UPDATE ( column ) ]
[ ...n ]
| IF ( COLUMNS_UPDATED ( ) { bitwise_operator } updated_bitmask )
{ comparison_operator } column_bitmask [ ...n ]
} ]
sql_statement [...n ]
}
}
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.
vmware로 xp깔고 oracle 설치하기! - 완료(Test DB)
vmware? 운영체제 속에 다른 운영체제를 돌릴 수 있게 해주는 프로그램 (윈도2008서버 안에 윈도xp깔기~)
즉 가상 PC 같은 거다.
1. vmware 설치
가. www.vmware.com 에서 다운로드 받는다.
나. 그 다음 vmware의 시리얼넘버를 당나귀에서 다운받는다.
다. 설치한다.
라. vmware-tool를 설치
(해상도 문제, 게스트OS와 호스트OS 이동시 마우스 문제 등을 모두 해결)
2. xp설치
3. oracle 설치
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.
[테이블 구조 보기]
DESC 테이블명;
[칼럼 변경]
1. 칼럼 추가 ALTER TABLE 테이블명 ADD (칼럼명 자료타입 [Defualt 값]);
2. 칼럼 수정 ALTER TABLE 테이블명 MODIFY(칼럼명 자료타입 제약조건 ) ;
3. 칼럼 삭제 ALTER TABLE 테이블명 DROP COLUMN 칼럼이름
[테이블 변경]
1. 테이블 복사 CREATE TABLE 백업테이블명 AS 쿼리문(복사할 테이블);
2. delete 하고 commit 할 경우 데이터 살리기 SELECT * FROM AAA AS OF TIMESTAMP (SYSTIMESTAMP - INTERVAL '10' MINUTE);
=> 10분전의 데이터를 보여준다.
[검색 쿼리]
1. like 연산자
조건절에 A.USERID||A.name||D.part_name||a.NICKNAME like '%kang%'
'||' 연산자를 사용하여 여러 개의 칼럼값을 검색 가능하다.
2. where 절에 DECODE와 NVL을 적극 활용할것!
3. IN연산자 NOT IN 연산자 대신 사용하는 쿼리
MSSQL 서버에서 NOT IN을 사용하면 인덱스를 피해간다.
다음과 같이 사용하면 NOT IN을 사용하지 않고 속도 향상을 볼 수 있다.
select * from pwp where [ID] not in (select cn from [USER])
을 아래와 같이 쓰면 좋다.
select count(*) from pwp a where (select count(*) from [user] where cn = a.[id]) = 0