다음을 통해 공유


sp_create_removable(Transact-SQL)

적용 대상: SQL Server

이동식 미디어 데이터베이스를 만듭니다. 세 개 이상의 파일(시스템 카탈로그 테이블용, 트랜잭션 로그용 및 데이터 테이블에 대해 하나 이상)을 만들고 해당 파일에 데이터베이스를 배치합니다.

Important

SQL Server의 이후 버전에서는 이 기능이 제거됩니다. 새 개발 작업에서는 이 기능을 사용하지 않도록 하고, 현재 이 기능을 사용하는 애플리케이션은 수정하세요. 대신 CREATE DATABASE를 사용하는 것이 좋습니다.

Transact-SQL 구문 표기 규칙

구문

sp_create_removable
    [ [ @dbname = ] N'dbname' ]
    [ , [ @syslogical = ] N'syslogical' ]
    [ , [ @sysphysical = ] N'sysphysical' ]
    [ , [ @syssize = ] syssize ]
    [ , [ @loglogical = ] N'loglogical' ]
    [ , [ @logphysical = ] N'logphysical' ]
    [ , [ @logsize = ] logsize ]
    [ , [ @datalogical1 = ] N'datalogical1' ]
    [ , [ @dataphysical1 = ] N'dataphysical1' ]
    [ , [ @datasize1 = ] datasize1 ]
    [ , ... ]
    [ , [ @datalogical16 = ] N'datalogical16' ]
    [ , [ @dataphysical16 = ] N'dataphysical16' ]
    [ , [ @datasize16 = ] datasize16 ]
[ ; ]

인수

[ @dbname = ] N'dbname'

이동식 미디어에 사용할 데이터베이스의 이름입니다. @dbname sysname이며 기본값은 .입니다NULL.

[ @syslogical = ] N'syslogical'

시스템 카탈로그 테이블을 포함하는 파일의 논리적 이름입니다. @syslogical 기본값NULL인 sysname입니다.

[ @sysphysical = ] N'sysphysical'

실제 이름입니다. @sysphysical 기본값NULL인 nvarchar(260)입니다. 이 값에는 시스템 카탈로그 테이블을 보유하는 파일의 정규화된 경로가 포함됩니다.

[ @syssize = ] syssize

시스템 카탈로그 테이블을 보유하는 파일의 크기(메가바이트)입니다. @syssize 기본값NULL인 int입니다.

[ @loglogical = ] N'loglogical'

트랜잭션 로그를 포함하는 파일의 논리적 이름입니다. @loglogical sysname이며 기본값은 .입니다NULL.

[ @logphysical = ] N'logphysical'

실제 이름입니다. @logphysical 기본값NULL인 nvarchar(260)입니다. 이 값에는 트랜잭션 로그가 포함된 파일의 정규화된 경로가 포함됩니다.

[ @logsize = ] logsize

트랜잭션 로그를 포함하는 파일의 크기(메가바이트)입니다. @logsize 최소값1인 int입니다.

[ @datalogical1 = ] N'datalogical1'

데이터 테이블을 포함하는 파일의 논리적 이름입니다. @datalogical1 sysname이며 기본값은 .입니다NULL.

데이터 파일과 16 데이터 파일 사이에 1 있어야 합니다. 일반적으로 데이터베이스가 클 것으로 예상되는 경우 둘 이상의 데이터 파일이 만들어지고 여러 디스크에 배포되어야 합니다.

[ @dataphysical1 = ] N'dataphysical1'

실제 이름입니다. @dataphysical1 기본값NULL인 nvarchar(260)입니다. 이 값에는 데이터 테이블이 포함된 파일의 정규화된 경로가 포함됩니다.

[ @datasize1 = ] datasize1

데이터 테이블이 포함된 파일의 크기(메가바이트)입니다. @datasize1 int이며 최소값은 .입니다1.

반환 코드 값

0(성공) 또는 1(실패).

결과 집합

없음.

설명

압축 디스크와 같은 이동식 미디어에서 데이터베이스의 복사본을 만들고 다른 사용자에게 데이터베이스를 배포하려면 이 저장 프로시저를 사용합니다.

사용 권한

CREATE DATABASE, CREATE ANY DATABASE 또는 ALTER ANY DATABASE 권한이 필요합니다.

SQL Server 인스턴스의 디스크 사용을 제어하기 위해 일반적으로 데이터베이스를 만들 수 있는 사용 권한은 일부 로그인 계정으로 제한됩니다.

데이터 및 로그 파일에 대한 권한

데이터베이스에서 특정 작업을 수행할 때마다 해당 데이터 및 로그 파일에 대해 해당 권한이 설정됩니다. 사용 권한은 파일이 열려 있는 디렉터리에 있는 경우 실수로 변조되는 것을 방지합니다.

데이터베이스에 대한 작업 파일에 대한 사용 권한 설정
새 파일을 추가하도록 수정됨 만듦
백업 연결
복원됨 분리

참고 항목

SQL Server는 데이터 및 로그 파일 권한을 설정하지 않습니다.

예제

다음 예제에서는 데이터베이스를 이동식 데이터베이스 inventory 로 만듭니다.

EXEC sp_create_removable 'inventory',
    'invsys',
    'C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Data\invsys.mdf',
    2,
    'invlog',
    'C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Data\invlog.ldf',
    4,
    'invdata',
    'C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Data\invdata.ndf',
    10;