-
[SISS/웹 스터디] 2학기 4주차 스터디 - MySQL24-2 SISS/웹 2024. 9. 29. 21:30
4주차 09/23 ~ 09/29 [MYSQL] 01 ~ 08 - 검색어 추천 → mysql cheat sheet
1. 수업 소개
- 데이터베이스
- 기존에 이용하던 ‘파일’의 한계를 극복하기 위해 만들어짐
- 데이터를 프레임 형태로 정리
- 정렬 및 검색을 빠르고 안전하게 수행
- 관련 기술 → MySQL, Oracle, SQL Server, PostgreSQL, DB2, Access
- MySQL
- 관계형 데이터베이스의 대부분의 기능을 갖춘 무료 오픈 소스 → 웹 개발자에게 인기 → 폭발적인 성장
2. 데이터베이스의 목적
- 스프레드시트와 MySQL 비교
- 공통점
- 데이터를 표의 형태로 나타내줌
- 데이터 검색, 정렬 등의 기능 사용 용이
- 차이점
- 스프레드시트는 목록에서 메뉴를 클릭하여 기능 수행하지만 MySQL의 경우 SQL(컴퓨터 언어)을 이용하여 기능 실행
- 공통점
- 웹을 이용하여 화면에 데이터를 나타내기
- 데이터베이스를 이용하여 웹 사이트의 데이터를 저장 및 제공할 수 있음
3. MySQL 설치
- 직접 다운로드
- 브라우저에 검색 → mysql community edition download → mysql community server/generally available releases → 운영체제 선택 후 가장 위에 있는 것을 다운로드
- 온라인 서비스 이용(설치 불가할 경우)
- codeanywhere
- XAMPP 이용(3.1 참고)
3.1. MySQL 설치(윈도우)
- bitnami wamp → mysql을 직접 설치할 경우 복잡 → 현재 배포 중단
- xampp → bitnami와 같은 역할을 하는 프로그램
- mysql 실행하기→ xampp 컨트롤 패널에서 mysql의 start 버튼 누르기
- 터미널에서 mysql 접속
- win + R
- cmd 입력
- C:\xampp\mysql\bin 위치로 이동(cd)
- 루트 계정으로 접속 (mysql -uroot -p)
- xampp의 mysql은 초기 비밀번호 설정이 되어있지 않으므로 엔터를 통해 접속 가능하다(이후 비밀번호 설정)
- (참고 링크) https://beop07.tistory.com/14
- use mysql
3.4. MySQL 설치(codeanywhere.com)
(로컬에 설치했으므로 생략)
4. MySQL의 구조
- 구성
- 표(table)
- 데이터베이스(database, 스키마) → 연관된 표를 그룹화(일종의 폴더)
- 데이터베이스 서버(database server) → 스키마를 저장
5. MySQL 서버 접속
- 보안
- 데이터베이스는 자체적인 보안 체계를 가지고 있음
- 사용자 별 접근 제한 가능
- 접속
- 루트는 모든 권한을 가지고 있으므로 작업 시에는 별도의 사용자를 생성하는 것을 권장
// root(관리자)로 접속 + 비밀번호 입력 옵션 ./mysql -uroot -p
6. 스키마의 사용
- 데이터베이스 생성 및 삭제
- 이전에 입력했던 명령어는 위쪽 화살표 이용
// 데이터베이스 생성 CREATE DATABASE DB명; // 데이터베이스 삭제 DROP DATABASE DB명;
- 데이터베이스 출력하기
// 데이터베이스 출력하기 SHOW DATABASES;
- 생성한 데이터베이스 이용하기
// 데이터베이스 이용하기 USE DB명;
7. SQL과 테이블의 구조
- SQL(Structured Query Language)
- 표를 작성하는(구조화 된) 컴퓨터 언어
- 입력, 삭제 등의 질의(요청) 가능
- 용어
- 표 → table
- 행(가로) → row, record(데이터)
- 열(세로) → column(데이터 타입)
8.1.~8.2. 테이블의 생성
// 최종 작성 CREATE TABLE topic( id INT(11) NOT NULL AUTO_INCREMENT, title VARCHAR(100) NOT NULL, description TEXT NULL, created DATETIME NOT NULL, author VARCHAR(15) NULL, profile VARCHAR(200) NULL, PRIMARY KEY(id) );
- 테이블 생성
// 테이블 생성 CREATE TABLE 테이블명( 컬럼명 데이터타입(검색 시 노출시킬 개수) 옵션, ... PRIMARY KEY(메인 키로 설정할 컬럼 명) );
- 데이터 타입(보여줄 개수 지정 가능)
- 정수형 → INT
- 문자열 → VARCHAR(variable character, 기본 255자까지 허용)
- 텍스트 → TEXT(65,535자까지 허용)
- 옵션
- 필수 입력 → NOT NULL
- 선택 입력 → NULL
- 자동 1 증가 → AUTO_INCREMENT
- 생성 시각 → DATETIME(날짜 + 시각)
'24-2 SISS > 웹' 카테고리의 다른 글
[SISS/웹 스터디] 2학기 5주차 스터디 - MySQL (3) 2024.10.06 [SISS/웹 스터디] 2학기 3주차 스터디 - PHP (0) 2024.09.22 [SISS/웹 스터디] 2학기 2주차 스터디 - PHP (0) 2024.09.14 [SISS/웹 스터디] 2학기 1주차 스터디 - PHP (1) 2024.09.08