제로베이스 데이터 취업 스쿨 8주차 - 3 (SQL 1일차- DB 사용, Table 사용)

김휘담·2024년 3월 21일

이번 시간부터는 SQL 파트를 수강했다. 그 중에서도 오늘은 MySQL를 설치하고, 사용하는 방법을 익히고, Table에 대한 간단한 실습을 진행했다.

MySQL 설치 사이트

  • 우리가 앞으로 실습하게될 MySQL Command

개념

  • 데이터베이스: 여러 사람이 공유하여 사용할 목적으로 체계화해 통합, 관리하는 데이터의 집합체
  • DBMS: 사용자와 데이터베이스 사이에서 사용자의 요구에 따라 정보를 생성해주고 데이터베이스를 관리해주는 SW
  • RDB: 서로간에 관계가 있는 데이터 테이블들을 모아둔 데이터 저장공간
  • Table: 데이터베이스 안에서 실제 데이터가 저장되는 형태이고, 행과 열로 구성된 데이터 모음
  • SQL: 데이터베이스에서 데이터를 정의, 조작, 제어하기 위해 사용하는 언어
  • 데이터 정의 언어(DDL): CREATE, ALTER, DROP
  • 데이터 조작 언어(DML): INSERT, UPDATE, DELETE, SELECT
  • 데이터 제어 언어(DCL): GRANT, REVOKE, COMMIT, ROLLBACK
  • CREATE database
  • DROP database

User 관리

  • 사용자 정보는 mysql에서 관리하므로 user를 조회할 때 mysql 데이터베이스로 이동 후 조회해야함
use mysql;
SELECT host, user FROM user;

  • 현재 PC에서만 접속 가능한 사용자를 비밀번호와 함께 생성
CREATE USER 'hwidam'@'localhost' identified by '1234';
  • 외부에서 접속 가능한 사용자를 비밀번호와 함께 생성
CREATE USER 'hwidam'@'%' identified by '1234';

  • 접근 범위에 따라 같은 이름의 사용자여도 별도로 삭제
DROP USER 'hwidam'@'localhost'
DROP USER 'hwidam'@'%'

User 권한 관리

  • 권한 확인
SHOW GRANTS FOR 'hwidam'@'localhost';

  • 사용자에게 특정 데이터베이스의 모든 권한을 부여
GRANT ALL ON mysql.* to 'hwidam'@'localhost';

  • 사용자에게 특정 데이터베이스의 모든 권한을 삭제
REVOKE ALL ON mysql.* from 'hwidam'@'localhost';
  • 수정내용이 적용이 되지 않은 경우 새로고침
    FLUSH PRIVILEGES;

Table 사용

  • Table 생성
CREATE TABLE tablename(columnname datatype, .....);
  • Table 정보 확인
DESC tablename

Ex

  • Table 이름 변경
ALTER TABLE tablename RENAME othername;

  • Table에 컬럼 추가
ALTER TABLE tablename ADD COLUMN columnname datatype;

  • Table의 특정 컬럼의 데이터 타입 변경
ALTER TABLE tablename MODIFY COLUMN columnname datatype;

  • Table의 특정 컬럼 이름 변경
ALTER TABLE tablename CHANGE COLUMN old_columnname new_columnname new_datatype;

  • Table의 특정 컬럼 삭제
ALTER TABLE tablename DROP COLUMN columnname;

  • Table 삭제
DROP TABLE tablename;
profile
김휘담

0개의 댓글