웹마스터 팁
Database, MySQL 이 무엇인가~~~ ^^
2000.03.06 03:21
얼마전까지만 해두 CGI라구 하면 펄을 생각하게 되었구 오라클이나 MySQL같은 DBMS(데이터베이스 관리시스템 : Database Management System)은 최소한 웹상에서는 들리지 않았습니다.
그런데 PHP라는 CGI 프로그래밍 언어가 등장하면서 DB라는 이야기가 많이 들리게 되었습니다.
그럼 왜 PHP는 펄과는 다르게 DB를 이용하는지, 그리고 이 DB가 무엇인지 간단히 이야기하겠습니다.
데이터 베이스는 데이터를 모아둔 것입니다.
예를 들면 학교 도서관의 도서 데이터베이스가 있겠죠.
즉, 도서관에 어떤 책이 들어왔는지, 그 책들의 작가는 누군인지, 누가 대여해갔는지 하는것들이 모두 데이터베이스 안에 들어있겠죠.
이런 데이터들은 가만히 있는 것이 아닙니다.
새로 책들이 들어왔을수도 있고, 폐기되었을수도 있죠. 누가 빌려갈수도, 반납할수도 있는겁니다.
즉, 데이터베이스는 이러한 요인들에 의해서 저장된 데이터를 변경할수 있어야 하죠.
이렇게 데이터베이스를 만들고 관리하는등의 일을 하는 프로그램들을 데이터베이스 관리 시스템 (Database Managemenu System)이라고 합니다.
이 데이터베이스 관리 시스템이 하는일은 데이터를 저장하고 삭제하는 등의 일과 이 데이터들로부터 원하는 정보를 효율적이고 빠른 방법을 제공하는 것이겠죠.
이렇게 데이터베이스에서 데이터를 관리하기 위해서 데이터베이스에 명령을 전달하게 하는 언어를 데이터베이스 관리언어(DBME)라고 합니다.
DBME는 Query라는 데이터베이스 관리 프로그램의 언어를 이용해서 데이터를 관리하게 됩니다.
이런 데이터베이스 관리시스템들은 다양한 종류가 있습니다.
공개되어 있는, 그리고 우수한 성능을 가지고 있어서 널리 알려진 MySQL도 있구, 상용인 오라클도 있고, 그외에 mSQL, PostgreSQL등도 있습니다.
우리가 사용할 MySQL은 무료로 쓸수 있게 공개된 관계형 데이터베이스로서 일반 상용에 비해서 별루 뒤질것이 없는 좋은 프로그램입니다.
안정성 및 무결성의 측면에서 여타 상용 데이터베이스에 비해서 떨어진다고는 한다지만 관리만 잘하면 매우 유용하게 사용할수 있습니다.
MySQL의 주요목표는 속도, 뛰어난 수행능력 그리고 사용의 편리함입니다.
처음에 MySQL은 TcX 내부에서 자체적으로 사용할 목적을 가지고 만들어졌다고 합니다.
TcX는 1996년부터 MySQL을 사용해 왔으며 현재 700만 레코드이상되는 500개 이상의 테이블(100기가 바이트 이상)이 주요업무에 사용되고 있다고 하니 어느정도의 중소업체에서도 충분히 사용할 수가 있습니다.
데이터 베이스 관리 시스템이 어떠한 식으로 데이터를 관리하는지에 대해서는 언급하지 않겠습니다.
물론 저도 잘 모릅니다.
그럼 직접적으로 우리가 알아야 하는 것을 이야기하겠습니다.
보통 MySQL을 지원하는 계정에서는 회원들에게 하나의 DB를 줍니다.
근데 잘 모르는 분덜은 왜 하나만 주나, 나는 게시판 여러개 하구 방명록도 DB를 이용하는 넘으로 할건데~ 하구 의아해하시는 분덜이 계실겁니다.
결과부터 말하자면 하나의 DB안에는 많은 수의 게시판이나 방명록등의 데이터를 저장할수 있습니다.
DB를 이용하는 PHP 게시판들은 데이터를 테이블에 저장합니다.
이 테이블은 하나의 DB안에 무한정은 아니지만 MySQL이 허락하는한 만들수 있습니다.
MySQL과 같은 관계형 데이터베이스는 모든 데이터를 테이블과 같은 형태로 나타내어 저장합니다.
테이블에 대해서 간단히 이야기하겠습니다.
일반적으로 보통 표라는 것을 많이 이용합니다.
시간표 같은것 말입니다.
예를 들문 시간표는 가로줄을 요일, 세로줄을 시간으로 해서 만들면 매우 편하게 만들수가 있습니다.
데이터베이스도 마찬가지입니다. 저장되는 데이터를 테이블(표)와 같은 형식으로 저장하고 관리를 합니다.
여러가지의 속성을 가진 대상들의 데이터를 테이블의 형태로 만드는 것입니다.
시간표를 예를 들면 월, 화, 수요일등과 같은 대상의 속성을 정의하여 만든 틀을 스키마라고 합니다.
만약 학생의 예를 들면 학생=(이름, 학번, 학과, 학점) 등과 같은 스키마를 가지게 만들수 있습니다.
게시판을 예로 들자면 게시판=(번호, 글쓴이, 메일주소, 홈페이지 주소, 제목, 내용, 조회수, 글쓴날자)등과
같이 스키마를 만들수 있겠죠.
이런 스키마의 틀로 이루어진 테이블을 가지고 php 게시판등에서는 데이터를 저장, 삭제, 수정하는등의 관리를 하게 됩니다.
사실 PHP로 DB를 이용하는 CGI 프로그램을 만들기 위해서는 이 정도의 개념만 잡혀 있으면 충분하다고 봅니다.
그만큼 PHP 자체내에서 DB를 쉽게 이용하게 할수 있는 함수들이 제공되고, 또 MySQL의 Query문도 매우 쉽기 때문입니다.
참고로 PHP를 사용하는데 있어서 아파처서버가 권장됩니다.
A.P.M 이라는 말을 들어보셨는지요.
Apache , PHP, MySQL이라는 말입니다.
원래 PHP가 아파치서버와 MySQL을 배경으로 해서 만들어졌다고 합니다.
댓글 103
-
Ride
2000.08.29 05:26
음....아직까진 괜찮네여.. -
사끄
2000.12.03 04:25
후움.. 이해할순있내요..^^ 기억해둬야지 설치는했는데..;; -
쌩초보
2000.12.17 14:39
php 배우면서 첨으로 무슨말이지 알겠네.. -
하지현
2000.12.28 10:35
열씨미 공부해야지...ㅡㅡ; -
Macka
2001.01.01 14:11
쉽게 설명해주셔서 감사합니다. -
정진교
2001.01.02 01:03
흑...다음 장이 두렵다...;; -
홍슬기
2001.01.02 17:56
나만 돌대가리인가..-.- -
홍슬기
2001.01.02 18:05
난 정말 하나도 모르겠다..ㅡㅡ;; -
노호영
2001.01.03 16:51
뭔 말이여? -
홍슬기
2001.01.04 15:32
쩝..그래두 쪼꼼 이해간다..많이 읽으니깐..^^γ -
박철민
2001.01.04 19:56
많이...읽으면...될까..?-_-;; 나랑 같이 공부 할 사람!! -
허영은
2001.01.15 19:13
아..담 장.. 부담돼~~* ㅜㅠ -
막된놈
2001.01.17 18:29
제로님 멋지군요+_+ -
BamTol
2001.01.22 00:26
흠 마씁니다. A.P.M의 3쿠션(?)이 가격대 성능비가 가장 막강하다더군염...^^ -
BamTol
2001.01.22 00:27
군데 이론만 하면 누가 못해...ㅡㅡ; 실기를 할 줄 알아야졈...ㅠㅠ 빨리 배워서 넘어 갑시다~ 화이팅~! -
tagnet
2001.02.01 16:37
에공.. 어렵네여 그래두 열심히.. 스키마라는 것을 알게 됬네여.. -
늘푸르니
2001.02.04 12:11
근데 그거 사려면 얼마..얼마래요..-- -
늘푸르니
2001.02.04 12:12
근데 그거 ..어케 설치하지여.. -
토리
2001.02.09 16:41
쩝.. 지금까지는 그나마 아는것들이 만이 있는뎅... 앞으로가 걱정 .. ㅠㅠ -
forpromise
2001.02.15 19:44
움하하하 ~ 이제부터 행복 끝 불행시작이당~ㅜ.ㅜ; -
조성호
2001.02.16 23:09
php프로그래밍 하는 프로그램도 있나? -
조성호
2001.02.16 23:09
나모 같이 쉽게 할수는 업나요? -
윤효진
2001.02.18 20:52
몰라..ㅡ.ㅜ -
김경아
2001.02.19 18:51
올...쪼끔 이해가 가는군..-_-;; 그담이 걱정읻..ㅠ0ㅠ.. -
남보라
2001.02.26 14:18
이해두 저해두 다 안가쥐만,,,퐛튕이여~ -
jetty
2001.02.28 17:01
PHP 시작한지 3분만에 벽에 부디쳤다 ㅡㅡ;; -
김충희
2001.03.01 02:31
우히히..이런거야? -
윤지회
2001.03.02 16:35
우웅...이건 좀더 나은듯... -
다륌
2001.03.04 20:47
머라카는건쥐 ㅡㅡ; -
전현준
2001.03.12 00:25
아 돌이아푸다 ㅜㅡ -
BamTol
2001.03.15 01:49
허억...ㅡㅡ; A.P.M 설치... 삼쥘해따...ㅠㅠ 에잇! IIS 써야지~ 피...(밤톨 핑계대다. 짜식...;;;) -
홍성모
2001.03.23 21:33
음.. 조아조아.. -
차수영
2001.04.02 14:23
음...모들..다..저와..같군요...근데..제가..젤루..늦은거..같네.. -
윤창진
2001.04.16 19:17
ㅡㅡ;;전 한술 더떠서...어케 따운 바쪄??? -
박자민
2001.04.21 19:41
쪼굼 이해됩니다..ㅡㅡ -
lovu
2001.06.23 06:09
그럼 무료계정에서 mysql 을 따로 신청해서 받는말은 무엇인지? db 는 있음 게시판은 돌아간다...그러나 mysql이 있어야만 이 제로보드를? 서로 동등개념인가요? 아님 분명 상위개념인가요? --.--;;; -
맥스터
2001.04.25 16:47
하하하 ;; 아직까진 이해된다 ㅡㅡ;; -
맥스터
2001.04.25 16:48
제로님 학원하자 차려여^^ -
맥스터
2001.04.25 16:48
ㅡㅡ 죄송 하자가 아니라 하나 ㅡㅡ;;; -
박구상
2001.04.28 10:44
돌탱크 출격 완료!! ㅡㅡ -
귀큰아이
2001.05.07 01:00
나두 글남기구 담장이루... 어여 이덩해야징... 다른 님들두 언넝 어세여~! -
김한울
2001.05.08 21:17
무섭다....이것이 php인가.... -
종혁아이
2001.05.08 23:08
이건또 머야ㅠ_ㅠ -
김정민
2001.05.11 18:29
ㅡ.,ㅡ;; 떠 무슨 소리야 -
비비카
2001.05.14 00:07
훔..뭔말인지 이해가 안되서..그냥 머릿속에 넣어뿌따..!!ㅋㅋ -
임성훈
2001.05.14 10:52
음...이론으로는 어느정도는 이해할수 있겠군..앞으로가 문제다.~ -
박용섭
2001.05.15 02:37
나 돌대가린가바... ㅡ,.ㅡ; -
-0-
2001.05.18 03:02
A.P.M 머찌다 -0- 긍데 하나두 멀게따 T^T -
김근수
2001.05.24 23:08
조금이해>>>>>> -
마키아벨리
2001.05.26 07:46
오호. 이해 간다. 드뎌 MySQL이 뭔질 알겠구만..