DB/MySQL

MySQL Database 생성/계정생성/권한부여

Imvory 2020. 6. 2. 03:01

Database 생성하기

cmd에서 아래 명령들을 실행해보자

 

 

관리자 계정인 root로 DBMS에 접속

mysql –uroot  -p

password는 처음 설치 시 입력했던 암호 입력

 

데이터베이스 생성 명령

create database DB이름;

 

사용자(계정) 생성과 권한 주기

  • db이름 뒤의 * 는 모든 권한을 의미한다.
  • @’%’는 어떤 클라이언트에서든 접근 가능하다는 의미이고,
    @’localhost’는 해당 컴퓨터에서만 접근 가능하다는 의미이다.
  • flush privileges는 DBMS에게 적용을 하라는 의미이다.
    해당 명령을 반드시 실행해줘야 한다.
  • mysql 8버전에서는 create user를 먼저 해주고 grant를 해줘야 한다.
grant all privileges on db이름.* to 계정이름@'%' identified by '암호’;
grant all privileges on db이름.* to 계정이름@'localhost' identified by '암호’;
flush privileges;
CREATE USER 'username'@'localhost' IDENTIFIED BY 'password';
GRANT ALL ON *.* TO 'username'@'localhost';
flush privileges;

데이터베이스에 접속하기

mysql –h호스트명 –uDB계정명 –p 데이터베이스이름

Ex. 데이터베이스이름 testdb, DB계정명 testuser

mysql –h127.0.0.1 –utestuser –p testdb

 

MySQL연결 끊기

quit 혹은 exit 입력 > Bye라고 뜨면 연결 끊기 성공

 

MySQL 버전, 현재날짜 구하기

  • sql은 세미콜론(;)으로 끝난다.
  • keyword는 대소문자를 구별하지 않는다.
SELECT VERSION(), current_date;

 

  • 여러문장을 한 줄에 연속으로 붙여서 실행가능.
  • 세미콜론으로 구분만 지어주면 된다.
SELECT VERSION(); SELECT NOW();

 

  • 하나의 sql을 여러 줄로 입력 가능.
mysql> SELECT
    -> USER()
    -> ,
    -> CURRENT_DATE;

 

  • sql입력 도중 취소 가능
  • \c를 입력해준다.
mysql> SELECT

    -> USER()

    -> \c

mysql>

 

DBMS에 존재하는 데이터베이스 확인하기

show databases;

 

사용중인 데이터베이스 전환하기

: 데이터베이스를 전환하려면 이미 데이터베이스가 존재해야 하며
현재 접속 중인 계정이 해당 데이터베이스를 사용할 수 있는 권한이 있어야 한다.

use DB명;

 

현재 데이터베이스에 존재하는 테이블 목록 확인하기

: Database선택 후 실행 할 것

show tables;

 

테이블 구조를 확인

: describe 혹은 짧게 desc사용

desc 테이블명;