10 장. DB 서버구축및운영 DBMS 의개념과용어를익힌다. 간단한 SQL 문법을학습한다. MySQL 서버를설치 / 운영한다.
관련용어 데이터 : 자료 테이블 : 데이터를표형식으로표현 레코드 : 테이블의행 필드또는컬럼 : 테이블의열 필드명 : 각필드의이름 데이터타입 : 각필드에입력할값의형식 학번이름주소연락처
관련용어 DB : 테이블의집합 DBMS : DB 들을관리하는소프트웨어 Primary Key : 레코드를식별하기위한유일한값을가지고비어있지않은필드 Foreign Key : 다른테이블의 Primary Key 와대응되는필드 SQL : DB 에서정보를얻거나생성및갱신하기위해정의된표준언어
DBMS 개념 DBMS(MySQL) shopping_db mysql 고객정보 (CUSTOMER) 구매정보 (PURCHASE) 아이디 (ID) hong dang ppuni john PK 이름 (NAME) 홍길동당탕이이뿌니존밴이 나이 (AGE) 22 23 30 28 주소 (ADDRESS) 경기충북서울강원 일련번호 (NO) 1 2 3 4 5 고객 ID (CUST_ID) hong ppuni john hong john 일자 (DATE) 01/22 02/11 02/11 02/22 03/11 제품 (PRODUCT) TV TV 냉장고세탁기비디오 test PK FK
필수 SQL 구문 DB 와관련된 SQL 문 DB 이름조회 SHOW DATABASES; 사용할 DB 지정 USE 데이터베이스명 ; DB 생성 CREATE DATABASE 데이터베이스명 ; DB 삭제 DROP DATABASE 데이터베이스명 ;
테이블운영과관련된 SQL 문 (1) 테이블이름조회 SHOW TABLES; 테이블구조 ( 형태 ) 조회 EXPLAIN 테이블명 ; 또는 DESC 테이블명 ; 테이블생성 CREATE TABLE 테이블명 ( 필드명필드타입, ); 테이블삭제 DROP TABLE 테이블명 ;
테이블운영과관련된 SQL 문 (2) 테이블수정 ALTER TABLE customer MODIFY name CHAR(20); ALTER TABLE customer CHANGE name fullname CHAR(10); ALTER TABLE customer ADD phone VARCHAR(20) AFTER name; ALTER TABLE customer DROP age;
레코드삽입 / 삭제 / 수정과관련된 SQL 문 레코드삽입 INSERT INTO 테이블 VALUES ( 값, ); INSERT INTO customer VALUES ( hong, 홍길동, 22, 서울 ); 레코드삭제 DELETE FROM 테이블 WHERE 조건 ; DELETE FROM customer WHERE id= hong ; 레코드수정 UPDATE 테이블 SET 필드 1 = 값 1, 필드 2 = 값 2,... WHERE 조건 ; UPDATE customer age=25 WHERE id= hong ;
테이블조회 SELECT 필드명 1, 필드명 2, FROM 테이블 WHERE 조건 ; SELECT * FROM customer; SELECT id, name FROM customer; SELECT id, name FROM customer WHERE id = john ; SELECT id, name FROM customer WHERE age > 20;
MySQL 설치 http://www.mysql.com 에접속하여 Server 와 Client 를다운로드후설치 다운로드 DeveloperZone Download MySQL Community Server Download Linux x86 generic RPM (statically linked) 설치 $ rpm Uvh MySQL*
데몬실행 $ service mysql start 보안설정변경 3306 번 tcp 포트를개방 (/etc/services) $ system-config-securitylevel
DB 사용자 MySQL 설치과정에서암호없는 root DB 사용자가생성. 암호변경은다음과같이한다. $ mysqladmin u root password password SQL 클라이언트로서버에접속 (1) 리눅스에서 $ mysql $ mysql u root p (2) 윈도즈에서클라이언트프로그램설치
윈도즈클라이언트프로그램설치 http://www.mysql.com 에서 Windows Essential을다운로드받아설치
Client Programs 에서다음 2 개를설치 MySQL Command Line Shell MySQL Command Line Utilities
설치디렉토리를 C: MySQL 로변경
설치완료후윈도즈에서 mysql 서버접속 DB 서버접속시 DB 사용자 root 는 root@ 클라이언트의 IP 주소형식으로접근 root@192.168.169.1 Host OS 의 IP 주소
서버에서 root 로접속하여현재 DB 사용자확인 $ mysql> use select u root mysql; user, -p host from user;
Host OS 192.168.169.1 에서 root 이름으로접속허용 mysql> grant all privileges on *.* to -> root @ 192.168.169.1 identified -> by password ;
Host OS 192.168.169.1 에서 root 이름으로 DB 서버접속
윈도즈에서 DB 서버에접속하여다음과같은 DB 를만들어라. DB 이름은
Windows 에서구축된데이터를 MySQL 에서사용 ODBC (Open Data Base Connectivity) 윈도우즈페도라서버 mydb MS ACCESS ODBC mysqld 고객정보
http://www.mysql.com 에서 ODBC Driver 설치 다운로드 DeveloperZone Download Drivers and Connectors Connector/ODBC - MySQL ODBC driver Connector/ODBC 5.1 다운로드 설치
윈도즈에서생성된테이블을전송할빈 DB 생성 mysql> create show databases; mydb;
DB 서버와 ODBC 의연결설정
이미설치한 MySQL ODBC 5.1 Driver 를추가
Connector/ODBC 설정
DB 지정 (DB 서버에접속하므로시간이걸림 )
DB 서버와 ODBC 의연결설정에성공 윈도즈의어떤응용프로그램에서든 ODBC 를통해 DB 서버의 MySQL 에접속가능
MS Access 를실행하여예제데이터베이스를연다.
예제 DB 내의 Customer 테이블내보내기
내보내기형식으로 ODBC 데이터베이스선택
이전에설정한 ODBC test 를선택
DB 서버에접속하여전송한테이블을확인
DB 서버에접속하여전송한테이블을확인
정리 DBMS 의개념 SQL 구문의이해 MySQL 설치