ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [SISS/웹 스터디] 2학기 4주차 스터디 - MySQL
    24-2 SISS/웹 2024. 9. 29. 21:30

    2학기 4주차 스터디 - MySQL

    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 버튼 누르기

    xampp 컨트롤 패널에서 mysql 서버 실행

    • 터미널에서 mysql 접속
      1. win + R
      2. cmd 입력
      3. C:\xampp\mysql\bin 위치로 이동(cd)
      4. 루트 계정으로 접속 (mysql -uroot -p)
        • xampp의 mysql은 초기 비밀번호 설정이 되어있지 않으므로 엔터를 통해 접속 가능하다(이후 비밀번호 설정)
        • (참고 링크) https://beop07.tistory.com/14
      5. use mysql

    윈도우 cmd에서 mysql 접속

     

    3.4. MySQL 설치(codeanywhere.com)


    (로컬에 설치했으므로 생략)

     

    4. MySQL의 구조


    •  구성
      1. 표(table)
      2. 데이터베이스(database, 스키마) → 연관된 표를 그룹화(일종의 폴더)
      3. 데이터베이스 서버(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(날짜 + 시각)

    테이블 생성

Designed by Tistory.