192.168.100.12 에 8888 포트에 특정 값을 써준다거나해서 해당 서버가 작업을 할수있도록 신호를 주고싶은데 방법이 있나요?
트리거 자체로는 안될것같고, 트리거에서 외부 프로그램을 호출하는 기능이 있는 DBMS인지 확인해보셔야 할 것 같습니다.
함수나 프로시져를 호출해서 할수 있는 디비도 있겟지만 최악의 상황이 될거 같네요.
네트웤이 너무너무 좋아도 DB의 한 트랜잭션안에서 이뤄져야하는데 ... 이건 DB를 아주 요물로 만들어버릴거 같음니다.
재미삼아 할거라면 모르겟지만...
주기적으로 확인하기 쉽도록 DB 구조를 만들고 외부에서 확인하는것이 바람직하다고 봄니다.
오라클에서 tirgger로 Procedure를 호출하고 Procedure안에서 UTL_TCP 패키지를 사용해서 데이터 전송은 가능하지 않을까 싶은데 요즘은 보안때문에 해당 패키지를 못쓰게 막아서 확인이 필요합니다. 아래는 예제 입니다.
Declare
Conn UTL_TCP.connection;
Reseult binary_integer;
SenMessage VARCHAR2 := "Test Send Data";
RcvMessage VARCHAR2;
Begin
Conn := UTL_TCP.open_connetion(remote_host = '192.168.100.12', remote_port =7888, tx_timeout = 10);
Reseult := UTL_TCP.write_line(Conn, SenMessage);
Reseult := UTL_TCP.read_line(Conn, RcvMessage);
DBMS_OUTPUT.PUT_LINE(RcvMessage, Reseult);
UTL_TCP.Close_Connection(Conn);
End;
/