|
: 서버에 데이터베이스를 만들고..
: 클라이언트에서는 서버로부터 자료(DB 예를 들면.. 시리얼번호 같은거..)를 가져 와서 일을 하고 일한 결과(예를 들면 이 시리얼 번호는 다시 사용 못한다 X, 다시 사용할 수 있다 O 등.. )를 다시 서버에 보내야 됩니다.
:
: 이런 형식이라면..
: 서버에 데이터베이스(mysql)를 깔고, 클라이언트에서 서버로 접속을 해서 데이터를 가져오거나 서버에 저장할때..
: 소켓을 이용해야 되는 건가요?..
:
: 제가 아직 데이터베이스에 대한 개념이 없어서 그렇거든요... (이제 막 알아가고 있는 단계라..)
: 클라이언트랑 서버가 데이터를 주고 받을때.. 꼭 소켓을 이용해야 되는건지..
: 아니면 데이터베이스를 이용하면 소켓을 이용하지 않아도 되는건지(디비서버라고 하나요?..) 잘 모르겠습니다...
소켓 부분은 신경쓰지 않으셔도 됩니다.
이렇게 한 번 생각해 보세요...
[컴퓨터1]에 mysql데이타베이스를 설치했습니다.
[컴퓨터2]에 c++builder로 개발한 프로그램을 설치해서 사용한다...
개발시에는 c++builder가 [컴퓨터1]에 설치되었든, [컴퓨터2]에 설치되었든 관계없습니다.
빌더랑 mysql이 통신할 수 있게 도와주는 컴포넌트가 있는데 이 컴포넌트를 이용해서
msyql데이타베이스에 접근할 수 있죠...데이타를 가져오고, 저장하고...
소켓이란건 신경쓰지 않으셔도 됩니다.
프로그램 내에서는 아래와 같이 연결되겠죠?
[mysql]<->연결컴포넌트<->[빌더프로그램]
프로그램을 설치하면 아래와 같이 연결 되는 것이구요.
[컴퓨터1;mysql설치컴퓨터]<->개발한 프로그램<->[컴퓨터2]
이 때 [컴퓨터2]에서 프로그램을 실행시킨다면 [컴퓨터1]과 통신할 수 있어야겠죠?
[컴퓨터2]에서 [컴퓨터1]의 ip주소를 지정함으로써 가능합니다.
그리고 이 기능은 프로그램 상에서 지정할 수 있도록 해야겠죠?
: 클라이언트에서 서버로 접속을 할려면.. 뭔가(ip나 뭐..그런것들..)가 있어야 할것 같긴 한데..
: 그래서 소켓을 이용하는 건지.. 흠..
일단 빌더를 실행시키고 나서 mysql과 연결시켜 주는 컴포넌트를 놓고
mysql데이타를 가져와보세요...가져온다는건 연결이 되었다는 뜻이겠죠?
그 컴포넌트 프로퍼티에 보면 분명히 mysql 호스트가 어느 컴퓨터에 있는지
설정할 수 있는 항목이 있을겁니다. 디폴트야 "localhost"로 되어 있을 가능성이 있지만
mysql이 다른 컴퓨터에 설치되어 있다면 그 컴퓨터의 ip주소를 적어 넣으시면 됩니다.
그러면 연결이 되지요...
그리고 프로그램 실행중에 ip주소를 설정할 수 있도록 만들어 둔다면
어느 컴퓨터에 설치되어 있더라도 - mysql이든, 프로그램이든 - 신경쓰지 않으셔도 되겠죠?
mysql이 어디 설치돼 있는지 그 컴퓨터의 ip 주소만 확인해서 입력해주면 되니까요...
: 많이 어렵네요.. 어제 종일 여기 게시판에서 DB 관련된거 찾아봤는데.. ㅜㅠ
:
: 암튼.. 답변을 부탁드립니다.
|