..
DEV (257)
oracle client
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

원격지의 데이터베이스 서버에 접속하기 위한 oracle client 프로그램

oracle client에서 oracle server로 접속하기 위해서는 몇가지 설정을 해야 한다.

1. tnsnames.ora 편집

- %oracle_home%\ora92\network\admin 으로 이동
  (원격의 오라클 서버에 접속하므로 network 폴더에 있겠고 원격접속 설정을 관리하는 admin 폴더로 간다)

- tnsname.ora 파일을 찾는다. (만약 없다면? sample 폴더 안에 있는 tnsname.ora파일을 복사해서 붙여 넣기)

- 설정 확인 방법
  * 시작 - 실행 - cmd - tnsping [SID] 를 실행하여 세팅이 잘 되었는지 확인한다.
  * Attempting to contact (ADDRESS=(PROTOCOL=TCP)(HOST=xxx.xxx.xxx.xxx)(PORT=1521))
    OK (180 msec) 이런 문구가 나오면 성공
  * tns접속의 경우 id/pw@SID

'DEV > 개발관련 툴' 카테고리의 다른 글

tomcat과 oracle 연동  (0) 2009.03.19
apache + tomcat 연동 (java)  (0) 2009.03.19
다른 이름으로 저장시 경로 설정하기  (0) 2009.03.12
  Comments,     Trackbacks
apache + tomcat 연동 (java)
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.
1. 자카르타 톰캣 + 아파치 서버

서블릿/JSP 컨테이너의 역할 뿐 아니라 웹 서버의 기능도 가지고 있다.
그러나 성능 좋은 웹 서버로는 부족한 점이 있다.
-> 그러므로자카르타 톰캣과 아파치 웹 서버를 결합해서 사용한다.

※ TCP 소켓을 통해서 JK 컨넥터와 연결하는 방법을 사용하기로 한다.(방법은 다양하다)
    (JK2 커넥터도 존재하지만 아파치에서 더이상 지원하지 않으므로 패스~)

- 장점 : 톰캣과 아파치 서버가 서로 독립적으로 동작, 구성하기 쉽다.
- 단점 : 톰캣이 별도로 항상 실행되어야 한다.

1) 아파치 웹 서버 다운로드 및 설치

url - http://httpd.apache.org/
file - Win32 Binary without crypto (no mod_ssl) (MSI Installer)

2) JK 컨텍터 라이브러리 다운로드
아파치와 톰캣을 내부적으로 연결하는 모듈입니다
url - http://www.apache.org/dist/tomcat/tomcat-connectors/
file - mod_jk-1.2.27-httpd-2.0.63.so
 

경로 : %apache_home%/modules 디렉토리로 복사

3) httpd.conf 설정 변경
- jk 컨텍터가 동작하기 위해서는 아파치 웹 서버의 httpd.conf파일을 변경해야 한다.
- httpd.conf 파일에 다음과 같은 내용 추가

예시 - httpd.conf


4) %catalina_home%/conf/jk/workers.properties

- jk를 위한 환경 설정에서 가장 중요한 부분은 아파치 웹 서버에서 저장하는 workers.properties이다.
- 이 환경 설정에서의 값들 하나 하나가 성능과 밀접한 연관을 가지게 된다.
- 로드 발란싱과 같은 기능도 여기서 적용된다.
(자세한 사항은 다른 페이지에서 설명)

예시 - workers.properties

5)%catalina_home%/conf/server.xml

예시 - server.xml


6) 마지막 실행
- 톰캣을 먼저 실행하고 아파치 웹 서버를 나중에 실행시킨다.
- 아파치 - html 이미지 같은 정적인 테이터
- 톰캣 - jsp와 서블릿
- html 파일 , 이미지 파일, 자바스크립트 파일 css 파일 아파치/htdocs 디렉토리로 복사

2. 자카르타 톰캣
- JSP 및 Servlet을 해석하는 기능 및 페이지로 뿌려주는 서버 역할을 함.
- 서버상 기능이 아파치에 미치지 못함
- 파싱 기능도 JSP에 한정됨 -> 성능을 제대로 이끌기 위해서 아파치와 연동


[알게 된점]

※추가사항※

Tomcat Default Socket 을 닫는 작업. (8080 포트 닫기)

[사용자 요청] <->  [ Apache ] <-> [Tomcat ] <-> [DBMS]

                  80포트        내부 8009 포트         커넥션풀



클라이언트의 요청은 아파치 서버가 받게 되므로 톰캣의 포트는 열어둘 필요가 없다.
그러므로 주석처리 이후 http://localhost/ 로 (기본포트80) 으로 접속가능하지만
http://localhost:8080/ 으로는 접속이 불가능하게 된다.
 



http://blog.naver.com/solleil7829?Redirect=Log&logNo=30025281583

'DEV > 개발관련 툴' 카테고리의 다른 글

oracle client  (0) 2009.03.19
다른 이름으로 저장시 경로 설정하기  (0) 2009.03.12
vmware  (0) 2009.03.09
  Comments,     Trackbacks
트리거
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 ]
    }
}

[출처] 트리거란?|작성자 death4you


 
ps.
트리거를 더 자세히 알기 위해서는 PL/SQL을 따로 공부해야 겠다.
그리고 다시 한번 트리거에 대해서 정리 해야 겠다.

오늘 트리거에 대해서 알게 된 것은

어떤 특정 한 테이블에 insert가 일어나면 다른 계정의 테이블에도 연달아 insert 가 일어나도록
해주는 것이 트리거라고 느꼈다.
작성 언어는 PL/SQL이고 (조건)
그 조건 안에는 sql 문이 였다.

'DEV > DB' 카테고리의 다른 글

[sql] to_number()함수  (0) 2009.03.24
DB 스키마  (0) 2009.03.09
[sql] 자주 사용하는 쿼리문 정리  (0) 2009.03.02
  Comments,     Trackbacks
다른 이름으로 저장시 경로 설정하기
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

시작 버튼 - 실행 - gpedit.msc

사용자 구성 > 관리 템플릿 > window 구성 요소 > window 탐색기 > 공용 파일 열기 대화 상자

바로 가기 모음 표시 항목 클릭 후

바탕화면은 Desktop
내 문서는 MyDocuments
내 컴퓨터는 MyComputer
최근문서는 Recent

그외 자기가 원하는 폴더 경로 예

D:\Downloads
E:\Utilities

http://blog.daum.net/poongsin1/1902731

'DEV > 개발관련 툴' 카테고리의 다른 글

apache + tomcat 연동 (java)  (0) 2009.03.19
vmware  (0) 2009.03.09
콘솔 로그 쉽게 지우기  (0) 2009.01.08
  Comments,     Trackbacks
정규식 모음
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.
이메일 정규식
"^[a-zA-Z][\w\.-]*[a-zA-Z0-9]@[a-zA-Z0-9][\w\.-]*[a-zA-Z0-9]\.[a-zA-Z][a-zA-Z\.]*[a-zA-Z]$


전화번호 정규식
$('#htel').val().trim().match(/^0[0-9]{1,2}-[1-9]{1}[0-9]{2,3}-[0-9]{4}$/)

휴대폰 정규식
$('#hp').val().trim().match(/^01[016789]{1}-[1-9]{1}[0-9]{2,3}-[0-9]{4}$/)

'DEV > html/css/js/img' 카테고리의 다른 글

jqueryui 홈페이지  (0) 2009.04.09
[자바스크립트] 팝업 화면 리사이즈하기  (0) 2009.02.25
[javascript] 이벤트  (0) 2009.01.09
  Comments,     Trackbacks
DB 스키마
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

DB 스키마 백업 작업

스키마

사전지식, 배경지식, 지식 구조(knowledge structure), 본(scripts), 틀(frames) 이라고 부르기도 하는데 우리의 기억 속에 저장되어 있는 경험의 총체를 말한다.

DB 스키마


1. create table 문법
2. 칼럼명/ 타입/ 제약조건

DB 구조를 추출 해야하는 작업임. Test DB에 테이블을 생성하기 위해서



DB Data

1. orange를 통해 엑셀파일로 추출한다(Loader기능)
2. export시킨다.




테이블 스키마 예시

create table zipcode (
    seq     int(5)      not null comment '일련번호',
    zipcode varchar(7)  not null comment '우편번호',
    sido    varchar(4)  not null comment '특별시/광역시/도',
    gugun   varchar(15) not null comment '시/구/군',
    dong    varchar(26) not null comment '읍/면/동',
    ri      varchar(45) comment '리/건물명',
    bunji   varchar(17) comment '번지/아파트동/호수',
    constraint zipcode_pk primary key (seq)
) engine=InnoDB, comment='우편번호';

'DEV > DB' 카테고리의 다른 글

트리거  (0) 2009.03.13
[sql] 자주 사용하는 쿼리문 정리  (0) 2009.03.02
export/import  (0) 2008.10.31
  Comments,     Trackbacks
vmware
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 설치


Linux설치 가이드
http://www.suselinux.co.kr/bbs/board.php?bo_table=tip&wr_id=1794&page=9
http://mhpark84.tistory.com/113
http://forum.falinux.com/zbxe/?mid=lecture_tip

용어설명
호스트 OS - 현재 로컬의 컴퓨터 OS
Guest OS - vmware로 만든 가상의 OS

'DEV > 개발관련 툴' 카테고리의 다른 글

다른 이름으로 저장시 경로 설정하기  (0) 2009.03.12
콘솔 로그 쉽게 지우기  (0) 2009.01.08
[이클립스] history 기능  (0) 2009.01.08
  Comments,     Trackbacks
hs-err-pid.log
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.
hs-err-pid.log

이와 같은 오류 메시지가 뜬다면 JVM에 이상이 있다는 것임.

jre 지우고 다시 깔자!


'DEV > java' 카테고리의 다른 글

velocity spring macro  (0) 2009.03.24
addeventListener 쓰는 이유??..  (0) 2009.01.12
request 요청경로 확인방법 정리  (0) 2009.01.12
  Comments,     Trackbacks
[sql] 자주 사용하는 쿼리문 정리
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


[출처] http://moogi.tistory.com/31
http://soulfly.tistory.com/entry/나의-남편은-개발자

'DEV > DB' 카테고리의 다른 글

DB 스키마  (0) 2009.03.09
export/import  (0) 2008.10.31
10g 에서 테이블 완전 삭제하기.  (0) 2008.09.22
  Comments,     Trackbacks
[자바스크립트] 팝업 화면 리사이즈하기
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.
window.resizeTo(너비,높이);

window.onload = function() {
  var ow = document.getElementById("popup_wrap720").offsetWidth;
   var oh = document.getElementById("popup_wrap720").offsetHeight;
   window.resizeTo(ow+200, oh+80);
  var cw = document.body.clientWidth;
   var ch = document.body.clientHeight;
   window.resizeTo(ow + (ow + 200) - cw, oh + (oh + 80) - ch);

'DEV > html/css/js/img' 카테고리의 다른 글

정규식 모음  (0) 2009.03.12
[javascript] 이벤트  (0) 2009.01.09
요청과 동시에 자바스크립트가 실행되게 하기 위해서는..?  (0) 2009.01.06
  Comments,     Trackbacks