CREATE DATABASE语法用于在Lindorm实例中创建数据库,并设置数据库属性,例如数据有效期TTL,方便您统一归档数据。
引擎与版本
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
的别名,创建数据库后,使用该数据库时统一默认显示DATABASE
。
差异说明
宽表引擎和时序引擎对不同语法要素的支持情况如下:
语法要素 | 宽表引擎 | 时序引擎 |
〇 | 〇 | |
✖️ | 〇 |
使用说明
数据库名(database_identifier)
数据库名需遵循以下规则:
长度为4~16字符。
可包含数字、大写英文字符、小写英文字符、中划线(-)和下划线(_)。
不能是系统保留名称:lindorm、default、global。
数据库属性(attribute_definition)
仅时序引擎支持数据库属性。
您可以通过WITH
关键字为数据库添加一个或多个属性,例如WITH (cold_boundary=30, ttl=60)
。支持的属性如下:
属性名 | 类型 | 描述 |
cold_boundary | BIGINT | 冷热存储分界线,单位为天。默认值为0 ,表示不启用冷存储。 说明 如果需要设置cold_boundary,请先在Lindorm管理控制台上开通冷存储功能。如何开通,请参见开通冷存储。 |
partition_interval | BIGINT | 分区时长,同一时间段的数据和索引存储在一个时间分区,单位为天。 关于默认值,需注意以下内容:
|
ttl | BIGINT | 数据有效期,单位为天。超过有效期的数据会被自动清理。默认值为0,设置为0或不设置该参数时表示数据永久保存。 说明 如果同时设置了ttl和cold_boundary,ttl的设置时长必须大于cold_boundary的时间。 |
示例
创建数据库
CREATE DATABASE DB1;
结果验证
您可以通过SHOW DATABASES;
语句,查看数据库是否创建成功。
指定数据库属性
创建数据库DB1,其中数据存满30天后转入冷存储,存满60天后会被清除。
CREATE DATABASE DB1 WITH(cold_boundary=30,ttl=60);
结果验证
您可以通过
SHOW DATABASES;
语句,查看数据库是否创建成功。通过
DESCRIBE DATABASE DB1;
可以查看数据库DB1的属性值。