[MySQL] DB 및 계정 생성과 권한 부여 (ver 8.0.26)

Jiwon-Woo·2021년 9월 7일
0

MySQL

목록 보기
3/3

mysql 실행 후 접속하기

$ mysql.server start
$ mysql -u root -p

## -u root : root 계정으로 접속
## -p : password를 사용하여 접속

DB 목록 확인하기

mysql> show databases;

DB 생성하기

mysql> create database [DB 이름];

# DB 생성 성공 시, Query OK 출력

현재 접속한 root 계정이 DB를 생성할 수 있는 권한도 가지고 있기 때문에 가능하다.

user 생성 및 권한 부여

해당 컴퓨터에서만 접근 가능

mysql> CREATE USER [user 이름]@localhost IDENTIFIED BY '[password]';
Query OK, 0 rows affected (0.04 sec)

mysql> GRANT ALL PRIVILEGES ON connectdb.* TO '[user 이름]'@'localhost';
Query OK, 0 rows affected (0.00 sec)

외부접속 모두 허용 '%'

mysql> CREATE USER [user 이름]@'%' IDENTIFIED BY '[password]';
Query OK, 0 rows affected (0.01 sec)

mysql> GRANT ALL PRIVILEGES ON [DB 이름].* TO '[user 이름]'@'%';
Query OK, 0 rows affected (0.00 sec)

특정 ip 주소에서만 접근 가능

%localhost 대신 접근을 허용하고 싶은 ip 주소를 적는다.

변경사항 적용하기

mysql> flush privileges;
Query OK, 0 rows affected (0.01 sec)

생성한 DB에 접속

$ mysql -h[호스트 명] -u [DB 계정명] -p [DB 이름]
Enter password: [password 입력 후 Enter]

mysql 연결 끊기

mysql> quit
Bye

mysql> exit
Bye

mysql 버전과 현재 날짜 구하기

mysql> select version(); select now();

사용중인 DB 전환하기

mysql> use [DB 이름];

# 성공시 Database changed 출력

전환 가능 조건

  1. 존재하는 DB로 전환해야 한다.
  2. 현재 접속 중인 계정이 해당 DB에 대한 권한을 가지고 있어야한다.


현재 DB에 존재하는 테이블 목록 확인

mysql> show tables;
Empty set (0.01 sec)

샘플 데이터

example.sql

example.sql 은 테이블 생성문과 해당 테이블에 값을 저장하는 입력문이 있고, 위의 링크에서 다운 받을 수 있다.

# examples.sql 파일이 있는 디렉토리에서 명령어 수행
$ mysql -u [DB 계정명] -p [DB 이름] < examples.sql
Enter password: [password 입력 후 Enter]

$ mysql -u [DB 계정명] -p [DB 이름]
Enter password: [password 입력 후 Enter]

테이블 구조 확인하기

# describe 명령어를 줄여서 desc 이라고도 한다.
mysql> desc BONUS;
mysql> describe EMPLOYEE;


0개의 댓글