CREATE DATABASE
CREATE DATABASE語法用于在Lindorm實例中創(chuàng)建數(shù)據(jù)庫,并設(shè)置數(shù)據(jù)庫屬性,例如數(shù)據(jù)有效期TTL,方便您統(tǒng)一歸檔數(shù)據(jù)。
引擎與版本
CREATE DATABASE語法適用于寬表引擎和時序引擎。
寬表引擎僅2.2.16及以上版本支持CREATE DATABASE語法。
時序引擎無版本限制。
語法
create_database_statement ::= CREATE DATABASE [ IF NOT EXISTS ] database_identifier [ WITH attribute_statement ]
attribute_statement ::= '(' attribute_definition (',' attribute_definition)* ')'
attribute_definition ::= attr_identifier '=' attr_val
2.2.16以下版本的寬表引擎僅支持語法CREATE SCHEMA [ IF NOT EXISTS ] schema_identifier
,2.2.16及以上版本的寬表引擎同時支持等價語法CREATE SCHEMA [ IF NOT EXISTS ] schema_identifier
。SCHEMA
為DATABASE
的別名,創(chuàng)建數(shù)據(jù)庫后,使用該數(shù)據(jù)庫時統(tǒng)一默認(rèn)顯示DATABASE
。
差異說明
寬表引擎和時序引擎對不同語法要素的支持情況如下:
語法要素 | 寬表引擎 | 時序引擎 |
〇 | 〇 | |
?? | 〇 |
使用說明
數(shù)據(jù)庫名(database_identifier)
數(shù)據(jù)庫名需遵循以下規(guī)則:
長度為4~16字符。
可包含數(shù)字、大寫英文字符、小寫英文字符、中劃線(-)和下劃線(_)。
不能是系統(tǒng)保留名稱:lindorm、default、global。
數(shù)據(jù)庫屬性(attribute_definition)
僅時序引擎支持?jǐn)?shù)據(jù)庫屬性。
您可以通過WITH
關(guān)鍵字為數(shù)據(jù)庫添加一個或多個屬性,例如WITH (cold_boundary=30, ttl=60)
。支持的屬性如下:
屬性名 | 類型 | 描述 |
cold_boundary | BIGINT | 冷熱存儲分界線,單位為天。默認(rèn)值為0 ,表示不啟用冷存儲。 說明 如果需要設(shè)置cold_boundary,請先在Lindorm管理控制臺上開通冷存儲功能。如何開通,請參見開通冷存儲。 |
partition_interval | BIGINT | 分區(qū)時長,同一時間段的數(shù)據(jù)和索引存儲在一個時間分區(qū),單位為天。 關(guān)于默認(rèn)值,需注意以下內(nèi)容:
|
ttl | BIGINT | 數(shù)據(jù)有效期,單位為天。超過有效期的數(shù)據(jù)會被自動清理。默認(rèn)值為0,設(shè)置為0或不設(shè)置該參數(shù)時表示數(shù)據(jù)永久保存。 說明 如果同時設(shè)置了ttl和cold_boundary,ttl的設(shè)置時長必須大于cold_boundary的時間。 |
示例
創(chuàng)建數(shù)據(jù)庫
CREATE DATABASE DB1;
結(jié)果驗證
您可以通過SHOW DATABASES;
語句,查看數(shù)據(jù)庫是否創(chuàng)建成功。
指定數(shù)據(jù)庫屬性
創(chuàng)建數(shù)據(jù)庫DB1,其中數(shù)據(jù)存滿30天后轉(zhuǎn)入冷存儲,存滿60天后會被清除。
CREATE DATABASE DB1 WITH(cold_boundary=30,ttl=60);
結(jié)果驗證
您可以通過
SHOW DATABASES;
語句,查看數(shù)據(jù)庫是否創(chuàng)建成功。通過
DESCRIBE DATABASE DB1;
可以查看數(shù)據(jù)庫DB1的屬性值。