웹마스터 팁
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
-
~(^^~)(~^^)~
2001.05.26 20:41
띠방..내 머리 완전 돌대가리다..미친당..먼말인지 멀겠다.. -
최준수
2001.06.24 22:09
헤헤.. 글은 대충 알았는데.. 님들 꼬리 남긴거 본다구 다 까무겄네.. ^^;; -
박지호
2001.06.29 19:09
11살런 무린가병. -
지병석
2001.07.05 13:53
무리아닙니다.40인 저도 도전할랍니다. -
황도근
2001.07.05 21:23
mySQL계정 신청을 했는데... -
황도근
2001.07.05 21:24
FTP에서 zboard 디렉토리 못만들게 해여 ㅜ.ㅜ -
황도근
2001.07.05 21:24
퍼미션이 없다나... 나참... 쓰라고 내주구선... -
김대희
2001.07.08 21:40
약간은 이해가 ㅡㅡ;; -
최수동
2001.07.15 18:17
ㅋㅋㅋ 여기에도 남김니다.. 예전에 DB를 조금 겅부했어서 알아들을수 있겟꾼요.. 하지만 다음에는 ㅡ.,ㅡ 어케될런지 -
안현주
2001.07.17 09:54
mySQL은 어디가서 신청하는 거십니까???? 아시는 분!? -
김유민
2001.07.20 05:09
아마 MySQL은 다운받아서 쓰고 MysQL지원되는 계정을신청하는거 아닌가? -
최영희
2001.07.20 13:26
아파치 서버??? 몰겠다..저는 NT 서버에서 사용할 수 있는 게시판 만들려구...이렇게 헤메고 있어요. -
김예정
2001.07.21 13:24
계속 열띠미 겅부합시당아...^^ -
장준표
2001.07.26 01:38
운영자님 천재 아냐? ....아니면 내가 천잰가?........... -
조성용
2001.07.28 18:22
정신 없다 -
첼이
2001.07.31 10:51
이제야 뭔말인지 점 이해가 됩니다.... -
김아영
2001.08.18 15:42
어데가서 다운 바더야 하나 함ㅡ -
푼수칼리
2001.08.22 22:34
APM은 야후에서 근사모 라고 검색을 하면 나오는 곳에서 다운을 받고 설치까지 하실 수있습니다. 자세한 설명이 나와있거든요. -
푼수칼리
2001.08.22 22:35
그리고 MysQL지원되는 계정이 있어야 합니다. 무료로 php지원되는 곳을 주긴 해도 DB가 필요한데 그 DB를 가지려면 유료로 전환을 해야 한답니다;; -
이영원
2001.08.26 18:40
무슨 말인지 대충... -
조용민
2001.08.28 00:09
음...음....음........-0-;; -
어리버리
2001.08.30 21:46
아직은......
다음 내용이 궁금하네..... -
성민수
2001.09.06 01:56
재밌을것 같네요~~ -
그네
2001.09.09 16:28
나도 다음 내용 궁금하네.. -
K
2001.11.28 19:44
궁금한것 왜 우리나라사람은 약자를 쓸대 끝에 .(마침표)를 안 붙이나?
A.P.M.이 맞고
H.O.T.가 맞고
G.O.D.가 맞다(전 G.O.D. H.O.T.펜 둘 다 아닙니다 그냥 예를 들어서...) -
K
2001.11.28 19:45
대가 아니고 때군 -
장백지
2001.12.09 03:47
#이럴게 아니라 #스터디그룹#하나만들까나 -
nanse
2001.12.13 14:01
@_@ 또봐버리다니 -
이원호
2002.02.04 23:38
G O O D -
최태욱
2002.08.01 18:10
ASP 공부 좀 하다가 시간 없단 이유로 중도포기한 상태였는데...
제로님의 도움으로 PHP 공부를 다시 시작할려구여...
계속 좋은 강의 부탁드립니다. -
:+:_티제이_:+:
2002.08.01 18:53
조금씩 감이 잡혀가네요!! 좋은예감. -
heojeongmin
2002.09.10 01:20
3일이 ... 저두 ㅡ,.ㅡ -
fraise-*
2002.08.12 15:51
[amp설치.사용방법을 이해하는데만.-_- 3일이란.시간이.;;[풀썩._ _;] ] -
나무스타일
2002.12.24 00:57
이거 제대로 공부하려면 책 사서 봐야겠네요...암튼 두번째 꺼 읽기 완료! -
영미니
2003.01.24 18:11
MY SQL 어케 써요???
아이디랑 비번이 있음 갑하는 곳도 잇을 텐뎅 ㅜ.ㅜ -
정지희
2003.03.11 00:52
읽으면서도 이해안가네ㅠ_ㅠ;;; 윗분.. 나랑 같은 상황??ㅋ;; -
인지오
2003.04.22 10:09
php보면 asp를 해야겠다는 생각이 들고 또 asp를 보면 php로 오게 돼고.. 어렵다.
초등학생도 알정도로 쉬우면 안돼나 흑흑.. -
cacama
2003.04.22 16:20
흠냐.. amp설치에 일주.... 그나마 이건 한번에 이해했네..쩝.. 암튼 열심히 하겠슴다~~ -
way
2003.05.10 22:10
일단 여기까지는 이해가 됩니다....^^ -
카ol
2003.06.05 20:14
PHP 어디서 받나요?? -
마법구술
2003.06.08 12:31
아파처 가 뭔강?용, -
전창우
2003.08.30 23:07
진짜 공부 잘된다...이해도 쉽고...zero님 감사합니다.
꼭 열심히 공부해서 제로보드 사용 해야지 -
문듀스
2003.11.29 13:13
쬐끔 알겠네요 ^^; -
이상황
2004.02.03 00:04
아~~글쿤용~!!^^ -
hansol
2004.11.22 23:14
일단 mysql로 다시도전.. 오라클 설치만 2주... 맛보다가 결국 설치에러... 포기... -
서재범
2005.01.31 02:30
열심히.. 공부중.. -
자전거
2005.08.22 13:13
윽 다음장 보기가 두렵다.. -
DBLE
2005.11.25 00:53
잘 보았습니다... -
비심두
2006.01.07 22:44
열심히 배우고 공부를 하겠습니다 -
이진수
2006.04.15 04:24
감사합니다.. 잘 보고 갑니다.