[제로베이스 데이터 취업스쿨] 23.07.12 스터디 노트

김준호·2023년 7월 14일
0
post-thumbnail

1. MySQL 다운

1) 홈페이지

https://dev.mysql.com/downloads/mysql/

2) 다운시 주의사항

  • 용량이 큰 것으로 다운
  • 중간에 관리자 비밀번호를 설정하는 곳이 나온다.
  • 관리자 비밀번호는 꼭 기억해 두자
  • mysql에 접속하기 위해서는 꼭 필요하다.

2. Database 사용

1) 정의

  • Database
    여러 사람이 공유해 사용할 목적으로 체계화해 통합, 관리 하는 데이터의 집합체

  • DBMA(Database Management System)
    사용자와 데이터 베이스 사이에서 사용자의 요구에 따라 정보를 생성해 주고 데이터베이스를 관리해주는 소프트웨어
    ex) MySQL

  • 관계형 데이터베이스(RDB: Relational Database)
    서로간에 관계가 있는 데이터 테이블들을 모아둔 저장공간

  • SQL(Structured Query Language)
    데이터베이스에서 데이터를 정의, 조작, 제어하기 위해 사용하는 언어

    SQL구성
    - 데이터 정이 언어(DDL : Data Definition Language)
    CREATE, ALTER, DROP
    
    - 데이터 조작 언어(DML : Data Manipulation Language)
    INSERT, UPDATE, DELETE, SELECT 등
    
    - 데이터 제어 언어(DCL : Data Control Language)
    GRANT, REVOKE, COMMIT, ROLLBACK 등

2) Mysql 접속

MySQL 8.0 Command Line Client 접속

  • 현제는 접속하자마자 패스워드를 치게 되어 있다.
  • 다른 곳에서는 mysql을 사용한다는 명령어를 따로 쳐야한다.
% mysql -u root -p

p에는 다운할때 설정했던 비밀번호를 입력하면 된다.

  • 아래와 같이 나오면 접속에 성공한 것

3) Database 관리

  • 모든 databases를 보여줘
show databases;
  • 데이터 베이스 생성
    create atabase dbname;
  • 해당 데이터베이스 사용
    use dbname;
  • 해당 데이터베이스 삭제
    drop database dbname;

4) User 관리

사용자 정보는 mysql데이터베이스에서 관리하므로 이동

  • mysql DB로 이동
use mysql

User 조회

  • user에서 host,user정보 가져와
select host, user from user;

User 생성

  • 현제 pc에섬만 접속 가능한 사용자를 비번과 함께 생성
create user 'username'@'localhost' indentified by 'pw';
  • 외부에서 접속 가능한 사용자를 비밀번호와 함께 생성
create user 'username'@'%' identified by 'pw';

user이름은 중복이 불가 하지만, host가 다르다면 중복이 가능하다.

User 삭제

  • 접근 범위에 따라 같은이름의 사용자여도 별도로 삭제
drop user 'username'@'localhost';
drop user 'username'@'%';

5) User 권한 관리

  • 사용자에게 부여된 모든 권한 목록 조회
show grants for 'username'@'localhost';
  • 사용자에게 특정 데이터베이스의 모든 권한 부여
grant all on dbname.* to 'username'@'localhost';
  • 사용자에게 특정 데이터베이스의 모든 권한을 삭제
revoke all on dbname.* from 'username'@'localhost';

수정내용이 적용이 되지 않는다면 새로고침

flush privileges;

3. Table 사용

1) table 생성

  • DB 생성
    create database zerobase default character set utf8mb4;
  • 생성 DB사용
    use zerobase
  • table 생성
create table tablename
(
  columnname datatype,
  columnname datatype
  ...
);
  • table 조회
show tables;
  • table 정보 조회
desc tablename;

2) table 변경

  • talbe명 변경
alter table tablename
rename new_tablename;
  • table 컬럼추가
alter table tablename
add column 컬럼명 데이터타입;
  • table의 컬럼의 데이터타입 변경
alter table tablename
modify column tablename datatype;
  • table의 column명 변경
alter table tablename
change column old_columnname, new_columnname new_datatype;
  • table의 column 삭제
alter table tablename
drop column columnname;

3) Table 삭제

  • drop table tablename;

4. DML : 데이터 조작어

환경

  • id, name, ags, sex 컬럼을 가지고 있는 person 테이블 만들기

1) INSERT

insert into

  • 문법
  • 모든 컬럼에 값을 추가할 경우 column내용은 생략이 가능하다.

2) SELECT

selec from

  • 문법
  • 테이블의 모든 내용 조회

2-1) order by

  • 문법
  • 디폴트 값은 ASC 이므로 생략가능하다.

where 문법

  • 조건문(where) 비교연산자 사용 가능

3) UPDATE

update set

  • 문법
  • 뒤의 조건문(where) 을 주지 않으면 모든 컬럼값이 변경 될 수 있다.

4) DELETE

delete from

  • 문법
profile
취업공부

0개의 댓글