数据库管理

  • 创建数据库

    1. CREATE DATABASE [IF NOT EXISTS] db_name [KEEP keep] [UPDATE 1];

    说明:

    1) KEEP是该数据库的数据保留多长天数,缺省是3650天(10年),数据库会自动删除超过时限的数据;

    2) UPDATE 标志数据库支持更新相同时间戳数据;

    3) 数据库名最大长度为33;

    4) 一条SQL 语句的最大长度为65480个字符;

    5) 数据库还有更多与存储相关的配置参数,请参见系统管理。

  • 显示系统当前参数

    1. SHOW VARIABLES;
  • 使用数据库

    1. USE db_name;

    使用/切换数据库

  • 删除数据库

    1. DROP DATABASE [IF EXISTS] db_name;

    删除数据库。所包含的全部数据表将被删除,谨慎使用

  • 修改数据库参数

    1. ALTER DATABASE db_name COMP 2;

    COMP 参数是指修改数据库文件压缩标志位,缺省值为 2,取值范围为 [0, 2]。0 表示不压缩,1 表示一阶段压缩,2 表示两阶段压缩。

    1. ALTER DATABASE db_name REPLICA 2;

    REPLICA 参数是指修改数据库副本数,取值范围 [1, 3]。在集群中使用,副本数必须小于或等于 DNODE 的数目。

    1. ALTER DATABASE db_name KEEP 365;

    KEEP 参数是指修改数据文件保存的天数,缺省值为 3650,取值范围 [days, 365000],必须大于或等于 days 参数值。

    1. ALTER DATABASE db_name QUORUM 2;

    QUORUM 参数是指数据写入成功所需要的确认数,取值范围 [1, 2]。对于异步复制,quorum 设为 1,具有 master 角色的虚拟节点自己确认即可。对于同步复制,需要至少大于等于 2。原则上,Quorum >= 1 并且 Quorum <= replica(副本数),这个参数在启动一个同步模块实例时需要提供。

    1. ALTER DATABASE db_name BLOCKS 100;

    BLOCKS 参数是每个 VNODE (TSDB) 中有多少 cache 大小的内存块,因此一个 VNODE 的用的内存大小粗略为(cache * blocks)。取值范围 [3, 1000]。

    1. ALTER DATABASE db_name CACHELAST 0;

    CACHELAST 参数控制是否在内存中缓存数据子表的 last_row。缺省值为 0,取值范围 [0, 1]。其中 0 表示不启用、1 表示启用。(从 2.0.11 版本开始支持,修改后需要重启服务器生效。)

    Tips: 以上所有参数修改后都可以用show databases来确认是否修改成功。

  • 显示系统所有数据库

    1. SHOW DATABASES;