RDBMS
행과 열을 가지는 표 형식의 데이터를 저장하는 형태의 데이터베이스를 가리키며 SQL이라는 언어를 써서 조작한다.
특징
- 데이터의 분류, 정렬, 탐색 속도가 빠릅니다.
- 오랫동안 사용된 만큼 신뢰성이 높고, 어떤 상황에서도 데이터의 무결성을 보장해 줍니다.
- 기존에 작성된 스키마를 수정하기가 어렵습니다.
- 데이터베이스의 부하를 분석하는 것이 어렵습니다.
용어
- 열(column) : 각각의 열은 유일한 이름을 가지고 있으며, 자신만의 타입을 가지고 있습니다. 이러한 열은 필드(field) 또는 속성(attribute)이라고도 불립니다.
- 행(row) : 행은 관계된 데이터의 묶음을 의미합니다. 한 테이블의 모든 행은 같은 수의 열을 가지고 있습니다. 이러한 행은 튜플(tuple) 또는 레코드(record)라고도 불립니다.
- 값(value) : 테이블은 각각의 행과 열에 대응하는 값을 가지고 있습니다.이러한 값은 열의 타입에 맞는 값이어야 합니다.
- 키(key) : 테이블에서 행의 식별자로 이용되는 열을 키(key) 또는 기본 키(primary key)라고 합니다. 즉, 테이블에 저장된 레코드를 고유하게 식별하는 후보 키(candidate key) 중에서 데이터베이스 설계자가 지정한 속성을 의미합니다.
- 관계(relationship) : 테이블 간의 관계는 관계를 맺는 테이블의 수에 따라 일대일(one-to-one) 관계,일대다(one-to-many), 관계다대다(many-to-many) 관계로 나눌 수 있습니다.
- 스키마(schema) : 스키마는 테이블을 디자인하기 위한 청사진이라고 할 수 있습니다. 이러한 스키마는 테이블의 각 열에 대한 항목과 타입뿐만 아니라 기본 키와 외래 키도 나타내야 합니다.
MySQL
대부분의 운영체제와 호환되며 현재 가장 많이 사용되는 데이터베이스로 대용량 데이터베이스를 위해 설계되어 있고 롤백, 커밋, 이중 암호 지원 보안 등의 기능을 제공하며 많은 서비스에 사용됩니다.
MySQL을 사용하여 데이터를 관리하고 저장할 때 다음과 같은 여러 가지 이점이 있습니다.
- 고가용성 : 실패 없이 오랜 시간 동안 작동할 수 있는 데이터베이스 엔진의 기능을 의미
- 보안 : 데이터 중복 메커니즘과 일반적인 보안 프로세스(예: 비밀번호 및 권한, 액세스 제어, 네트워크 보안)를 통해 데이터를 손상으로부터 보호하는 등 데이터를 보호
- 백업 및 복원 : mysqldump 유틸리티, 바이너리 로그를 사용한 백업 및 복제