Database / / 2024. 7. 17. 14:40

MariaDB 사용법 기본

쿼리문의 특징

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;

  • 네이버 블로그 공유
  • 네이버 밴드 공유
  • 페이스북 공유
  • 카카오스토리 공유