포스팅을 해야 한다는 압박 속에 오늘은 간단히 DB Link와 synonym 에 대해서 간단히 포스팅을 해 보겠다.
 
요즘 오픈한 싸이트가 하나 있어 정신 없이 작업중인데 글이 너무 없어 간단히 포스팅 한다.
 
-- DB 링크 걸기
local_db : DB_A,   user : USER_A
remote_db : DB_B,  user : USER_B
 
 - table 명 : TABLE_B  <-- USER_B 소유
 - TABLE_B는 USER_B 유저에게 권한 있음.

-- DB 링크 스크립트 작성 (USER_A로 로그인 후 생성)- 같은 DB서버에 있을 경우

create database link "<DBLINK_NAME>"
connect to USER_B identified by "<PASSWORD>"
using 'DB_B'; 

-- DB 링크 스크립트 작성 (USER_A로 로그인 후 생성)- 원격 DB서버에 있을 경우
create database link "<DBLINK_NAME>"
connect to USER_B identified by "<PASSWORD>"
using
'(description=
    (address_list=
        (address=
            (protocol=tcp)(host={DB_B})(port={DB_B서버 리스너 포트})
         )
    )
    (connect_data=(sid={DB_B서버SID}))
 )';
-- using 이후의 절은 tns에서 잡은 것과 동일하게 셋팅 되어야 한다.
-- 물론 DB_B에 리스너가 떠 있어야 한다.

-- sysnonyms 만들기 (별명)
connect  USER_A
create synonym tablea for TABLE_A    -- private synonyms을 생성

--sysnonyms 만들기  (public)
connect system
create public synonym tablea for USER_A.TABLE_A  -- public synonyms을 만듬

 

-- 디비 링크 보기 , 시노님 링크 보기  (시스템 테이블)
select  from user_synonyms;
select  from user_db_links;
 
이렇게 해서 간단히  원격 DB연결 및 시노님 생성하는 부분을 알아봤다.
남들에게 유용한 정보가 될까?
보러 오는 사람은 있는데.. 답글은 없네..
 


'IT reference > OS,DB' 카테고리의 다른 글

오라클 인덱스 리빌드 하기  (0) 2008.10.27
오라클 ANALYZE 실행 하기  (0) 2008.10.26
리눅스에 아파치 설치  (2) 2008.10.08
파일 이름 일괄 바꾸기 ReNamer  (1) 2008.10.07
오라클 tablespace 위치  (0) 2008.10.02

WRITTEN BY
한량이

,
리눅스를 설치 할때 RPM으로 설치를 하게 되면 기본 설치는 된다.
 
하지만 리눅스에 아파치를 컴파일 해서 올리고 싶을 때가 있을 것이다.
 
이거 자주 안해 보면 잊어버린다.. 그래서 간단히 정리해 보았다.
 
일단  리눅스는 설치 되어 있다는 가정 하에...
 
- 기존 리눅스에 설치된 RPM 버전 확인
#rpm -qa httpd
또는
#rpm -qa | grep httpd
무식한 방법
#find -name httpd
 
리눅스에 기본으로 설치된 아파치 삭제 삭제
#rpm -e httpd --nodeps
 
이렇게 삭제 처리를 한 후 아파치를 다운로드 받는다.
 
아파치 다운로드는 http://www.apache.org/ 여기서 받으면 되는데.. 이건 다운로드 가서
 
FTP사이트 들어가면 디렉토리들이 보일 것이다. 그중에 httpd를 선택 하면 URL이
 
http://www.apache.org/dist/httpd/형태로 바뀌면서 또 하위 디렉토리 들이 보인다. 거기서 맞는 아파치를 다운로드 받으면 된다.
 
이게 예전과 다르게 좀 복잡해 졌다.. 나만 그렇게 느끼나..ㅋㅋ
 
그래서   http://httpd.apache.org  이것으로 접속 하면 그래도 받기가 수월해 진다.
 
암튼 DownLoad에 보면 from a mirror이 있다. 거기에 가서 원하는 버젼의 OS에 근거한 아파치를 다운 받는다.
 
일단 httpd-2.0.63.tar.gz를 받아서 한다. 나머지 버젼도 동일...
 
#tar zxvf  httpd-2.0.63.tar.gz
#cd httpd-2.0.63
#./configure --prefix=/home/apache2 --enable-so
 
물론 prefix의 위치는 알아서... 일반적으로 /usr/local/apache2로 많이 하긴 하던데...
 
#make
#make install
 
이렇게 하면 뭔가가 쭉 올라가면서 설치 되는 듯 하다..
 
이건  직접설치 했기 때문에 설치가 완료 되어도 위와 같이 rpm -qa | grep httpd 찾으려고 해도 결과는 없다.
 
그리고 나서 설치디렉토리 안에 bin으로 들어가서 start하면 도니다.
#./apachectl start
확인은
#ps -ef | grep httpd
혹은 포트를 80으로 줬으면
#netstat -an | grep 80
하여 80포트가 LISTENING 이 되었는지 확인 한다.



WRITTEN BY
한량이

,



간혹 미드 혹은 일드 이런 것들을 어디선가 구했을 때 확장자가 단체로 변경 되어 있다든지..

아니면 드라마 이름 앞에 공통된 문자열이 들어가 있다던지..

PMP로 집어 넣을 때 좀 제목좀 작았으면 하는 바램이 있는데.. 뭐 이렇게 할때

탐색기에서 하나하나 바꾸려면 정말 짜증난다.

그럴 때 뭐 한번에 바꿔주는 툴이 있지 않을까 하는데.. 그런 툴을 소개 하고자 한다.

홈페이지는 http://www.den4b.com/ 이고 물론 shareware이다.

최종 버젼은 ReNamer5.30 이다.

아래를 클릭 하면 다운...


프로그램 설치는 의외로 간단 하다. 위의 파일을 다운 받아 클릭만 하면 알아서 설치 한다.

설치 후 설치 화면.


영어로 UI가 되어 있는데.. 일단 쉽다. 변경할 파일을 아래에 끌어다 놓으면 되고...

그위에는 변경할 룰을 생성 해 주면 된다.

상단의 +ADD로 되어 있는 버튼을 클릭 하면 룰을 추가 하는 화면이 나타난다.



INSERT 룰 에 renamer라는 글을 입려, Replace에 第를 제로 변경, 話를 제거 하는 룰을 추가 후에 보면
하단에  New Name에 변경된 모습을 볼수가 있다.

최종적으로 우측 상단에 있는 Rename을 클릭 하면 바로 파일에 변경 되어 윈도우 탐색기에서 바로 처리 할 수 있다.

이제 탐색기에서 F2를 눌러서 변경할 필요가 없다. 깔끔하게 PMP에 저장 할수 있다.




WRITTEN BY
한량이

,


오라클을 사용하다 보면 테이블 스페이스가 꽉 차서 스페이스를 추가 하려고 할때가 많다.

또 개발자들은 여러개의 Tablespace를 생성 해서 쓰는데 저번에 어떤위치에 생성하였지 하고 고민을 하는 경우가 많다.

간단하게 tablespace의 정보를 알수 있는 것이

select * from dba_data_files 이다.

이걸 쿼리해 보면 여러가지 정보가 나온다 실제 파일 위치 및 이름... 등등... 아래와 같이 정보가 나타난다.



또하나 중요한 정보는

select * from dba_tablespaces 이다.

이건 tablespace의 이름및 extent값 pct_increase 값등 유용한 정보가 많이 나온다.


이런 부분을 알고 있으면 간혹 DB관리 할때 편하다... 오라클에서 제공되는 VIEW에 의하여 이런 많은 정보들이 제공되며 유용하게 사용할 수 있다.


WRITTEN BY
한량이

,



최적화된 XP설치 뭐.. 아무튼 좀 이상한 경로로 설치된 XP의 경우 표준 시간대가 이상하게 나오는 것들이 있다.

물론 사용하는대는 절대 지장 없다.

하지만 분명 글을 20시에 남겼는데 저장되는 시간을 1시가 된다던지 아무튼 이상하게 나타난다.

특히 서버로 사용할 때는 더더욱 이상한 시간을 찍어낸다. 현상을 보면..


위와 같은 현상이 나타난다. 답답하다. GMT + 09:00시간대 밖에 나오질 않는다.. 혹은 외국에서 사용할때 문제가 된다..

그럼 아래와 같이 하려면 어떻게 하면 되나.... 잘 되는 친구의 registry를 복사해서 옮기면 된다..

어떻게.. 그 많은 파일중 무엇..

실제 위치는
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zone
여기다.. 정상적으로 설치된 친구의 것을 저장하여 받으면 된다...



그래서 첨부하였다. 첨부파일 다운 해서 더블클릭 하면 아래와 같이 모든 시간대가 나타난다.



결론... 정품을 사용하자 이상한 경로로 xp를 설치 하니까 위와 같은 결과가 나타난다.

정품 소프트웨어 사용하면 위와 같은 번거러움은 하지 않아도 된다.

최적화된 XP... 최적화 되어 있지 않는듯 싶다.


WRITTEN BY
한량이

,

오라클 디비를 사용하다 보면 분명 프로그램 이상이겠지..

꼭 데이터베이스에 lock이 걸려 서버가 다운되거나... 미친듯이 오래 걸린다던가..

암튼 이만저만 짜증이 난다.. 중요한건.. 토드 같은 오라클 툴이 없으면.. 이거 LOCK걸렸을 때 쿼리 기억 안나면 미친다..

그래서 정리 해 봤다.. 힌트를 줘서 사용하니 조금 빠르군..

사용하는 계정으로 오라클을 로그인 하여 아래의 쿼리를 실행한다.


SELECT /*+ ordered */
        a.sid SID,
        to_char(b.serial#) SEQ,
        id1 ID1,
        to_char(b.audsid) AUD,
        b.username Uname,
        b.osuser OsUser,
        c.sql_text SQLSTMT
FROM v$lock a ,
        v$session b,
        v$sql c
WHERE   a.type = 'TM'
AND       a.sid = b.sid
AND       c.hash_value (+) = b.sql_hash_value;

제일 처음 나오는 a.sid는 Session ID이고  두번째의 b.serial# 는 Serial번호이다.
이 둘을 이용하여 해당작업을 강제 종료시킬 수 있다.

Alter System Kill session 'Sid,Serial#';
위에서 나온 첫째 필드값 -----^    ^----------두번째 필드값

물론 앞 두개의 컬럼 이외에 나머지는 그냥 정보로써 사용하면 된다...

kill하고 나면 사용하고 있는 데이타가 제대로 rollback이 되었는지 확인 해주는 센스....



WRITTEN BY
한량이

,


윈도우 XP설치 후 로그인 계정에 비밀 번호를 생성 하게 되면 자동로그인 되려는 속성 때문에 경고창이 뜬다.

그럼 자동 로그인 해제를 하기 위해서는 어떻게 할까?

아주 간단한 방법은 위도우키 + R 실행에.. regedit를 입력후




레지스트리 편집기에서.

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon 이동 한다.
물론.
CTRL + F를 눌러 찾기를 통하여 AutoAdminLogon 문자령을 찾으면 된다.



찾아진 그 값이 1로 되어있을 것인데 그 값을 0으로 바꾸면 자동 로그인은 해제가 된다.




WRITTEN BY
한량이

,
개인 피씨에서 인터넷을 사용하는 것이 아니라

공용으로 인터넷을 사용하는 PC 혹은 노트북에서 남들이 열어본 페이지 목록을 공개하기 싫을 때가 있다.

그렇다고 해서 도구에 옵션에 웹사이트 목록 삭제로 삭제를 하면 다 삭제 되고...

주소 창에 특정하게 접속한 싸이트만 지우고 싶을때가 있을 것이다.

혹은 남몰래... 말할수 없는 싸이트를 들어간다던지 혹은 개인적인 유희를 위한 어떠한 싸이트에 접속 하다던지..

이목록만 삭제 하고 싶을 때...

윈도우 -> 실행 창에 regedit를 입력 한다. (단축기 윈도우키 + R )



레지스트리 편집기 창이 열리면 ctrl + F 혹은 검색을 이용하여 검색어에 typedurls를 입력 한다.



해당 하는 키를 삭제 처리 하고 url로 시작하는 값을 삭제 한다. 만약 url2를 삭제 하였다고 하면 url마지막 번호를 지운 번호로 이름 변경 처리 해야 한다.
만약 url1을 삭제 하게 되면 url7의 값을 마우스 오른쪽으로 클릭 하여 이름 바꾸기를 통하여 url1로 변경 한다.

해당작업 완료 후 창을 닫게 되면 인터넷 익스플로러의 주소 창을 열어 보면 해당 값이 삭제된 것을 볼 수 있다.

이렇게 해서 해당 주소창에 지우고 싶은 주소만 감쪽같이 지울수가 있다..

물론 전체 삭제 하려면 메뉴의 도구-> 옵션 에서 검색 기록 삭제를 하면 모두 지워진다.



WRITTEN BY
한량이

,
우리는 서버 납품 업체도 아닌데... 이런것 봐달라고 한다..

귀찮게...

그래서 정리 해 봤다.. 처음으로 하는 포스트 인데.. 과연 유용한 정보가 될수 있을까?

기본적으로 메일을 리눅스에 올렸는데 외부에서 smtp 접속도 안되고 pop3접속도 안되고..

또 외부에서 이런 서버 접속을 외부 방화벽을 사용하지 않고 리눅스 자체 방화벽으로 어떻게 처리 할수 있을까?

리눅스 에서 방화벽 설정 iptables를 이용한다.

iptables의 설정파일이 위치한 곳은 '/etc/sysconfig/iptables'라는 파일이다.

사용자 삽입 이미지



Chain INPUT : 서버로 들어오는 기본정책
Chain FORWARD : 서버에서 forwarding 기본정책
Chain OUTPUT : 서버에서 나가는 기본 정책
Chain RH-Firewall-1-INPUT : 이곳에서 설정하고자 하는 정책들을 적용


http, ftp등등에 관한 연결설정을 하기 위해서는 다음과 같음 명령어를 사용한다.
iptables -A RH-Firewall-1-INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
iptables -A RH-Firewall-1-INPUT -p tcp -m state --state NEW -m tcp --dport 21 -j ACCEPT

여기서 중요한 점은 빨간색으로 표시되어 있는 부분이다.
 위와 같은 명령어로 80포트를 추가 하고 21번 포트를 추가 한다 하더라도 REJECT 다음으로 들어가기 때문에 적용되지 않는다. 즉 REJECT 부분을 제거 하고 입력 한후 다시 REJECT 를 추가 해야 한다.

iptables -D  RH-Firewall-1-INPUT 14

뒤에 14라는 숫자는  RH-Firewall-1-INPUT안에 있는 14번째 행을 Drop 하라는 명령어 이다. 이렇게
Drop처리를 한 후에 (이미 위에서 80과 21 포트가 append가 되었다면 REJECT 부분만 append해주면 된다.)

iptables -A RH-Firewall-1-INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
iptables -A RH-Firewall-1-INPUT -p tcp -m state --state NEW -m tcp --dport 21 -j ACCEPT
iptables -A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited
위의 명령어를 입력 후 다시 REJECT 부분을 append 하여 처리 한다.

위와 같은 설정을 하고 마지막으로
/etc/init.d/iptables restart
를 실행하여 적용 시킨다.

이렇게 하면 우리가 윈도우에서  방화벽을 할수 있듯이 리눅스에서도 간단하게 방화벽 셋팅을 할수 있다.


사용자 삽입 이미지


WRITTEN BY
한량이

,