쿼리문의 특징
1. 뒤에 ;를 붙여야 합니다.
2. 대소문자를 구분하지 않습니다.
하지만 구분을 위해 명령어는 대문자,
사용자가 지정하는 명령어는 소문자로 쓰도록 합니다.
이미 생성되어있는 employees.sql 파일을 데이터베이스에 삽입하기
SOURCE 파일이름.sql;
현재 존재하는 database를 확인하는 명령어
SHOW databases;
원하는 database를 선택하는 명령어
USE mysql;
USE employees;
사용중인 데이터베이스가 이동되며
현재 어느 데이터베이스를 사용중인지 표시됩니다.
존재하는 table들을 보여주는 명령어
show tables;
기존 DB에 데이터베이스 삽입하기
mysql -u root -p < 파일명
SQL 문법
SQL 문법 3가지
1. 데이터 정의어 (Data Definition Language, DDL) [엑셀파일 생성]
-> CREATE 데이터베이스 생성
-> DROP 데이터베이스 삭제
-> ALTER 데이터베이스 변경
-> TRUNCATE 관계 데이터베이스 삭제
2. 데이터 조작어 (Data Manipulation Language, DML) [엑셀시트 편집]
-> SELECT 데이터 검색
-> INSERT 데이터 삽입
-> UPDATE 데이터 수정
-> DELETE 데이터 삭제
3. 데이터 제어어 (Data Control Language, DCL) [엑셀 권한 수정]
-> GRANT 권한 부여
-> REVOKE 권한 제거
1. 데이터베이스 생성
CREATE DATABASE korea;
SHOW DATABASES;
2. 데이터베이스 선택
USE korea;
3. 테이블 생성
신발 판매 테이블을 생성하고 싶을 때
상품명, 가격, 제조사, 사이즈, 컬러, 수량
CHAR, INT, VARCHAR, INT , CHAR, INT
CREATE TABLE products( 상품명 CHAR(20),
가격 INT);
SHOW TABLES;
4. 데이터 작성
INSERT INTO 테이블명 VALUE(값1, 값2, ...)
유저계정 추가하기
CREATE USER '계정'@'위치' IDENTIFIED BY '암호';
# 위치에 %를 넣으면 어디서든 접속 가능한 유저
# 위치에 localhost를 넣으면 DB가 깔린 서버에서만 접속 가능한 유저
USER mysql;
SELECT user,host FROM user;
이제 생성된 유저로 접속이 가능합니다.
user6으로 DB에 접속한 결과
하지만 새로 생성된 유저는 데이터베이스에 접근할 권한이 없습니다.
특정 데이터베이스에 접근할 권한을 주어야 볼 수 있습니다.
GRANT ALL PRIVILEGES ON 데이터베이스명.테이블명 TO '유저명'@'%|localhost';
# 데이터베이스나 테이블명에 *를 넣으면 '모두'를 의미합니다.
Root 계정에서 권한을 줍니다.
이제 user6에서 데이터베이스를 볼 수 있습니다.
다른 서버의 DB에 접속하기
mysql -u 유저명 -h IP번호 -p
USER 위치를 %로 설정한 계정은 원격 접속이 가능합니다.
USER 위치를 localhost로 설정한 계정은 원격 접속이 불가능 합니다.
자신에게 접속한 유저 목록 보기
SHOW PROCESSLIST;
MariaDB에 직접 접속하지 않고
한줄씩만 명령 보내기
mysqladmin.exe -u root -p CREATE test_table
mysqladmin.exe -u root -p DROP test_table
mysqladmin.exe -u root -h 접속할IP -p CREATE text_table2
mysqladmin.exe -u root -h 접속할IP -p DROP text_table2
mysqladmin.exe -u root -h 접속할IP -p ping
mysqladmin.exe -u root -h 접속할IP -p status
mysqladmin.exe -u root -h 접속할IP -p processlist
mysqladmin.exe -u root -h 접속할IP -p kill 아이디번호
mysqladmin.exe -u root -h 접속할IP -p kill 아이디,아이디,아이디,...
현재 테이블에 있는 필드의 정보 보기
DESC sample21;