메뉴 바로가기 검색 및 카테고리 바로가기 본문 바로가기

한빛출판네트워크

MySQL 시스템 관리와 프로그래밍: 자바, PHP, 펄, C, 파이썬, 개정판

MySQL 시스템 관리와 프로그래밍: 자바, PHP, 펄, C, 파이썬, 개정판

한빛미디어

번역서

절판

  • 저자 : 조지 리스 , 랜디 제이 야거 , 팀 킹 , 휴 윌리엄스
  • 번역 : 서환수
  • 출간 : 2002-10-08
  • 페이지 : 616 쪽
  • ISBN : 8979141939
  • 물류코드 :1193
  • 초급 초중급 중급 중고급 고급
4점 (5명)
좋아요 : 17
DB 설계부터 퍼포먼스 튜닝까지 한번에 훑기
     다양한 언어와 함께 하면 더욱 강력해지는 MySQL

이 책은 여러분이 MySQL에 대해 알고 싶어하는 모든 내용을 담고 있다. MySQL DBA이자 개발자인 나는 항상 뭔가를 찾아야 할 때 이 책을 활용한다. -아마존 독자서평 중에서

오픈 소스 데이터베이스인 MySQL은 이제 세계에서 가장 많이 쓰이는 서버 소프트웨어 패키지 중 하나가 되었다. MySQL은 비교적 적은 메모리와 느린 CPU로도 다양한 기능을 제공하는 훌륭한 데이터베이스 엔진이다.

따라서 수많은 리눅스, 유닉스 서버뿐 아니라 윈도우 계열의 서버에서도 MySQL을 데이터베이스 엔진으로 사용하게 되었다. 특히 속도가 빠르고, 사용하기 쉬워 웹사이트의 백엔드로도 많이 쓰인다. LAMP(Linux, Apache, MySQL 그리고 Perl, Python 또는 PHP)라고 하는 시스템 구성의 "M"에 해당하는 것이 바로 MySQL이다. 그리고 MySQL에서는 ANSI 표준을 지원하는 SQL을 사용하기 때문에 PostgreSQL이나 오라클, 사이베이스와 같이 다양한 기능을 제공하는 데이터베이스로 바꾸는 작업도 그리 어렵지 않다.

이 책에서는 MySQL 관리 또는 프로그래밍을 처음 접하는 독자들을 위해 쉽고 기본적인 정보에서 보안, 최적화, 프로그램 설계와 같이 다소 어려운 주제까지 다룬다. 새로 집필한 2판에서는 기존 1판의 장점을 살리면서 MySQL 4.0.1에 대한 최신 정보, 기타 프로그래밍 언어 인터페이스 관련 정보 등을 새롭게 추가했다.

주요 내용
  • MySQL의 설치, 설정 및 초기 데이터베이스 관리 방법
  • SQL
  • 데이터베이스 설계 방법
  • 최적화
  • 보안
  • C 프로그래밍
  • DBI 모듈을 이용한 펄 프로그래밍
  • PHP 스크립팅
  • Python DB-API 사용법
  • 데이터베이스에 독립적이고 이식성 좋은 자바 프로그램을 만드는 방법
조지 리스 저자

조지 리스

저자는 블루밍턴에서 정보 시스템 컨설턴트로 일하고 있다. 인터넷에서 가장 오래된 LPMuds 중 하나인 Nightmare라는 LPMuds를 운영하고 있으며, 그 곳에서 다른 머드 개발에서 많이 사용되는 Nightmare 객체 라이브러리를 개발하였다. 또한 그의 무료 저서인 LPC_Basics의 『Intermediate LPC』는 LPC를 배우려는 새로운 머드 프로그래머들에게 널리 읽히고 있다. 이밖에도 세계 최초의 JDBC 드라이버인 mSQL-JDBC를 비롯하여, LPC나 자바를 위해 무료 인터넷 클래스 라이브러리를 개발해 왔다. 그의 홈페이지는 http://www.imaginary.com/~borg이다.
랜디 제이 야거 저자

랜디 제이 야거

미시간 앤 아버에 있는 웹 엘리트의 수석 설계사로 일하고 있으며, 대부분의 시간을 오래 전에 해결되었어야 할 비즈니스 문제를 해결하는 첨단 솔루션을 개발하며 보낸다.
팀 킹 저자

팀 킹

미네소타 공과대학 전산학과를 졸업했으며, 대학 시절에 "VI 좀비"라는 vi 매니아 그룹의 리더 역할을 하면서 유닉스와 vi를 가르치기도 했다. 지금은 캘리포니아 샌프란시스코에서 데이터베이스와 웹 기술을 주로 담당하는 소프트웨어 컨설턴트로 활동하고 있다.
휴 윌리엄스 저자

휴 윌리엄스

1994년부터 호주 멜버른에 있는 RMIT 대학의 전산 및 IT 학과의 교수로 재직중이다. 요즘은 파일 구조, 데이터베이스 시스템, 웹 데이터베이스 애플리케이션 및 연구 방법에 대한 강의를 하고 있다. 검색 엔진, 바이오인포매틱스, 자료 구조 설계 분야에 관심이 많다.
서환수 역자

서환수

서울대학교 물리학과에서 학사, 박사 학위를 받았고 지금은 삼성종합기술원에서 물리학을 연구하고 있다. 한빛미디어에서 『Head First Java』, 『Programming Challenges: 알고리즘 트레이닝 북』, 『프로그래머로 사는 법』, 『슬라이드올로지』를 비롯한 여러 권의 책을 번역했다.

1부. 소개

1장. MySQL
     관계형 데이터베이스
     MySQL의 역사
     MySQL 설계
     MySQL의 특징
     MySQL 애플리케이션
     독자가 얻는 것

2장. 설치
     준비
     유닉스 설치
     윈도우 설치

3장. MySQL의 SQL
     SQL 기초
     데이터베이스 생성
     테이블 관리
     MySQL 데이터 유형
     인덱싱
     데이터 관리
     질의
     SQL 연산자
     고급 기능

4장, 데이터베이스 관리
     설정
     서버 시작 및 종료
     로그
     백업
     복구
     테이블 관리 및 복구

2부. MySQL 관리

5장. 퍼포먼스 튜닝
     퍼포먼스 튜닝에 대한 접근
     애플리케이션 튜닝
     데이터베이스 서버 튜닝
     운영체제/하드웨어 튜닝

6장. 보안
     데이터베이스 보안
     시스템 보안
     애플리케이션 보안

7장. 데이터베이스 설계
     데이터베이스 설계의 기초
     정규화
     논리적인 데이터 모델링 방법론
     물리적인 데이터베이스 설계

3부. MySQL 프로그래밍

8장. 데이터베이스 애플리케이션
     아키텍처
     접속과 트랜잭션
     객체/관계형 모델링

9장. 펄
     DBI 소개
     DBI와 CGI
     관리가 용이한 펄 프로그램을 위한 일반 모델

10장. 파이썬
     DB-API
     MySQL 전용 기능
     DB-API 응용

11장. PHP
     PHP 소개
     PHP 설치
     PHP를 이용한 MySQL DBMS 액세스
     사용자 데이터 보안
     세션 관리
     PHP를 이용한 데이터 저장
     HTML <form> 환경 사용법
     참고 자료

12장. C API
     API 개요
     C API 실전
     고급 주제

13장. 자바
     JDBC API
     간단한 데이터베이스 액세스
     동적 데이터베이스 액세스
     방명록 서블릿

14장. MySQL 확장
     사용자 정의 함수
     대체 문자 세트

4부. MySQL 레퍼런스

15장. MySQL에서의 SQL 문법
     기본 몬법
     SQL 명령

16장. MySQL 데이터 유형
     숫자 데이터 유형
     문자열 데이터 유형
     날짜 데이터 유형
     복합 데이터 유형

17장. 연산자와 함수
     연산자
     복합 데이터 유형

18장. MySQL PHP API 레퍼런스
     데이터 유형
     함수

19장. C 레퍼런스
     데이터 유형
     함수

20장. 파이썬 DB-API
     모듈: MySQLdb

MySql DB서버를 두고 이걸 관리하는 서버프로그램을 작성할 때 유용하게 보았던 책입니다.

필요한 부분이었던 쿼리문과 C Api를 이용하여 서버프로그램 작성할 때 많은 도움을 받았습니다.

책 내용에는 완전한 하나의 MySql 서버를 구축하여 웹과 연동시키는 것에 대해서 설명이 되어

있지만 꼭 거기에 국한되지 않습니다.

서버 개발자나 웹프로그래머들에게는 참고할 사항이 정말 많다고 생각합니다...

MySQL이란 DB를 쓰는 사람들은



무엇이 장점으로 쓰는 것일까?



단지 무료로 쓸 수 있기 때문에?



그건 아니다. MySQL은 절대 공짜가 아니다.



그럼 왜 MySQL을 사용하는가?



첫번째는 MySQL은 오라클 등에 비교하면 정말 가볍다!!



오라클로 웹 게시판을 돌리는건 도끼로 바늘깎기다.



두번재는 MySQL은 쉽다.



오라클 사용법 배울 시간이면 MySQL은 마스터한다;



세번째는 MySQL은 업데이트가 정말 잘된다!!



그래서 조금만 오류가 있어도 금방 고치고



사용자에게 불편한 것들은 전부 바뀌어 간다.



이 책은 최소한 웹에서 DB를 사용해 보고 싶은 사람이라면



꽤 좋은 자료들을 전해준다.



물론 버젼이 최신 버젼도 아니고



JSP 등의 정보도 없긴 하지만



이 책으로 웹에서 DB를 사용하고 잘 쓰게 된다면



이후에 다른 것들도 쉽게 배우고 쓸 수 있을 것이다.

MySQL은 국내에서는 APM(Apache, PHP, MySQL)로, 외국에서는 LAMP(Linux, Apache, MySQL, PHP)로 불리는 웹 환경에서 중요한 위치를 차지하고 있는 상당히 쓸만한(빠르고 오픈 소스이며 무료로 제공됨) DBMS 이다. 개인 홈페이지, 소규모의 프로젝트 또는 회사 홈페이지 등을 구축하는데 오라클이나 MSSQL 같은 고가의 DBMS는 적절치 않다. 그래서 많이 사용되는 것이 MySQL, mSQL, PostgreSQL 등이 있으며, mSQL은 최근들어 국내에서는 별로 사용되고 있지 않는 것 같다. 이 책은 가장 대중적인 MySQL에 대한 책으로서, 이전버전에서 다루었던 mSQL 은 제외하고 MySQL만을 다루고 있다.



우선 1부와 2부에서는 MySQL의 설치와 명령어, 로그/백업/복구 등 MySQL 시스템 자체에 대한 설명을 많이 포함하고 있다. MySQL은 그 기능이 대형 DBMS에 비해서 그렇게 복잡하지 않기 때문에 1부와 2부에 있는 내용이면 MySQL을 관리하고 필요한 데이터를 데이터베이스에서 추출해 내는데 별 문제가 없을 것이라 생각된다. 다만 MySQL 자체에 대한 서적이기 때문에 2부에서 소개하고 있는 데이터베이스의 설계와 같은 부분은 그다지 내용의 깊이가 없었다. 또한 MySQL의 트랜잭션 지원버전인 MySQL-MAX에 대한 부분은 간단하게 언급만 하고 넘어가고 있는 부분이 아쉬웠다.



3부에서는 MySQL 프로그래밍이라는 이름으로 되어 있는데, 내용은 PHP, Python, Perl, JAVA 등으로 MySQL 을 사용하는 방법에 대한 것들이다. 전체적으로는 각 언어의 MySQL API를 이용해서 DB에 접속하는 법, 쿼리하는 법 등을 다루고 있다. 아쉬운 점이라고 한다면 마지막을 차지하고 있는 ‘방명록 서블릿’ 부분이 별 내용설명이나 코드 없이 아주 간단한 설명과 URL 하나뿐이라는 점이다. 약간 무성의하는 느낌이 들기까지 하는 부분인데, 차라리 빼버렸으면 좋았을지도 모르겠다. 3부의 마지막에는 MySQL에서 제공하지 않는 stored procedure 대신에 MySQL을 확장하는 방법등에 대해서 소개를 하고 있다.



4부는 레퍼런스가 실려있으며 각종 데이터 타입, 연산자, 함수, 그리고 PHP/Python/C의 MySQL API에 대해서 다루고 있다. JAVA 의 경우는 JDBC의 방대한 사이즈 때문인지 지면할애를 하지 않고 있어서 약간은 아쉬웠다.



원서 자체가 그리 어렵거나 한 내용이 아니었고 번역상태도 전체적으로 무난하게 잘 되어있다. 다만 한 두 군데 정도의 번역이 약간 부적절한 것 같았는데, 예를 들어 본문의 3부의 내용중 thin client와 fat client를 설명하는 부분이다. 이 두 용어에 대해 ‘뚱뚱한 클라이언트’와 ‘야윈 클라이언트’라는 표현을 썼는데, 그냥 원래의 용어 그대로 씬 클라이언트와 팻 클라이언트라고 하는 것이 더 나았을 것 같다.



MySQL을 개인 홈페이지 운영에 사용하고 있거나 혹은 프로젝트나 회사 인트라넷 등에 사용하고 있는 사용자라면 가까운 곳에 두고 항상 참고할 수 있는 서적인 것 같다.

“MySQL에서 rollback이 되지 않는 다는 사실을 알고 기절하는 줄 알았다.”

“트랜젝션도 지원되지 않는 MySQL을 오라클이나 인포믹스, MS-SQL 등과 비교한다기 보다는 MS-Access 정도와 비교해야 하지 않겠느냐.”



오라클에 익숙한 사람들이 MySQL에 대해 위와 같이 말하는 경우를 많이 들어보았을 것이다. 물론 MySQL은 많이 사용되는 기본적인 기능을 보다 빠르게 실행하기 위해 상용 DBMS가 지원하고 있는 여러 기능들을 지원하지 않는 다는 것을 알고 있지만, 가끔 그 일부 기능들에 대해 아쉬움을 갖게 되는 것도 당연한 이치라고 할 수 있겠다.



하지만 웹 서비스를 구축하는데 있어서 MySQL은 가장 가볍고, 사용하기 편리하며, 좋은 성능(특히 가격 대비 성능)을 낸다는 것에 다른 이견이 있는 사람이 없을 것이다. (물론 트랜젝션도 지원이 된다. ^^;;) 한편, 이 책을 선택한 이유는 내가 너무 MySQL을 편식하고 있다는 생각을 하게 되었기 때문이다. MySQL을 처음 접하게 된 것이 A.P.M을 통해서였기 때문인지 MySQL을 PHP프로그래밍을 위한 DBMS로만 이용해 왔고, 이 이상도 그 이하도 아니라고 생각하게 된 것 같다.



MySQL은 대부분 소개되기를 독자적인 DBMS라기 보다는 A.P.M, 즉 리눅스 환경에서 아파치, PHP와 함께 웹사이트를 구축하는데 있어서 빠질 수 없는 조합으로 알려지게 된 것 같다. 실제로 많은 웹 프로그래머들이 MySQL을 따로 배우거나 별도의 책을 구해 공부하기 보다는 PHP책에 함께 소개된 내용으로 공부하게 된다. 그에 반해 이 책은 MySQL을 A.P.M환경의 DBMS 파트로서가 아니라, 그 자체를 소개하고 있다.



책은 크게 4부로 나누어져 있다.

1부에서는 MySQL의 기본적인 소개와 설치, SQL 등의 개념 등으로 구성되어 있고, 2부는 MySQL 관리 부분으로써 퍼포먼스 튜닝과 보안, 데이터베이스 설계에 대해 언급하고 있다. 3부는 이 책을 선택하게 된 주된 이유라 할 수 있는 MySQL 프로그래밍에 관한 부분으로 구성되어 있는데, 펄과 파이썬, PHP, C API, 자바 등의 프로그래밍에 있어서 MySQL을 활용하는 방법에 대해 설명되어 있다. 4부는 레퍼런스에 해당하는 부분으로 SQL의 기본 문법과 MySQL 데이터 유형, 연산자와 함수, MySQL PHP API 레퍼런스, C 레퍼런스, 파이썬 DB-API에 관한 부분으로 구성되어 있다.



MySQL을 처음 접하는 사용자라면 1부부터 차근차근 읽어 나가는 것이 도움이 되겠지만, 어느 정도 MySQL을 사용해 본 사람이라면, 3부부터 읽어 나가도 무방하다는 생각이다. 그런데 한편으로 책의 타깃이 참 애매모호하다. MySQL을 어느 정도 알고 있는 사람들한테는 책의 절반에 해당하는 1.2장이 별로 의미가 없을 것이며, 또 여러 가지 애플리케이션 제작 환경에 대해 궁금해 하는 독자들을 상대하기엔 부제에 해당하는 :자바, PHP, 펄, C, 파이썬 부분에 해당하는 3,4장이 좀 빈약하다는 느낌을 지울 수가 없었다. 결국 나는 오라클이나 기타 여느 DBMS와 C, 자바, 파이썬, 펄 등에 대해 어느 정도 기본이 있는 사람이 MySQL을 처음 접하고자 할 때, MySQL의 가능성을 살펴보는데 필요한 책이라는 결론을 내렸다.



국내에는 MySQL을 주제로 출판된 책이 많지 않다. 그도 그럴 것이, MySQL만 가지고 어떤 의미를 가지기 보다는, PHP와 함께 웹에서, Java나 파이썬, C와 함께 애플리케이션을 위한 DB로써 활용되기 때문이다. 그리고 그와 관련된 내용은 MySQL을 통해 배우기 보다는 해당 프로그래밍 언어를 통해 MySQL로 접근하는 형태로 안내되고 있기 때문이 아닐까.



약간은 수박 겉핥기 식의 Wrox의 Beginning시리즈는 보는듯한 아쉬움이 있으나, 나름대로 MySQL에 대해 정리해 볼 수 있는 기회가 된 것 같다.

내가 "MySQL 시스템 관리와 프로그래밍 : 자바, PHP, 펄, C, 파이썬"을 빌라 관리실 아저씨로부터 받았을 때, 맨 처음 떠오른 감정은 "자괴감"이였다. 내가 이런 책을 사게 되다니. 난 결코 MySQL 관련된 책을 사지 않을 거라고 생각했기 때문이다. 나는 전산 전공자가 아니라 회사에 들어가면서 전산을 시작하게 되었다. 그리고 대규모의 상업용 애플리케이션을 개발하면서 MySQL를 사용하지 않았다. 직장에서 접하는 관계형 데이터베이스는 오라클이 전부이고, 교육받은 것으로 범위를 넓혀도 MS사의 SQL2000 뿐이다. 내가 MySQL를 처음 접하게 된 것은 홈페이지 호스팅을 받기 시작하면서이다. 오라클에 익숙한 나에게 MySQL은 데이터베이스가 아니라 무슨 애들 장난감 같다는 느낌이 강했다. 그렇게 감탄하던 대부분의 기능들은 MySQL에서는 지원되지 않았다. 몇 가지 되지 않는 기능을 굳이 책을 살 필요가 있을까? 또한 PHP 책을 샀는데, 기본적인 설명은 나와 있었고, 그것으로 충분했다. 그런데 왜 MySQL 관련 책을 사게 되었을까?



뭐 거창한 이유가 있었던 것은 아니다. MySQL에 대해 체계적으로 알아야 봐야 되겠다는 생각이 들어서였다. 그리고 분명 체계적으로 알 필요가 있다. 이 책은 여러 프로그래밍 언어와 MySQL이 어떻게 사용되어야 하는지 보여주고 있다. 이 부분은 약간 자세하긴 하지만, 이 책의 일부일 뿐더러, MySQL의 일부이다. 내가 이전에는 결코 생각하지 못했던 설정, 백업, 로그, 복구, 퍼포먼스 튜닝, 보안 등 데이터베이스의 대부분의 기능을 제공하고 있다. 그런 면에서 이 책은 MySQL에 대한 시각을 넓혀준다. 그러면서도 직관적으로 알 수 있는 다양한 예제를 통하여 마치 요리책처럼 사용될 수 있다. 나도 이 책의 전부를 보지 않았다. 1부 소개는 대충, 2부 MySQL 관리는 꼼꼼히, 3부 MySQL 프로그래밍은 콕 집어서, 4부는 휙휙.



오라클에 비하면 MySQL은 분명 왜소해 보인다. 그렇다고 MySQL이 나쁘다는 것은 아니다. 처음 손쉽게 관계형 데이터베이스를 사용하고자 하는 사람, 프로그래밍 언어를 배우기 위해 데이터베이스가 필요한 사람, 자신만의 크지 않은 사이트를 구축하고자 하는 사람, 또 나처럼 시스템의 사양이 좋지 않은 사람에게 MySQL은 최고의 솔루션을 제공할 것이며, 이 책은 최고의 설명을 제공할 것이다. 결코 MySQL를 얕보지 마라.

결제하기
• 문화비 소득공제 가능
• 배송료 : 2,000원배송료란?

배송료 안내

  • 20,000원 이상 구매시 도서 배송 무료
  • 브론즈, 실버, 골드회원이 주문하신 경우 무료배송

무료배송 상품을 포함하여 주문하신 경우에는 구매금액에 관계없이 무료로 배송해 드립니다.

닫기

리뷰쓰기

닫기
* 도서명 :
MySQL 시스템 관리와 프로그래밍: 자바, PHP, 펄, C, 파이썬, 개정판
* 제목 :
* 별점평가
* 내용 :

* 리뷰 작성시 유의사항

글이나 이미지/사진 저작권 등 다른 사람의 권리를 침해하거나 명예를 훼손하는 게시물은 이용약관 및 관련법률에 의해 제재를 받을 수 있습니다.

1. 특히 뉴스/언론사 기사를 전문 또는 부분적으로 '허락없이' 갖고 와서는 안됩니다 (출처를 밝히는 경우에도 안됨).
2. 저작권자의 허락을 받지 않은 콘텐츠의 무단 사용은 저작권자의 권리를 침해하는 행위로, 이에 대한 법적 책임을 지게 될 수 있습니다.

오탈자 등록

닫기
* 도서명 :
MySQL 시스템 관리와 프로그래밍: 자바, PHP, 펄, C, 파이썬, 개정판
* 구분 :
* 상품 버전
종이책 PDF ePub
* 페이지 :
* 위치정보 :
* 내용 :

도서 인증

닫기
도서명*
MySQL 시스템 관리와 프로그래밍: 자바, PHP, 펄, C, 파이썬, 개정판
구입처*
구입일*
부가기호*
부가기호 안내

* 온라인 또는 오프라인 서점에서 구입한 도서를 인증하면 마일리지 500점을 드립니다.

* 도서인증은 일 3권, 월 10권, 년 50권으로 제한되며 절판도서, eBook 등 일부 도서는 인증이 제한됩니다.

* 구입하지 않고, 허위로 도서 인증을 한 것으로 판단되면 웹사이트 이용이 제한될 수 있습니다.

닫기

해당 상품을 장바구니에 담았습니다.이미 장바구니에 추가된 상품입니다.
장바구니로 이동하시겠습니까?

자료실