Mysql - Datebase

CHOI CHOI·2023년 12월 9일
0

Mysql

목록 보기
1/8

Datebase

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

DBMS(Database Management System)

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

관계형 데이터 베이스 (RDB: Relational Database)

  • 서로간에 관계가 있는 데이터 테이블들을 모아둔 데이터 저장공간

SQL이란 (Stryctured Query Language)

  • 데이터 정의 언어 (DDL : Data Definition Language)
    • creat, alter , drop 등의 명령어
  • 데이터 조작 언어 (DML : Data Manipulation Language)
    • insert, update, delete, select 등의 명령어
  • 데이터 제어 언어 (DCL : Data Control Language)
    • great, revoke, commit, rollback 등의 명령어

Mysql 접속

  • root 계정으로 mysql에 접속
% mysql -u root -p
(Enter 누르기)
password:
  • 현재 database목록 확인
show databases;

  • Database 이름을 지정하여 생성
create database teatdb;

  • 해당 데이터베이스 사용
use testdb;

  • Datebase 삭제
drop database testdb;

User 관리

  • 사용자 정보는 mysql에서 관리하므로 일단 mysql 데이터베이스로 이동후 조회
use mysql;
select host, user From user;

  • user 생성
    현재 pc에서만 접속 가능한 사용자를 비밀번호와 함께 생성
create user 'username'@'localhost' identified by 'password';

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

create user 'username'@'%' identified by 'password';

host정보가 다른 유저는 username이 같아도 괜찮다!

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

user 권한 관리

  • 권환 관리를 실습하기 위한 Database(testdb)생성
create database testdb;

  • 사용자에게 부여된 모든 권한 목록을 확인
show grants for 'username'@'localhost';

  • 사용자에게 특정 데이터베이스의 모든 권한을 부여
grant all on daname.* to 'username'@'localhost';

  • 참고
  • 수정내용이 적용이 되지 않는 경우 새로고침
flush privileges;
  • 사용자에게 특정 데이터베이스의 모든 권한을 삭제
REVOKE ALL ON dbname.* from 'username'@'localhost';

출처 : 제로베이스 데이터분석스쿨

profile
뭐가 됐든 데이터분석가

0개의 댓글