KKG
Programming
KKG
전체 방문자
오늘
어제
  • 전체 글 보기 (84)
    • 회고 (9)
    • Bootcamp (19)
    • Error Handling (2)
    • Kotlin (1)
    • Java (19)
      • Java (14)
      • Spring (1)
      • JPA (2)
      • Link (2)
    • Python (5)
    • 알고리즘 (20)
      • 알고리즘 (4)
      • 백준 (14)
      • 프로그래머스 (1)
      • Link (1)
    • SQL (5)
      • SQL (1)
      • MySQL (4)
    • Web (2)
    • etc (1)

블로그 메뉴

  • 태그
  • 방명록
  • 깃허브

인기 글

티스토리

hELLO · Designed By 정상우.
KKG

Programming

SQL/MySQL

[MySQL] MySQL-기본

2022. 4. 15. 06:44

데이터 베이스 관리 시스템에 접속

mysql –u root -p

Database 생성

mysql> create database <데이터베이스-이름>;

Database 사용자 생성, 권한 부여

mysql> grant all privileges on <데이터베이스-이름>.* to <계정-이름>@'%' identified by '<암호>';
mysql> grant all privileges on <데이터베이스-이름>.* to <계정-이름>@'localhost' identified by '<암호>';
mysql> flush privileges;

@'%': 어떤 클라이언트에서도 접근 가능

@'localhost': 해당 컴퓨터에서만 접근 가능

flush privileges;: DBMS에게 적용하라는 의미

 

다른 버전

mysql> create user <계정-이름>@localhost identified by '<암호>';
mysql> grant all privileges on <데이터베이스-이름>.* to <계정-이름>@localhost;

 

MySQL 연결 끊기

mysql> quit
mysql> exit

 

MySQL 버전, 현재 날짜 출력

mysql> SELECT VERSION(), CURRENT_DATE;
+------------+--------------+
| VERSION()  | CURRENT_DATE |
+------------+--------------+
| 5.7.21-log | 2022-04-15   |
+------------+--------------+
1 row in set (0.00 sec)

 

키워드는 대소문자 구분 X

mysql> SELECT VERSION(), CURRENT_DATE;
mysql> select version(), current_date;
mysql> SeLeCt VeRsIoN(), CuRrEnT_dAtE;

 

계산식

mysql> SELECT SIN(PI()/2), (1 + 2) * 3;
+-------------+-------------+
| SIN(PI()/2) | (1 + 2) * 3 |
+-------------+-------------+
|           1 |           9 |
+-------------+-------------+
1 row in set (0.00 sec)

 

한 줄에 여러 쿼리, 여러 줄에 한 쿼리

mysql> SELECT NOW(); SELECT CURRENT_DATE;
+---------------------+
| NOW()               |
+---------------------+
| 2022-04-15 06:56:25 |
+---------------------+
1 row in set (0.00 sec)

+--------------+
| CURRENT_DATE |
+--------------+
| 2022-04-15   |
+--------------+
1 row in set (0.00 sec)

 

mysql> SELECT
    -> NOW()
    -> ,
    -> CURRENT_DATE
    -> ;
+---------------------+--------------+
| NOW()               | CURRENT_DATE |
+---------------------+--------------+
| 2022-04-15 06:57:12 | 2022-04-15   |
+---------------------+--------------+
1 row in set (0.00 sec)

 

쿼리 입력 도중 취소 (중간에 Ctrl + c or \c)

mysql> SELECT
    -> NOW()
    -> ^C
mysql> SELECT
    -> NOW()
    -> \c
mysql>

 

데이터베이스 전환

mysql> use <데이터베이스-이름>;

 

현재 데이터베이스 테이블 목록 확인

mysql> SHOW TABLES;

Empty set (0.02 sec)

 

SQL 파일 사용

mysql -u <계정-이름> -p <데이터베이스-이름> < <파일-이름>.sql

 

DESC, DESCRIBE 명령어

mysql> SHOW TABLES;
+-----------------------+
| Tables_in_connectdb   |
+-----------------------+
| bonus                 |
| department            |
| employee              |
| project               |
| project_participation |
| role                  |
| salarygrade           |
+-----------------------+
7 rows in set (0.00 sec)

mysql> DESC BONUS;
+-------+--------------+------+-----+---------+-------+
| Field | Type         | Null | Key | Default | Extra |
+-------+--------------+------+-----+---------+-------+
| ename | varchar(10)  | NO   | PRI | NULL    |       |
| job   | varchar(9)   | NO   | PRI | NULL    |       |
| sal   | decimal(7,2) | YES  |     | NULL    |       |
| comm  | decimal(7,2) | YES  |     | NULL    |       |
+-------+--------------+------+-----+---------+-------+
4 rows in set (0.00 sec)


mysql> DESCRIBE BONUS;
+-------+--------------+------+-----+---------+-------+
| Field | Type         | Null | Key | Default | Extra |
+-------+--------------+------+-----+---------+-------+
| ename | varchar(10)  | NO   | PRI | NULL    |       |
| job   | varchar(9)   | NO   | PRI | NULL    |       |
| sal   | decimal(7,2) | YES  |     | NULL    |       |
| comm  | decimal(7,2) | YES  |     | NULL    |       |
+-------+--------------+------+-----+---------+-------+
4 rows in set (0.00 sec)
 
    'SQL/MySQL' 카테고리의 다른 글
    • [MySQL] 자료형, DDL-CREATE, ALTER, DROP
    • [MySQL] DML-INSERT, UPDATE, DELETE
    • [MySQL] DML-SELECT

    티스토리툴바