설명
1. 데이터의 체계화된 집합이다
2. 데이터를 효율적으로 관리하고 검색할 수 있도록 구조화되어 있다.
3. 컴퓨터 시스템에 저장되며 여러 사용자나 프로그램이 동시에 접근하여 데이터를 활용할 수 있다.
특징
관계형
- 데이터의 ACID 를 보장
- 표준화된 SQL 언어를 사용하여 복잡한 데이털르 쉽게 사용 가능
- 스키마가 고정되어 데이터 구조를 변경하기 어려움
- 대규모 트래픽 및 데이터 증가에 대응하여 확장이 어려움
비 관계형
- 데이터의 ACID 를보장하지 않음
- 표준화된 질의 언어 및 API가 없음
- 고정된 스키마가 없기 때문에 다양한 데이터 구조 사용 가능
- 대규모 트래픽 및 데이터 증가에 대응한 확장이 쉬움
* ACID : 원자성, 일관성, 고립성, 지속성을 나타내는 데이터베이스의 특성
설정
/etc/mysql/mariadb.conf.d/50-server.cnf
# 이곳에 mariadb 설정 파일이 있다.
bind-address = 0.0.0.0 # 접속 가능한 주소를 설정한다 0.0.0.0은 모두 가능
port = 3306 # 서버가 열리는 포트를 지정한다 기본값은 3306
명령어(mariadb 기준)
mariadb -u root -h localhost -P 3306 -p # 접속 명령어 예시
-u : 유저
-h : 호스트
-P : 포트
-p : 패스워드
sudo mariadb # 이것으로도 접속 가능
CREATE USER 'user'@'192.168.56.%' IDENTIFIED BY 'password';
# 유저 생성 명령어 % 는 네트워크 주소가 192.168.56.0 주소면 어디든 가능하다는 의미
# 비밀번호는 password 사용
ALTER USER 'user'@'192.168.56.%' IDENTIFIED BY 'change PW';
# 비밀번호 바꾸기
DROP USER 'user'@'192.168.56.%';
# 유저 삭제
CREATE DATABASE mydb;
# mydb라는 이름의 DB 생성
GRANT ALL PRIVILEGES ON mydb.* TO 'user'@'192.168.56.%';
# 192.168.56.0/24 에서 접속하는 user에게 mydb를 사용할 수 있는 모든 권한을 준다.
# 더 자세하게 설정 가능함
FLUSH PRIVILEGES;
# 권한 적용
SHOW DATABASES;
# 모든 데이터베이스를 보여줌
USE mydb;
# mydb로 이동 (해당 DB를 사용함)
SHOW TABLES;
# 테이블 보기
mariadb -u user -h 192.168.56.10 -P 3306 -p
# user의 이름으로 호스트의 서버에 접속함
# 이 때, user의 PC에는 mariadb-client가 설치되어 있어야 함
댓글