본문으로 건너뛰기
최종 수정: 에

ALTER DATABASE

설명​

이 문은 지정된 데이터베이스의 속성을 설정하고, 데이터베이스 이름을 변경하며, 데이터베이스의 각종 할당량을 설정하는 데 사용됩니다.

구문​

ALTER DATABASE <db_name> RENAME <new_name>
ALTER DATABASE <db_name> SET { DATA | REPLICA | TRANSACTION } QUOTA <quota>
ALTER DATABASE <db_name> SET <PROPERTIES> ("<key>" = "<value>" [, ...])

필수 매개변수​

** 1. <db_name>**

변경할 데이터베이스의 식별자를 지정합니다.

** 2. <new_db_name>**

데이터베이스의 새 식별자를 지정합니다.

** 3. <quota>**

데이터베이스의 데이터 용량 할당량 또는 복제본 수 할당량

** 4. <PROPERTIES>**

이 데이터베이스에 대한 추가 정보

권한 관리​

이 SQL 명령을 실행하는 사용자는 최소한 다음 권한을 보유해야 합니다.

권한객체참고
ALTER_PRIV해당 데이터베이스해당 데이터베이스를 변경할 수 있는 권한이 필요합니다.

주의 사항​

  • 데이터 및 복제본 할당량은 새 데이터나 복제본을 추가하는 작업에 적용되는 허용 한도입니다. 할당량을 현재 사용량보다 낮게 설정해도 기존 데이터나 복제본은 삭제되지 않습니다. 현재 사용량이 할당량에 도달하거나 이를 초과하면 Doris는 해당 사용량을 늘리는 후속 작업을 거부합니다.
  • RECOVER는 휴지통에서 메타데이터와 기존 데이터 또는 복제본을 복원합니다. 새 데이터를 기록하거나 새 복제본을 생성하지 않으므로 데이터 또는 복제본 할당량으로 인해 차단되지 않습니다. 복원에 성공하면 데이터베이스 사용량이 할당량을 초과할 수 있습니다. 이후 데이터나 복제본을 추가하는 작업은 사용량이 할당량 아래로 떨어지거나 할당량을 높일 때까지 계속 차단됩니다.

데이터베이스 이름을 변경한 후에는 필요에 따라 REVOKE 및 GRANT 명령을 사용하여 해당 사용자 권한을 수정하세요. 데이터베이스의 기본 데이터 용량 할당량은 1024 GB이며, 기본 복제본 수 할당량은 1073741824입니다.

예제​

  • 지정된 데이터베이스의 데이터 용량 할당량 설정

      ALTER DATABASE example_db SET DATA QUOTA 10995116277760;
  • 데이터베이스 이름을 example_db에서 example_db2로 변경

      ALTER DATABASE example_db RENAME example_db2;
  • 지정된 데이터베이스의 복제본 수 할당량 설정

      ALTER DATABASE example_db SET REPLICA QUOTA 102400;
  • 데이터베이스에 속한 테이블의 기본 복제본 배치 전략 변경(이 작업은 새로 생성되는 테이블에만 적용되며 데이터베이스의 기존 테이블은 변경하지 않습니다)

      ALTER DATABASE example_db SET PROPERTIES("replication_allocation" = "tag.location.default:2");
  • 데이터베이스에 속한 테이블의 기본 복제본 배치 정책 해제(이 작업은 새로 생성되는 테이블에만 적용되며 데이터베이스의 기존 테이블은 변경하지 않습니다)

      ALTER DATABASE example_db SET PROPERTIES("replication_allocation" = "");
  • 데이터베이스에 속한 테이블의 기본 Storage Vault 변경(이 작업은 새로 생성되는 테이블에만 적용되며 데이터베이스의 기존 테이블은 변경하지 않습니다)

      ALTER DATABASE example_db SET PROPERTIES("storage_vault_name" = "hdfs_demo_vault");
  • 데이터베이스에 속한 테이블의 기본 Storage Vault 설정 해제(이 작업은 새로 생성되는 테이블에만 적용되며 데이터베이스의 기존 테이블은 변경하지 않습니다)

      ALTER DATABASE example_db SET PROPERTIES("storage_vault_name" = "");
참고

데이터베이스의 storage_vault_name 설정은 버전 3.0.5부터 지원됩니다.