PowerPoint 프레젠테이션



Similar documents
PowerPoint 프레젠테이션

본문서는 초급자들을 대상으로 최대한 쉽게 작성하였습니다. 본문서에서는 설치방법만 기술했으며 자세한 설정방법은 검색을 통하시기 바랍니다. 1. 설치개요 워드프레스는 블로그 형태의 홈페이지를 빠르게 만들수 있게 해 주는 프로그램입니다. 다양한 기능을 하는 플러그인과 디자인

Microsoft PowerPoint - 10Àå.ppt

MySQL-Ch10

8 장데이터베이스 8.1 기본개념 - 데이터베이스 : 데이터를조직적으로구조화한집합 (cf. 엑셀파일 ) - 테이블 : 데이터의기록형식 (cf. 엑셀시트의첫줄 ) - 필드 : 같은종류의데이터 (cf. 엑셀시트의각칸 ) - 레코드 : 데이터내용 (cf. 엑셀시트의한줄 )

10.ppt

Microsoft Word - ntasFrameBuilderInstallGuide2.5.doc

Windows 8에서 BioStar 1 설치하기

윈도우시스템프로그래밍

DBMS & SQL Server Installation Database Laboratory

1. efolder 시스템구성 A. DB B. apache - mod-perl - PHP C. SphinxSearch ( 검색서비스 ) D. File Storage 2. efolder 설치순서 A. DB (MySQL) B. efolder Service - efolder

@OneToOne(cascade = = "addr_id") private Addr addr; public Emp(String ename, Addr addr) { this.ename = ename; this.a

Snort Install Manual Ad2m VMware libnet tar.gz DebianOS libpcap tar.gz Putty snort tar.gz WinSCP snort rules 1. 첫번째로네트워크설정 1) ifconf

Slide 1

PowerPoint 프레젠테이션

윈도우시스템프로그래밍

LXR 설치 및 사용법.doc

13주-14주proc.PDF

슬라이드 1

DocsPin_Korean.pages

I T C o t e n s P r o v i d e r h t t p : / / w w w. h a n b i t b o o k. c o. k r

MySQL-Ch05

ORANGE FOR ORACLE V4.0 INSTALLATION GUIDE (Online Upgrade) ORANGE CONFIGURATION ADMIN O

MySQL-.. 1

강의 개요

Relational Model

PowerPoint 프레젠테이션

Page 1 / 솔루션소개 Magento Magento 는강력한기능을제공하는오픈소스쇼핑몰제작관리도구입니다. 커스터마이징가 능한글로벌쇼핑몰구축시에사용을권장하며, 자체마켓플레이스를보유하고있을정도 로다양한기능을유 / 무료로추가할수있습니다. 2. 설치버전 하기명시된

<C0CCBCBCBFB52DC1A4B4EBBFF82DBCAEBBE7B3EDB9AE2D D382E687770>

목차 BUG 문법에맞지않는질의문수행시, 에러메시지에질의문의일부만보여주는문제를수정합니다... 3 BUG ROUND, TRUNC 함수에서 DATE 포맷 IW 를추가지원합니다... 5 BUG ROLLUP/CUBE 절을포함하는질의는 SUBQUE

Page 1 / 솔루션소개 WordPress WordPress는세계에서가장인기있는오픈소스웹사이트제작관리도구입니다. 웹표준, 접근성, SEO( 검색엔진최적화 ) 등의강점이있으며다양한테마와확장기능을제공합니다. 2. 설치버전 하기명시된버전은권장설치버전이며필요시다른

SQL Developer Connect to TimesTen 유니원아이앤씨 DB 기술지원팀 2010 년 07 월 28 일 문서정보 프로젝트명 SQL Developer Connect to TimesTen 서브시스템명 버전 1.0 문서명 작성일 작성자

구축환경 OS : Windows 7 그외 OS 의경우교재 p26-40 참조 Windows 의다른버전은조금다르게나타날수있음 Browser : Google Chrome 다른브라우저를사용해도별차이없으나추후수업의모든과정은크롬사용 한

1) 인증서만들기 ssl]# cat > // 설명 : 발급받은인증서 / 개인키파일을한파일로저장합니다. ( 저장방법 : cat [ 개인키

Microsoft Word - cents_yum 으로 APM_zend_optimizer_정현호_.doc

휠세미나3 ver0.4

chapter1,2.doc

1217 WebTrafMon II

PowerPoint 프레젠테이션

단계

쉽게 풀어쓴 C 프로그래밊

28 THE ASIAN JOURNAL OF TEX [2] ko.tex [5]

1) 인증서만들기 ssl]# cat > // 설명 : 발급받은인증서 / 개인키파일을한파일로저장합니다. ( 저장방법 : cat [ 개인키

Microsoft PowerPoint Python-DB

Copyright 2012, Oracle and/or its affiliates. All rights reserved.,.,,,,,,,,,,,,.,...,. U.S. GOVERNMENT END USERS. Oracle programs, including any oper

문서 템플릿

Remote UI Guide

TITLE

< FC8A8C6E4C0CCC1F620B0B3B9DF20BAB8BEC8B0A1C0CCB5E5C3D6C1BE28C0FAC0DBB1C7BBE8C1A6292E687770>

게시판 스팸 실시간 차단 시스템

PowerPoint 프레젠테이션

목차 BUG offline replicator 에서유효하지않은로그를읽을경우비정상종료할수있다... 3 BUG 각 partition 이서로다른 tablespace 를가지고, column type 이 CLOB 이며, 해당 table 을 truncate

Sena Technologies, Inc. HelloDevice Super 1.1.0

Microsoft PowerPoint - 07-EDU-Apache-9-1.ppt

Microsoft PowerPoint - web-part03-ch19-node.js기본.pptx

Spring Boot/JDBC JdbcTemplate/CRUD 예제

PowerPoint Template

FileMaker ODBC and JDBC Guide

PWR PWR HDD HDD USB USB Quick Network Setup Guide xdsl/cable Modem PC DVR 1~3 1.. DVR DVR IP xdsl Cable xdsl Cable PC PC DDNS (

(Humphery Kim) RAD Studio : h=p://tech.devgear.co.kr/ : h=p://blog.hjf.pe.kr/ Facebook : h=p://d.com/hjfactory :

Chapter 1

Oracle Database 10g: Self-Managing Database DB TSC

Raspbian 설치 라즈비안 OS (Raspbian OS) 라즈베리파이 3 Model B USB 마우스 USB 키보드 마이크로 SD 카드 마이크로 SD 카드리더기 HDM I 케이블모니터

Copyright 2004 Sun Microsystems, Inc Network Circle, Santa Clara, CA U.S.A..,,. Sun. Sun. Berkeley BSD. UNIX X/Open Company, Ltd.. Sun, Su

untitled

Solaris Express Developer Edition

Microsoft Word - Windows_apahce_php_CUBRID2008

PowerPoint 프레젠테이션

슬라이드 1

소개 TeraStation 을 구입해 주셔서 감사합니다! 이 사용 설명서는 TeraStation 구성 정보를 제공합니다. 제품은 계속 업데이트되므로, 이 설명서의 이미지 및 텍스트는 사용자가 보유 중인 TeraStation 에 표시 된 이미지 및 텍스트와 약간 다를 수

< 목차 > Ⅰ. 개요 3 Ⅱ. 실시간스팸차단리스트 (RBL) ( 간편설정 ) 4 1. 메일서버 (Exchange Server 2007) 설정변경 4 2. 스팸차단테스트 10

USB USB DV25 DV25 REC SRN-475S REC SRN-475S LAN POWER LAN POWER Quick Network Setup Guide xdsl/cable Modem PC DVR 1~3 1.. DVR DVR IP xdsl Cable xdsl C

Lec. 2: MySQL and RMySQL

PRO1_09E [읽기 전용]

歯sql_tuning2

Simplify your Job Automatic Storage Management DB TSC

NoSQL

PowerPoint 프레젠테이션

/chroot/lib/ /chroot/etc/

Connection 8 22 UniSQLConnection / / 9 3 UniSQL OID SET

Assign an IP Address and Access the Video Stream - Installation Guide

<49534F C0CEC1F520BBE7C8C4BDC9BBE720C4C1BCB3C6C320B9D D20BDC3BDBAC5DB20B0EDB5B5C8AD20C1A6BEC8BFE4C3BBBCAD2E687770>

90

InsertColumnNonNullableError(#colName) 에해당하는메시지출력 존재하지않는컬럼에값을삽입하려고할경우, InsertColumnExistenceError(#colName) 에해당하는메시지출력 실행결과가 primary key 제약에위배된다면, Ins

B _00_Ko_p1-p51.indd

목 차

Microsoft Word - WETHXCNIMNSI.doc

6주차.key

작성자 : 기술지원부 김 삼 수

FileMaker 15 ODBC 및 JDBC 설명서

MAX+plus II Getting Started - 무작정따라하기

슬라이드 1

PowerPoint 프레젠테이션

untitled

<C1A62038B0AD20B0ADC0C7B3EBC6AE2E687770>

1. Windows 설치 (Client 설치 ) 원하는위치에다운받은발송클라이언트압축파일을해제합니다. Step 2. /conf/config.xml 파일수정 conf 폴더에서 config.xml 파일을텍스트에디터를이용하여 Open 합니다. config.xml 파일에서, 아

Sena Device Server Serial/IP TM Version

R50_51_kor_ch1

목차 BUG DEQUEUE 의 WAIT TIME 이 1 초미만인경우, 설정한시간만큼대기하지않는문제가있습니다... 3 BUG [qp-select-pvo] group by 표현식에있는컬럼을참조하는집합연산이존재하지않으면결괏값오류가발생할수있습니다... 4

APOGEE Insight_KR_Base_3P11

Transcription:

Chapter 13. DB 서버와 웹 서버

00. 개요 01. 데이터베이스 02. MariaDB 설치와 사용 03. 웹 서버 설치와 사용

데이터베이스가 무엇인지 설명할 수 있다. 관계형 데이터베이스와 관련된 용어를 이해하고 설명할 수 있다. 기본적인 SQL 문법을 이해하고 사용할 수 있다. MariaDB를 설치할 수 있다. MariaDB에서 데이터베이스와 테이블을 생성하고, 데이터를 입력 및 검색할 수 있다. 아파치 웹 서버를 설치하고 외부에서 접속하도록 설정할 수 있다. 시스템 디렉터리와 사용자 디렉터리에 웹 사이트를 구축할 수 있다. APM이 연동하도록 설치할 수 있다. 공개 게시판을 설치하고 웹 사이트에 연결할 수 있다.

리눅스 실습 스터디 맵

00 개요 [그림 13-1] 13장의 내용 구성

01 데이터베이스 관계형 데이터베이스의 기본 개념 데이터베이스: 서로 관련성을 가진 데이터들을 데이터 간의 중복성을 최소화해서 체계적으로 모아놓은 것 관계형 데이터베이스는 데이터를 테이블(표)로 표현 관계형 데이터베이스 관련 용어 데이터 : 각 항목에 저장되는 값이다. 테이블 : 데이터를 체계화하여 행과 열의 형태로 구성한 것으로 테이블 이름을 붙인다. 데이터베이스 : 관련 있는 데이터를 체계적으로 저장한 것으로 데이터는 테이블 형태로 저장된다. 데이터베이스 에는 하나 이상의 테이블이 있을 수 있다. 데이터베이스 이름을 붙인다. 필드 : 테이블의 열을 의미하며 칼럼이라고도 한다. 레코드 : 테이블에 저장한 한 행의 정보를 의미하며 터플(tuple)이라고도 한다. 한 행에는 여러 필드의 값이 저장 될 수 있다. 키 : 레코드를 구성하는 필드에서 각 레코드를 구분할 수 있는 필드 값을 뜻한다. 예를 들어 학생 데이터를 구성 하는 레코드라면 학번 필드가 키가 될 수 있다. 키로 선택된 필드의 값은 중복될 수 없다. 키는 기본 키(primary key)와 그 외 다른 키들이 있을 수 있다.

01 데이터베이스 관계형 데이터베이스의 예 학생 데이터베이스: 학생 신상 데이터와 성적 데이터

01 데이터베이스 SQL의 기초 SQL(structured query language) 관계형 데이터베이스를 생성, 테이블 생성, 데이터 입력/삭제/수정 등 데이터베이스 관련 SQL 1 데이터베이스 보기 : 기존에 있는 데이터베이스의 목록을 출력 show databases; 2 데이터베이스 생성 : 새로운 데이터베이스를 생성 create database 데이터베이스 이름; 예 create database st_db; 3 데이터베이스 삭제 : 지정한 데이터베이스를 삭제 drop database 데이터베이스 이름; 4 사용할 데이터베이스 지정 use 데이터베이스 이름;

01 데이터베이스 테이블 관련 SQL 1 테이블 보기 : 현재 데이터베이스에 있는 테이블의 목록을 출력 show tables; 2 테이블 생성 : 새로운 테이블을 생성 create table 테이블 이름(필드명 1 필드 자료형 1, 필드명 2 필드 자료형 2,...); create table st_info (ST_ID int, NAME varchar(20), DEPT varchar(25));

01 데이터베이스 테이블 관련 SQL 3 테이블 구조 보기 : 지정한 테이블의 구조를 출력 explain 테이블 이름; 4 explain 테이블 이름; alter table 테이블 이름 수정 명령; 테이블에 필드 추가 : alter table 테이블 이름 add 필드명 자료형 예 : alter table st_info add AGE int; 필드의 자료형 변경 : alter table 테이블 이름 modify 필드명 자료형 예 : alter table st_info modify AGE float; 필드 삭제 : alter table 테이블 이름 drop column 필드명 예 : alter table st_info drop column AGE; 기본 키 추가 : alter table 테이블 이름 add constraint 제약 조건명 primary key (필드명) 예 : alter table st_info add constraint pk_stinfo primary key (ST_ID); 제약 조건명은 사용자가 정하면 된다. 처음 테이블을 생성하면서 기본 키를 지정할 때 다음과 같이 한다. 예 : create table st_info (ST_ID int Not NULL primary key, NAME varchar(20), DEPT varchar(25)); 5 테이블 삭제 : 지정한 테이블을 삭제 drop table 테이블 이름;

01 데이터베이스 레코드 삽입 삭제 수정 관련 SQL 1 레코드 삽입 : 테이블에 새로운 레코드를 추가 insert into 테이블 이름 values (값 1, 값 2,...); 예 : insert into st_info values (2010401, 이길동, Game ); 2 레코드 수정 : 기존 레코드를 수정 update 테이블 이름 set 필드명 1=수정할 값 1, 필드명 2=수정할 값 2,... where 조건; 예 : update st_info set DEPT= Computer where ST_ID=201403; 3 레코드 삭제 : 테이블에서 해당 레코드를 삭제 delete from 테이블 이름 where 조건; 예 : delete from st_info where ST_ID=201403;

01 데이터베이스 레코드 검색하기 select 필드명 1, 필드명 2,... from 테이블 이름 where 조건; select * from st_info; select NAME from st_info where ST_ID=201401; select Linux, DB from st_grade where ST_ID=201401; select st_info.name, st_grade.linux from st_info, st_grade where st_info.st_id=201401 and st_grade.st_id=201401; 접근 권한 부여하기 시스템 관리자가 데이터베이스를 만들고 일반 사용자들이 사용하도록 설정해야 할 때 grant 문을 사용 grant all privileges on DB명.* to 사용자 계정@localhost identified by '패스워드'; 예 : grant all privileges on st_db.* to user1@localhost identified by '123456';

02 MariaDB 설치와 사용 데이터베이스는 MySQL대신 MariaDB 사용 MariaDB 설치하고 활성화하기 1 MariaDB를 설치하려면 먼저 리포지터리를 추가로 등록 user1@myubuntu:~$ sudo apt-get install software-properties-common 패키지 목록을 읽는 중입니다... 완료 의존성 트리를 만드는 중입니다 (생략) software-properties-common (0.92.28) 설정하는 중입니다... software-properties-gtk (0.92.28) 설정하는 중입니다... user1@myubuntu:~$ sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xcbcb082a1bb943db (생략) user1@myubuntu:~$ sudo add-apt-repository 'deb http://ftp.kaist.ac.kr/mariadb/rep o/5.5/ubuntu saucy main' user1@myubuntu:~$ sudo apt-get update (생략)

02 MariaDB 설치와 사용 MariaDB 설치하기 user1@myubuntu:~$ sudo apt-get install mariadb-server 패키지 목록을 읽는 중입니다... 완료 의존성 트리를 만드는 중입니다 상태 정보를 읽는 중입니다... 완료 다음 패키지를 더 설치할 것입니다: libaio1 libdbd-mysql-perl libdbi-perl libhtml-template-perl libmariadbclient18 libmysqlclient18 mariadb-client-5.5 mariadb-client-core-5.5 mariadb-common mariadb-server-5.5 mariadb-server-core-5.5 mysql-common (생략)

02 MariaDB 설치와 사용 MariaDB 활성화하기 MariaDB 서버의 데몬은 mysqld user1@myubuntu:~$ ps -ef grep mysql root 12720 1 0 21:33? 00:00:00 /bin/bash /usr/bin/mysqld_safe mysql 13349 12720 6 21:33? 00:00:04 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib/mysql/plugin --user=mysql --pidfile=/var/run/mysqld/mysqld.pid --socket=/var/run/mysqld/mysqld.sock --port=3306 root 13350 12720 0 21:33? 00:00:00 logger -t mysqld -p daemon.error user1 13571 3037 0 21:34 pts/5 00:00:00 grep --color=auto mysql user1@myubuntu:~$

02 MariaDB 설치와 사용 MariaDB 사용하기 MariaDB의 기본 프롬프트는 MariaDB [(none)]> user1@myubuntu:~$ mysql -u root -p Enter password: Welcome to the MariaDB monitor. Commands end with ; or g. Your MariaDB connection id is 35 Server version: 5.5.36-MariaDB-1~saucy-log mariadb.org binary distribution Copyright (c) 2000, 2014, Oracle, Monty Program Ab and others. Type 'help;' or ' h' for help. Type ' c' to clear the current input statement. MariaDB [(none)]> 데이터베이스 목록 확인하기: show databases MariaDB [(none)]> show databases; +-----------------------+ Database +-----------------------+ information_schema mysql performance_schema +-----------------------+ 3 rows in set (0.00 sec) MariaDB [(none)]>

02 MariaDB 설치와 사용 데이터베이스 생성하기 MariaDB [(none)]> create database st_db; Query OK, 1 row affected (0.01 sec) MariaDB [(none)]> show databases; +----------------------+ Database +----------------------+ information_schema mysql performance_schema st_db +----------------------+ 4 rows in set (0.01 sec) MariaDB [(none)]> 데이터베이스 사용하기 MariaDB [(none)]> use st_db; Database changed MariaDB [st_db]>

02 MariaDB 설치와 사용 테이블 확인하기 MariaDB [st_db]> show tables; Empty set (0.00 sec) MariaDB [st_db]> 테이블 생성하기 학생 신상 정보 테이블(st_info)을 생성: default charset=utf8 을 추가 MariaDB [st_db]> create table st_info (ST_ID int, NAME varchar(20), DEPT varchar(25)) default charset=utf8; Query OK, 0 rows affected (0.92 sec) MariaDB [st_db]> 학생 성적 테이블(st_grade)을 생성 MariaDB [st_db]> create table st_grade (ST_ID int, Linux int, DB int); Query OK, 0 rows affected (0.20 sec) MariaDB [st_db]>

02 MariaDB 설치와 사용 생성한 테이블 확인하기 MariaDB [st_db]> show tables; +-----------------+ Tables_in_st_db +-----------------+ st_grade st_info +-----------------+ 2 rows in set (0.00 sec) MariaDB [st_db]>

02 MariaDB 설치와 사용 테이블 구조 확인하기 MariaDB [st_db]> explain st_info; +---------+-----------------+---------+-------+-------------+----------+ Field Type Null Key Default Extra +---------+-----------------+---------+-------+-------------+----------+ ST_ID int(11) YES NULL NAME varchar(20) YES NULL DEPT varchar(25) YES NULL +---------+-----------------+---------+-------+-------------+----------+ 3 rows in set (0.22 sec) MariaDB [st_db]> explain st_grade; +---------+-----------------+---------+-------+-------------+----------+ Field Type Null Key Default Extra +---------+-----------------+---------+-------+-------------+----------+ ST_ID int(11) YES NULL Linux int(11) YES NULL DB int(11) YES NULL +---------+-----------------+---------+-------+-------------+----------+ 3 rows in set (0.00 sec) MariaDB [st_db]>

02 MariaDB 설치와 사용 기본 키 추가하기 ST_ID 필드를 기본 키로 설정 1 Null 값을 허용하지 않도록 먼저 수정 MariaDB [st_db]> alter table st_info modify ST_ID int Not Null; Query OK, 0 rows affected (0.06 sec) Records: 0 Duplicates: 0 Warnings: 0 mysql> alter table st_grade modify ST_ID int Not Null; Query OK, 0 rows affected (0.17 sec) Records: 0 Duplicates: 0 Warnings: 0 MariaDB [st_db]> 2 ST_ID 필드를 기본 키로 설정 MariaDB [st_db]> alter table st_info add constraint pk_stinfo primary key (ST_ID); Query OK, 0 rows affected (1.00 sec) Records: 0 Duplicates: 0 Warnings: 0 MariaDB [st_db]> alter table st_grade add constraint pk_stgrade primary key (ST_ID); Query OK, 0 rows affected (1.40 sec) Records: 0 Duplicates: 0 Warnings: 0 MariaDB [st_db]>

02 MariaDB 설치와 사용 기본 키 추가 여부 확인 MariaDB [st_db]> explain st_info; +---------+-----------------+---------+-------+-------------+----------+ Field Type Null Key Default Extra +---------+-----------------+---------+-------+-------------+----------+ ST_ID int(11) NO PRI NULL NAME varchar(20) YES NULL DEPT varchar(25) YES NULL +---------+-----------------+---------+-------+-------------+----------+ 3 rows in set (0.22 sec) MariaDB [st_db]> explain st_grade; +---------+-----------------+---------+-------+-------------+----------+ Field Type Null Key Default Extra +---------+-----------------+---------+-------+-------------+----------+ ST_ID int(11) NO PRI NULL Linux int(11) YES NULL DB int(11) YES NULL +---------+-----------------+---------+-------+-------------+----------+ 3 rows in set (0.00 sec) MariaDB [st_db]>

02 MariaDB 설치와 사용 레코드 입력하기 MariaDB [st_db]> insert into st_info values (201401, '이길동', 'Game'); Query OK, 1 row affected, 1 warning (0.08 sec) MariaDB [st_db]> insert into st_info values (201402, '김길동', 'Computer'); Query OK, 1 row affected, 1 warning (0.04 sec) MariaDB [st_db]> insert into st_info values (201403, '홍길동', 'Game'); Query OK, 1 row affected, 1 warning (0.02 sec) MariaDB [st_db]> insert into st_grade values (201401, 90, 80); Query OK, 1 row affected (0.06 sec) MariaDB [st_db]> insert into st_grade values (201402, 70, 95); Query OK, 1 row affected (0.01 sec) MariaDB [st_db]l> insert into st_grade values (201403, 80, 65); Query OK, 1 row affected (0.00 sec) MariaDB [st_db]>

02 MariaDB 설치와 사용 레코드 검색하기 1 테이블의 전체 레코드 검색 : st_info 테이블의 전체 레코드를 출력 MariaDB [st_db]> select * from st_info; +------------+-----------+--------------+ ST_ID NAME DEPT +------------+-----------+--------------+ 201401 이길동 Game 201402 김길동 Computer 201403 홍길동 Game +------------+-----------+--------------+ 3 rows in set (0.00 sec) MariaDB [st_db]> 2 학번이 201401인 학생의 이름과 학과를 검색 MariaDB [st_db]> select NAME, DEPT from st_info where ST_ID=201401; +-----------+-----------+ NAME DEPT +-----------+-----------+ 이길동 Game +-----------+-----------+ 1 row in set (0.01 sec) MariaDB [st_db]>

02 MariaDB 설치와 사용 레코드 검색하기 3 학번이 201401인 학생의 리눅스 성적을 검색 MariaDB [st_db]> select Linux from st_grade where ST_ID=201401; +----------+ Linux +----------+ 90 +----------+ 1 row in set (0.00 sec) MariaDB [st_db]> 4 학번이 201401인 학생의 이름과 학과, DB 성적을 한 번에 검색 MariaDB [st_db]> select st_info.name, st_info.dept, st_grade.db -> from st_info, st_grade -> where st_info.st_id=201401 and st_grade.st_id=201401; +-----------+---------+--------+ NAME DEPT DB +-----------+---------+--------+ 이길동 Game 80 +-----------+---------+--------+ 1 row in set (0.03 sec) MariaDB [st_db]>

02 MariaDB 설치와 사용 데이터 수정하기 예를 들어 학번이 201401인 학생의 DB 성적을 80점에서 90점으로 수정 MariaDB [st_db]> update st_grade set DB=90 where ST_ID=201401; Query OK, 1 row affected (0.10 sec) Rows matched: 1 Changed: 1 Warnings: 0 MariaDB [st_db]> select * from st_grade where ST_ID=201401; +-----------+----------+---------+ ST_ID Linux DB +-----------+----------+---------+ 201401 90 90 +-----------+----------+---------+ 1 row in set (0.01 sec) MariaDB [st_db]>

02 MariaDB 설치와 사용 MariaDB 관리하기

02 MariaDB 설치와 사용 MariaDB 상태 정보 출력하기 user1@myubuntu:~$ mysqladmin -u root -p status Enter password: Uptime: 2141 Threads: 1 Questions: 591 Slow queries: 0 Opens: 337 Flush tables: 4 Open tables: 24 Queries per second avg: 0.276 user1@myubuntu:~$ 상태 정보로 출력되는 주요 항목 Uptime : 서버가 동작한 시간을 초 단위로 표시 Threads : 현재 동작 중인 MariaDB 서버 스레드 수 Questions : 서버가 동작한 이후 처리한 질의 수 Slow queries : 일정 시간보다 처리 시간이 길어진 질의 수 Opens : 서버가 열었던 테이블 수 Flush : flush, refresh, reload 명령을 수행한 횟수 Open tables : 현재 열려 있는 테이블 수

02 MariaDB 설치와 사용 MariaDB 버전 정보 출력하기 user1@myubuntu:~$ mysqladmin -u root -p version Enter password: mysqladmin Ver 9.0 Distrib 5.5.36-MariaDB, for debian-linux-gnu on i686 Copyright (c) 2000, 2014, Oracle, Monty Program Ab and others. Server version 5.5.36-MariaDB-1~saucy-log Protocol version 10 Connection Localhost via UNIX socket UNIX socket /var/run/mysqld/mysqld.sock Uptime: 36 min 40 sec Threads: 1 Questions: 592 Slow queries: 0 Opens: 337 Flush tables: 4 Open tables: 24 Queries per second avg: 0.269 user1@myubuntu:~$

02 MariaDB 설치와 사용 MariaDB 서버 암호 설정하기 user1@myubuntu:~$ mysqladmin -u root -p password '123456' Enter password: user1@myubuntu:~$

03 웹 서버 설치와 사용 아파치 설치하고 활성화하기 user1@myubuntu:~$ sudo apt-get install apache2 패키지 목록을 읽는 중입니다... 완료 의존성 트리를 만드는 중입니다 상태 정보를 읽는 중입니다... 완료 다음 패키지를 더 설치할 것입니다: apache2-bin apache2-data libapr1 libaprutil1 libaprutil1-dbd-sqlite3 libaprutil1-ldap (생략) libc-bin에 대한 트리거를 처리하는 중입니다... ufw에 대한 트리거를 처리하는 중입니다... ureadahead에 대한 트리거를 처리하는 중입니다... user1@myubuntu:~$

03 웹 서버 설치와 사용 아파치 활성화하기 서비스의 이름은 apache2 독자형으로 동작하는 데몬이므로 service 명령으로 시작 user1@myubuntu:~$ sudo service apache2 start * Starting web server apache2 * user1@myubuntu:~$ ps -ef grep apache root 14693 1 0 22:22? 00:00:00 /usr/sbin/apache2 -k start www-data 14696 14693 0 22:22? 00:00:00 /usr/sbin/apache2 -k start www-data 14697 14693 0 22:22? 00:00:00 /usr/sbin/apache2 -k start user1 14847 3037 0 22:27 pts/5 00:00:00 grep --color=auto apache user1@myubuntu:~$

03 웹 서버 설치와 사용 웹 서버 접속하기 윈도의 웹 브라우저에서 http://ip주소 를 입력하여 접속 [그림 13-3] 아파치 웹 서버 초기 화면

03 웹 서버 설치와 사용 내가 만든 웹 페이지 띄우기 현재 웹 서버의 기본 디렉터리는 /var/www vi로 작성하여 index.html로 저장 user1@myubuntu:~$ cd /var/www user1@myubuntu:/var/www$ ls index.html user1@myubuntu:/var/www$ sudo vi index.html <html> <head> <title>html test</title> </head> <body> My First Web Page!!! </body> </html> :wq user1@myubuntu:/var/www$

03 웹 서버 설치와 사용 내가 만든 웹 페이지 띄우기 [그림 13-4] 웹 페이지 출력 화면

03 웹 서버 설치와 사용 일반 사용자 계정을 위한 웹 설정하기 웹 설정과 관련된 파일은 /etc/apache2/mods-available/userdir.conf 파일 1 vi로 /etc/apache2/mods-available/userdir.conf 파일을 열어 다음과 같이 수정 user1@myubuntu:/etc/apache2/mods-available$ sudo vi userdir.conf (생략) <IfModule mod_userdir.c> UserDir public_html #UserDir disabled root 앞에 #를 추가한다. <Directory /home/*/public_html> AllowOverride FileInfo AuthConfig Limit Indexes Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec <Limit GET POST OPTIONS> Require all granted </Limit> <LimitExcept GET POST OPTIONS> Require all denied </LimitExcept> </Directory> </IfModule> # vim: syntax=apache ts=4 sw=4 sts=4 sr noet ~ :wq user1@myubuntu:/etc/apache2/mods-available$

03 웹 서버 설치와 사용 일반 사용자 계정을 위한 웹 설정하기 2 mods-available 디렉터리의 userdir.conf 파일과 userdir.load 파일을 mods-enabled 디렉터리에서 심벌릭 링 크로 연결 user1@myubuntu:/etc/apache2/mods-available$ cd../mods-enabled user1@myubuntu:/etc/apache2/mods-enabled$ sudo ln -s../mods-available/ userdir.conf user1@myubuntu:/etc/apache2/mods-enabled$ sudo ln -s../mods-available/ userdir.load user1@myubuntu:/etc/apache2/mods-enabled$ 3 설정 파일이 변경되었으므로 apache2 서비스를 다시 동작 user1@myubuntu:/etc/apache2/mods-enabled$ sudo service apache2 restart * Restarting web server apache2 AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message [ OK ] user1@myubuntu:/etc/apache2/mods-enabled$ 4 사용자 홈 디렉터리에서 public_html 디렉터리 생성 user1@myubuntu:/etc/apache2/mods-enabled$ cd user1@myubuntu:~$ mkdir pubic_html

03 웹 서버 설치와 사용 일반 사용자 계정에서 웹 페이지 작성하기 1 public_html 디렉터리 아래에 index.html 파일을 생성 user1@myubuntu:~$ cd public_html user1@myubuntu:~/public_html$ vi index.html<html> <head> <title>html test</title> </head> <body> User1 Web Page!!! </body> </html> :wq user1@myubuntu:~/public_html$ 2 웹 브라우저에서 html 문서를 확인: http://웹서버주소/~사용자계정 http://192.168.0.2/~user1

03 웹 서버 설치와 사용 일반 사용자 계정에서 웹 페이지 작성하기 3 브라우저에서 확인 [그림 13-6] 사용자 웹 페이지 출력 화면

03 웹 서버 설치와 사용 APM 설치하기 웹 서버 아파치와 웹 프로그래밍 언어인 PHP, 데이터베이스인 MySQL(MariaDB)를 묶어서 APM APM을 연동하기 위해 설치해야 할 PHP 패키지는 php5, php5-gd, php5-mysql user1@myubuntu:~$ sudo apt-get install php5 php5-gd php5-mysql 패키지 목록을 읽는 중입니다... 완료 의존성 트리를 만드는 중입니다 상태 정보를 읽는 중입니다... 완료 다음 패키지를 더 설치할 것입니다: libapache2-mod-php5 php5-cli php5-common php5-readline 제안하는 패키지: php-pear php5-json php5-user-cache (생략) apache2_invoke: Enable module php5 * Restarting web server apache2 AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message [ OK ] php5 (5.5.3+dfsg-1ubuntu2.2) 설정하는 중입니다... user1@myubuntu:~$

03 웹 서버 설치와 사용 PHP의 동작 확인하기 PHP의 동작을 확인하기 위해 /var/www에 다음 파일 작성 user1@myubuntu:~$ cd /var/www user1@myubuntu:/var/www$ sudo vi phpinfo.php <?php phpinfo();?> :wq user1@myubuntu:/var/www$

03 웹 서버 설치와 사용 PHP의 동작 확인하기 웹 브라우저에서 http://ip 주소/phpinfo.php로 접속 [그림 13-8] PHP 동작 확인 화면

03 웹 서버 설치와 사용 게시판 설치하기(그누보드) 1 그누보드 다운로드: 리눅스에서 웹 브라우저를 실행하여 그누보드 사이트(sir.co.kr)에 접속하여 다운로드 [그림 13-9] 그누보드 최신 버전 다운로드 화면

03 웹 서버 설치와 사용 게시판 설치하기(그누보드) 2 내려받은 파일을 /var/www로 복사 user1@myubuntu:/var/www$ sudo cp ~user1/다운로드/g5-5.0b29.tar.gz. user1@myubuntu:/var/www$ 3 tar로 묶고 압축된 파일이므로 압축을 푼다. user1@myubuntu:/var/www$ sudo tar xvzf g5-5.0b29.tar.gz (생략) g5-5.0b29/skin/visit/basic/ g5-5.0b29/skin/visit/basic/style.css g5-5.0b29/skin/visit/basic/visit.skin.php g5-5.0b29/tail.php g5-5.0b29/tail.sub.php g5-5.0b29/_common.php g5-5.0b29/_head.php g5-5.0b29/_tail.php pax_global_header user1@myubuntu:/var/www$

03 웹 서버 설치와 사용 게시판 설치하기(그누보드) 4 그누보드가 사용할 데이터베이스를 구축 user1@myubuntu:/var/www$ sudo mysql -u root -p Enter password: Welcome to the MariaDB monitor. Commands end with ; or g. Your MariaDB connection id is 49 Server version: 5.5.36-MariaDB-1~saucy-log mariadb.org binary distribution Copyright (c) 2000, 2014, Oracle, Monty Program Ab and others. Type 'help;' or ' h' for help. Type ' c' to clear the current input statement. MariaDB [(none)]> create database gnu; Query OK, 1 row affected (0.03 sec) MariaDB [(none)]> exit Bye user1@myubuntu:/var/www$

03 웹 서버 설치와 사용 게시판 설치하기(그누보드) 5 윈도에서 웹 브라우저로 접속하여 설정: http://ip 주소/g5-5.0b29 -> 그누보드5 설치하기 [그림 13-10] 그누보드 설치 : DB 설정오류 화면

03 웹 서버 설치와 사용 게시판 설치하기(그누보드) 6 그누보드5 설치하기 를 클릭 -> data 디렉터리를 만들고 접근 권한을 707로 수정 [그림 13-11] 그누보드5 설치 : data 디렉터리 생성 user1@myubuntu:/var/www$ cd g5-5.0b29/ user1@myubuntu:/var/www/g5-5.0b29$ sudo mkdir data user1@myubuntu:/var/www/g5-5.0b29$ sudo chmod 707 data user1@myubuntu:/var/www/g5-5.0b29$

03 웹 서버 설치와 사용 게시판 설치하기(그누보드) 7 접근 권한을 조정한 후 브라우저에서 새로 고침: 라이선스에 동의 [그림 13-12] 그누보드5 설치 : 라이선스 확인

03 웹 서버 설치와 사용 게시판 설치하기(그누보드) 8 MariaDB에 설정한 DB 정보와 그누보드 관리자 정보를 입력 MariaDB [(none)]> grant all privileges on gnu.* to gnuser@localhost identified by '123456'; Query OK, 0 rows affected (0.14 sec) MariaDB [(none)]> [그림 13-13] 그누보드5 설치 : DB 정보 설정

03 웹 서버 설치와 사용 게시판 설치하기(그누보드) 9 그누보드 설치가 완료되었다. 새로운 그누보드5로 이동 을 클릭 [그림 13-14] 그누보드5 설치 : 설치 완료

03 웹 서버 설치와 사용 게시판 설치하기(그누보드) 10 메인 화면 [그림 13-15] 그누보드5 설치 : 그누보드 메인 화면

03 웹 서버 설치와 사용 웹 페이지에 게시판 연결하기-게시판 생성 1 admin 계정으로 로그인한 다음 관리자 모드 를 클릭 [그림 13-16] 그누보드 사용 : admin 로그인 화면

03 웹 서버 설치와 사용 웹 페이지에 게시판 연결하기-게시판 생성 2 게시판 그룹을 생성: 게시판 관리 를 클릭 -> 게시판 그룹 관리 를 선택 [그림 13-17] 그누보드 사용 : 게시판 그룹설정

03 웹 서버 설치와 사용 웹 페이지에 게시판 연결하기-게시판 생성 3 게시판 그룹을 추가하기 위해 관리 화면에서 오른쪽의 게시판 그룹 추가 를 클릭 [그림 13-18] 그누보드 사용 : 게시판 그룹 생성

03 웹 서버 설치와 사용 웹 페이지에 게시판 연결하기-게시판 생성 4 게시판 그룹 생성이 완료되면 게시판 생성 버튼이 표시된다. 이 버튼을 클릭하면 게시판 생성 화면이 출력 [그림 13-19] 그누보드 사용 : 게시판 생성 버튼 클릭

03 웹 서버 설치와 사용 웹 페이지에 게시판 연결하기-게시판 생성 5 게시판의 여러 속성을 설정하는 항목 [그림 13-20] 그누보드 사용 : 게시판 생성

03 웹 서버 설치와 사용 웹 페이지에 게시판 연결하기-게시판 생성 7 게시판이 생성되면 목록 버튼을 클릭 -> 게시판 관리 화면으로 돌아가고 생성된 게시판을 확인 [그림 13-21] 그누보드 사용 : 게시판 목록

03 웹 서버 설치와 사용 웹 페이지에 게시판 연결하기-게시판 생성 8 게시판 목록에서 테이블 이름(linux_bbs)을 클릭 -> 글쓰기 버튼을 클릭 -> 브라우저 상단의 주소를 복사 [그림 13-22] 그누보드 사용 : 게시판 사용

03 웹 서버 설치와 사용 게시판을 웹 페이지에 연결하기 9 user1 사용의 홈 디렉터리에 public_html 디렉터리를 만들고 index.html 파일을 작성 user1@myubuntu:~$ cd public_html user1@myubuntu:~/public_html$ vi index.html <html> <head> <title>html test</title> </head> <body> User1 Web Page!!! <br><br> <a href=http://192.168.0.2/g5-5.0b29/bbs/board.php?bo_table=linux_bbs>우분투 리눅 스 게시판 연결</a> </body> </html> ~ :wq user1@myubuntu:~/public_html$

03 웹 서버 설치와 사용 게시판을 웹 페이지에 연결하기 10 웹 브라우저에서 http://ip 주소/~user1에 접속하면 우분투리눅스 실습 게시판 연결 링크가 출력 [그림 13-23] 그누보드 사용 : 게시판 연결