Chapter 02. DATABASE를 사용해보자

13elieve ·2024년 6월 17일

제로베이스 DA7

목록 보기
3/12

2-1. Database의 정의

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

DBMS (Database Management System)
사용자와 데이터베이스 사이에서 사용자의 요구에 따라 정보를 생성해주고 데이터베이스를 관리해주는 소프트웨어 - mysql도 이에 해당됨

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

비관계형 데이터베이스 : 데이터간 관계가 없이 누적되는 데이터베이스

관계형 데이터배이스 : 저장되는 데이터 사이에 관계가 있어서 관계를 통해서 관련 데이터를 검색해서 가져올 수도 있고 삭제할 수도 있는 데이터베이스

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

SQL 구성
• 데이터 정의 언어 (DDL: Data Definition Language)

  • CREATE, ALTER, DROP 등의 명령어

• 데이터 조작 언어 (DML: Data Manipulation Language)

  • INSERT, UPDATE, DELETE, SELECT 등의 명령어
    —> 데이터 사이언스의 경우 집중해야 할 언어
    그 중 SELECT가 중요함 기업들은 잘 구축된 DBMS를 가지고 있기 때문에 그 데이터를 가져오는데 사용하는 주 언어가 SELECT임

• 데이터 제어 언어 (DCL: Data Control Language)

  • GRANT, REVOKE, COMMIT, ROLLBACK 등의 명령어

2-2. Database 관리

MySQL 접속
root 계정으로 mysql 에 접속

Mysql -u root -p

Database 확인
현재 database 목록 확인

Show databases;

Database 생성
Database 이름을 지정하여 생성

Create database testdb;

Database 사용
해당 데이터베이스로 이동 (사용)

Use testdb;

Database 삭제

Drop database testdb;

2-3. User 관리

User 조회

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

Use mysql;
Select host, user from user;

현재PC(Localhost) User 생성 및 삭제
현재 PC 에서만 접속 가능한 사용자를 비밀번호와 함께 생성 이후 삭제

Create user ‘username’@‘localhost’ identified by ‘password’;
Create user ‘noma’@‘localhost’ identified by ‘1234’;

Drop user ‘username’@‘localhost’;
Drop user ‘nome’@‘localhost’;

외부(%) User 생성 및 삭제

외부에서 접속 가능한 사용자를 비밀번호와 함께 생성 이후 삭제

Create user ‘username’@‘%’ identified by ‘password’;
Create user ’noma’@‘%’ identified by ’5678’;

Drop user ‘username’@‘%’
Drop user ‘noma’@‘%’

(추가 : 호스트 정보가 다른 유저는 이름이 같아도 상관 없음)

2-4 USER 권한 관리

실습환경
Database 생성 ‘testdb’
User 생성 ‘noma’

User 권한 확인
Show grants for ‘noma’@‘localhost’;

User 권한 부여
Grant all on testdb.* to ‘noma’@‘localhost’;

(추가 : 코딩에서 * 별표시는 모든 것을 의미)

User 권한 제거
Revoke all on tested.* from ‘noma’@‘localhost’;

profile
데분호소인

0개의 댓글