MySQL
가장 범용적인 오픈소스 데이터베이스로, 관계형 DBMS이다.
기본적인 MySQL 기능, 문법
0. MySQL 접속(in Ubuntu)
> MYSQL -u root -p
위 명령어 실행 후 enter시에 -p 옵션에 의해 비밀번호를 입력하라고 한다. 이때, 설정된 비밀번호가 없다면 바로 enter를 누르면 된다.
1. 유저 생성
CREATE USER 'username'@'hostname' IDENTIFIED BY 'password';
hostname에 %를 사용하면 어느 host나(외부호스트도) 접근이 가능하다.
2. 유저의 권한 확인 및 권한 부여
SHOW GRANT FOR 'username'@'hostname'; //유저의 권한을 확인
GRANT 권한 ON DB명.TABLE명 TO 'username'@'hostname' (WITH GRANT OPTION); //유저에게 권한 부여
아래는 GRANT문의 예시이다.
GRANT all ON *.* TO 'super'@'localhost' WITH GRANT OPTION;
GRANT SELECT,UPDATE ON classicdb.* TO 'super'@'localhost';
3. 데이터베이스 생성, 조회, 사용
CREATE DATABASE 데이터베이스명 default CHARSET SET UTF8;
SHOW DATABASES;
USE 데이터베이스명;
위는 sbs라는 데이터베이스를 만든 결과이다. 이외의 것들은 기본적인 데이터베이스이다. 그리고 USE를 통해 사용할 데이터베이스를 명시하여야한다.
4. 테이블 생성/조회/수정
CREATE TABLE 테이블명 (
컬렴명 자료형 ...
);
SHOW TABLES;
CREATE TABLE locationInfo(
_id BIGINT(20) UNSIGNED NOT NULL AUTO_INCREAMENT,
latitude DOUBLE NOT NULL,
longitude DOUBLE NOT NULL,
token VARCHAR(255) NOT NULL,
bearing DOUBLE NOT NULL,
PRIMARY KEY (_id),
UNIQUE KEY uk_name (token)
) DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci;
ALTER TABLE 테이블명 ADD 컬럼명 자료형; #컬럼 추가
ALTER TABLE 테이블명 DROP COLUMN 컬럼명; #컬럼 삭제
ALTER TABLE 테이블명 SET 컬럼명 속성 정의; #컬럼의 속성 정의 변경
ALTER TABLE 테이블명 DROP 컬럼명 속성 정의; #컬럼의 속성의 정의 변경
'Domain > 데이터베이스' 카테고리의 다른 글
[데이터베이스] 6. 무결성 제약 조건 (0) | 2020.07.23 |
---|---|
[데이터베이스] 5. 데이터의 입력, 삭제, 수정 (0) | 2020.07.22 |
[데이터베이스] 4. MySQL 중첩질의문 (0) | 2020.07.22 |
[데이터베이스] 3. MySQL - 조회 (0) | 2020.07.22 |
[데이터베이스] 1. 개요 (0) | 2020.07.22 |