SQL은 기본적으로 MDF 확장자를 가진 파일에 데이터를 저장한다.
또한 데이터베이스는 데이터에 변화가 있었을 때 반드시!!!!!!!!!!!! 로그성 데이터를 기록한다.
(ex. 정전, 물리적..)
데이터 손실을 방지하기위해 DB는 트랜잭션 이라는 개념으로 데이터를 보존한다.
이때 SQL은 LDF라는 확장자를 가진곳에 데이터가 변경된 내역을 저장하게 된다.
그래서 기본적으로 DB를 생성하게 되면 MDF와 LDF 하나씩은 존재해야된다.
MDF는 파일 그룹에 속하게 되는데 기분적으로 SQL의 PRIMARY 라는 파일 그룹에 존재한다.
물론 MDF가 한개 이상의 파이르룹을 가질순 없고 무조건 1:1로만 가능하다.
Database
Primary FileGroup // LDF FILE
MDF FILE
로 따로따로 존재하게 된다.
DB라는 큰 틀 안에 PF가 존재하고 그 안에 MDF가 존재한다. LDF는 따로 별개로 DB안에 존재한다고 보면된다.
파일그룹이 여러개 일 수있고, MDF이 여러개 일 수 있다.
DATA BASE
PRIMARY SECOND // LDF FILE, LDF FILE
MDF FILE NDF FILE
DB안에 MDF가 두개 이상이 되면 DMF 말고 NDF로 만들어지고 위에 그림처럼 LDF가 한 개 더 생성된다.
SQL Server Management Studio 에 접속 후
데이터 베이스에서 새로 생성하기를 누르면 창이 뜰 것 이다.
Logical Name: 논리적인 이름
File Type: Rows Data(MDF 파일), Log(LDF 파일)
Filegroup: 파일 그룹(기본값 PRIMARY)
Initial Size (MB): 기본적인 파일 사이즈(단위: MB)
Autogrowth / Maxsize: 자동 증가 설정 및 최대 사이즈 설정 값
Path: 실제 파일이 위치할 경로
File Name: 실제 파일 이름 입니다
MDF는 PRIMARY그룹이며 File Type이 로그인 부분은 LDF이다.
이며, DB name을 입력 후 Path옆 줄임말(...)을 클릭해보자.
Enable Autogrowth: 자동증가 활성 여부
File Growth: 파일 증가 방법
1. In Percent: 퍼센트
2. In Megabytes: MB 량으로 늘리기
Maximun File Size: 최대 파일 사이즈
1. Limited to (MB): 지정된 파일 사이즈
2. Unlimited: 제한 없음
가 나오는 것을 알 수 있다.
이렇게 만들고
USE TEST
GO
SP_HELPDB N'TEST'
GO
* Query로도 데이터 베이스를 만들 수 있다.
CREATE DATABASE TestQuery ON
(
NAME = N'TestQuery'
, FILENAME = 'C:\TestQuery_DATA.MDF'
, SIZE = 4MB
, MAXSIZE = UNLIMITED
, FILEGROWTH = 1MB
)
LOG ON
(
NAME = N'TestQuery_log'
, FILENAME = 'C:\TestQuery_LOG.LDF'
, SIZE = 1MB
, MAXSIZE = 1024GB
, FILEGROWTH = 10%
);
~~ 열거나 만드는 중 CREATE FILE에서 운영 체제 오류 5(액세스가 거부되었습니다.)이(가) 발생했습니다.
라고 문제가 발생했다.
구글에 검색해보니
SQL Server가 계정지정으로 되있어서 -> 로컬시스템계정, 데스크톱 상호작용으로 바꿔야된다고한다.
참고할것. (시작프로그램에 서비스를 찾아서 들어가면 SQL 나온다.)
[참고: http://www.sqler.com/index.php?mid=bSQL2011&page=4&document_srl=382066]
'데이터베이스' 카테고리의 다른 글
DataBase 테이블 생성. (0) | 2018.02.08 |
---|---|
DB - Index란 ? (0) | 2017.09.30 |
데이터베이스의 정의 (0) | 2017.09.12 |
화일(파일)과 화일(파일)시스템 (0) | 2017.09.12 |