다음을 통해 공유


데이터베이스의 속성 보기 또는 변경

적용 대상: SQL Server Azure SQL 데이터베이스 Azure SQL Managed Instance

이 문서는 SQL Server Management Studio 또는 Transact-SQL을 사용하여 SQL Server에서 데이터베이스의 속성을 보거나 변경하는 방법을 설명합니다. 데이터베이스 속성을 변경하면 수정 사항이 즉시 반영됩니다.

항목 내용

시작하기 전에

권장 사항

  • AUTO_CLOSE가 ON으로 설정되어 있으면 sys.databases 카탈로그 뷰의 일부 열과 DATABASEPROPERTYEX 함수는 데이터베이스에서 데이터를 검색할 수 없는 경우 NULL을 반환합니다. 이 문제를 해결하려면 데이터베이스를 엽니다.

보안

사용 권한

데이터베이스의 속성을 변경하려면 데이터베이스에 대한 ALTER 권한이 필요합니다. 데이터베이스의 속성을 보려면 공용 데이터베이스 역할의 멤버 자격이 필요합니다.

SQL Server Management Studio 사용

데이터베이스의 속성을 보기 또는 변경하기

  1. 개체 탐색기에서 SQL Server 데이터베이스 엔진의 인스턴스에 연결한 다음 해당 인스턴스를 확장합니다.

  2. 데이터베이스를 확장하고 볼 데이터베이스를 마우스 오른쪽 단추로 클릭한 다음 속성을 클릭합니다.

  3. 데이터베이스 속성 대화 상자에서 해당 정보를 볼 페이지를 선택합니다. 예를 들어 데이터 파일 및 로그 파일 정보를 보려면 파일 페이지를 선택합니다.

Transact-SQL 사용

Transact-SQL은 데이터베이스의 속성을 보고 데이터베이스의 속성을 변경하는 다양한 방법을 제공합니다. 데이터베이스의 속성을 보려면 DATABASEPROPERTYEX (Transact-SQL) 함수와 sys.databases (Transact-SQL) 카탈로그 보기를 사용할 수 있습니다. 데이터베이스의 속성을 변경하려면 환경에 대한 ALTER DABASTER 문 버전인 ALTER DABASTER(Transact-SQL) 또는 ALTER DABASTER(Azure SQL Database)를 사용할 수 있습니다. 데이터베이스 범위 지정 속성을 보려면 sys.database_scopeed_configurations(Transact-SQL) 카탈로그 보기를 사용하고 데이터베이스 범위 지정 속성을 변경하려면 ALTER DATABASE SCOPED CONFIRATION(Transact-SQL) 문을 사용합니다.

DATABASEPROPERTYEX 기능을 사용하여 데이터베이스의 속성 보기

  1. 데이터베이스 엔진에 연결한 다음 해당 속성을 보려는 데이터베이스에 연결합니다.

  2. 표준 도구 모음에서 새 쿼리를 클릭합니다.

  3. 다음 예를 복사하여 쿼리 창에 붙여 넣고 실행을 클릭합니다. 이 예에서는 DATABASEPROPERTYEX 시스템 함수를 사용하여 AdventureWorks2022 데이터베이스의 AUTO_SHRINK 데이터베이스 옵션 상태를 반환합니다. 반환 값이 1이면 해당 옵션이 ON으로 설정되어 있고 반환 값이 0이면 해당 옵션이 OFF로 설정되어 있음을 의미합니다.

    SELECT DATABASEPROPERTYEX('AdventureWorks2022', 'IsAutoShrink');  
    

sys.database를 쿼리하여 데이터베이스의 속성 보기

  1. 데이터베이스 엔진에 연결한 다음 해당 속성을 보려는 데이터베이스에 연결합니다.

  2. 표준 도구 모음에서 새 쿼리를 클릭합니다.

  3. 다음 예를 복사하여 쿼리 창에 붙여 넣고 실행을 클릭합니다. 다음은 sys.databases 카탈로그 뷰를 쿼리하여 AdventureWorks2022 데이터베이스의 여러 속성을 보는 예제입니다. 다음은 데이터베이스 ID 번호(database_id), 데이터베이스가 읽기 전용인지 읽기/쓰기인지 여부(is_read_only), 데이터베이스에 대한 데이터 정렬(collation_name) 및 데이터베이스 호환성 수준(compatibility_level)을 반환하는 예제입니다.

    SELECT database_id, is_read_only, collation_name, compatibility_level  
    FROM sys.databases WHERE name = 'AdventureWorks2022';  
    

sys.databases_scoped_configuration를 쿼리하여 데이터베이스 범위 구성의 속성을 보려면

  1. 데이터베이스 엔진에 연결한 다음 해당 속성을 보려는 데이터베이스에 연결합니다.

  2. 표준 도구 모음에서 새 쿼리를 클릭합니다.

  3. 다음 예를 복사하여 쿼리 창에 붙여 넣고 실행을 클릭합니다. 이 예제에서는 sys.database_scope_configurations(Transact-SQL) 카탈로그 보기를 쿼리하여 현재 데이터베이스의 여러 속성을 봅니다.

    SELECT configuration_id, name, value, value_for_secondary  
    FROM sys.database_scoped_configurations;  
    

    자세한 예는 sys.database_scope_configurations(Transact-SQL)를 참조하십시오

ALTER DATABASE를 사용하여 SQL Server 2016 데이터베이스의 속성 변경하기

  1. 데이터베이스 엔진에 연결합니다.

  2. 표준 도구 모음에서 새 쿼리를 클릭합니다.

  3. 다음 예를 복사하여 쿼리 창에 붙여 넣습니다. 이 예제에서는 AdventureWorks2022 데이터베이스에서 스냅샷 격리 상태를 확인하고 속성의 상태를 변경한 다음 변경 내용을 확인합니다.

    스냅샷 격리 상태를 결정하려면 SELECT 문을 선택하고 실행을 클릭합니다.

    스냅샷 격리 상태를 변경하려면 ALTER DATABASE 문을 선택하고 실행을 클릭합니다.

    변경 내용을 확인하려면 두 번째 SELECT 문을 선택하고 실행을 클릭합니다.

    USE AdventureWorks2022;
    GO
    -- Check the state of the snapshot_isolation_framework
    -- in the database.
    SELECT name, snapshot_isolation_state,
         snapshot_isolation_state_desc AS description
    FROM sys.databases
    WHERE name = N'AdventureWorks2022';
    GO
    USE master;
    GO
    ALTER DATABASE AdventureWorks2022
        SET ALLOW_SNAPSHOT_ISOLATION ON;
    GO
    -- Check again.
    SELECT name, snapshot_isolation_state,
         snapshot_isolation_state_desc AS description
    FROM sys.databases
    WHERE name = N'AdventureWorks2022';
    GO
    

ALTER DATABASE SCOPED CONFIGURATION을 사용하여 데이터베이스 범위 속성 변경하기

  1. SQL Server 인스턴스에서 데이터베이스에 연결합니다.

  2. 표준 도구 모음에서 새 쿼리를 클릭합니다.

  3. 다음 예를 복사하여 쿼리 창에 붙여 넣습니다. 다음 예제에서는 보조 데이터베이스의 MAXDOP를 주 데이터베이스의 값으로 설정합니다.

    ALTER DATABASE SCOPED CONFIGURATION FOR SECONDARY SET MAXDOP = PRIMARY   
    

참고 항목

sys.databases (Transact-SQL)
DATABASEPROPERTYEX (Transact-SQL)
ALTER DATABASE (Transact-SQL)
ALTER DATABASE(Azure SQL Database)
ALTER DATABASE SCOPED CONFIGURATION(Transact-SQL)
sys.database_scoped_configurations (Transact-SQL)