- 6
- 마스터
- 조회 수 255
내부(localhost)에서만 DB 접속이 가능하다고 말씀드리니,
그럼 내가 접속하는 것은 외부인데 어떻게 DB에 접속이 되느냐, 다른 사용자들도 DB에 접속이 안되는 게 맞는거 아니냐.
하는 분들이 워낙 많아서 어떤 분이 질문하신 글에 댓글로 적었던 내용을 남깁니다.
데이터베이스에서 "외부"라는 뜻은 그렇게 쓰이지 않습니다. 조금 달라요.^^
IP를 가지고 "외부 접속한다." 그러면 말 그대로 외부의 IP에서 접속이 된다는 뜻입니다.
하지만 데이터베이스에서는 외부에서 접속을 "허용한다." 와 "허용하지 않는다." 로 나뉩니다.
일반적으로 데이터베이스 접근은 localhost 입니다. 근데 바로 사용자가 데이터베이스에 접근을 하는게 아니라 XE나 워드프레스 같은 php 소스들을 통해 접근을 하게 됩니다. 이런 php들은 웹 서버에서 담담을 하는데 데이터베으스 까지 접근 과정을 보면
외부 접속 -> 웹서버가 php 처리 -> 데이터베이스 서버에 접속 -> 처리
이 순서로 진행됩니다. 즉, 데이터베이스 입장에서는 내부에서 접속을 하는 것 같은 거지요.
외부에서 접속이 허용되는 경우는
웹 서버와 데이터베이스 서버를 따로 두는 경우 입니다. 보통 대형 사이트들이 그렇게 하구 있구요.
일반적인 사용자 입장에서 예를 들어보자면 프로그램등을 이용해 데이터베이스 접속하는 경우 입니다. 즉, 외부에서 여기 서버에 있는 웹서버를 통하지 않고 직접 데이터베이스에 로그인 하는 경우는 접속이 불가능 한겁니다.
phpmyadmin 같은 웹 소스들도 결국엔 웹서버를 한번 거쳐서 데이터베이스 접속을 하는 원리이기 때문에 내부 접속이라고 볼 수 있습니다.
이제 더이상 같은 내용의 질문이 나오지 않기 바랍니다. ㅠㅠ 같은 말을 이제 그만 하고 싶어요 ㅠㅠ
추천인 1
작성자
댓글 6
편리하긴 하지만 안전장치가 확실하지 않으면 위험도가 높으니 어쩔수없지요..
으음.. 저도 분발해서 사이트를 오픈해야....
이 질문을 비슷하게 한 분들이 굉장히 많습니다. 그래서 매번 그러느니 한번 설명을 하려고 적은 겁니다.