跳到主要内容

MODULE DATA

描述

MODULE DATA 语句有以下两种功能:

  • ALTER SYSTEM LOAD MODULE DATA ...:该语句用于导入指定功能。
  • ALTER SYSTEM CHECK MODULE DATA ...:该语句用于检查指定功能是否已导入。

使用限制及注意事项

  • 当前版本仅支持导入 REDIS 模块功能。
  • 当前版本仅支持检查(CHECK MODULE DATA)导入的 REDIS 模块功能。

权限要求

执行该语句的用户需要拥有 ALTER SYSTEM 权限。有关 seekdb 权限的详细介绍,参见 seekdb 的权限分类

语法

ALTER SYSTEM {LOAD | CHECK} MODULE DATA
MODULE = module_value
[INFILE = file_path];

module_value:
REDIS
| GIS
| TIMEZONE

参数说明

参数描述
LOAD | CHECK用于指定是导入还是检查,具体如下:
  • LOAD:用于导入指定功能。
  • CHECK:用于检查指定功能是否已导入。
module_value用于指定待操作的功能,详细介绍可参见下文 module_value
file_path用于指定待导入的 SQL 文件路径。
因为 TIMEZONEGIS 可能出现多版本数据,所以需要指定对应版本的 SQL 文件。因为目前 TIMEZONEGIS 都只有一个版本,所以支持缺省的 INFILE 参数。当前版本 REDIS 模块功能不支持 INFILE 参数,输入 INFILE 参数路径将会报错。

module_value

  • REDIS:表示操作 REDIS 模块功能。
  • GIS:表示操作 GIS 模块功能。
  • TIMEZONE:表示操作 TIMEZONE 模块功能。

示例

LOAD MODULE DATA 示例

  1. 使用 INFILE 路径导入 REDIS 模块功能。目前 REDIS 模块功能不支持使用 INFILE 路径,所以会报错。

    ALTER SYSTEM LOAD MODULE DATA
    MODULE = REDIS
    INFILE = '/home/admin/test.sql';

    返回结果如下:

    ERROR 4025 (HY000): loading redis module does not need to specify infile
  2. 导入 REDIS 模块功能。

    ALTER SYSTEM LOAD MODULE DATA
    MODULE = REDIS

    返回结果如下:

    Query OK, 0 rows affected
  3. 导入 GIS 模块功能,其中 INFILE 参数是可以省略的,缺省值为 etc/,相应文件在部署目录的 etc 目录下。

    ALTER SYSTEM LOAD MODULE DATA
    MODULE = GIS
    INFILE = 'etc/';

    返回结果如下:

    Query OK, 0 rows affected
  4. 导入 TIMEZONE 模块功能,其中 INFILE 参数是可以省略的,缺省值为 etc/,相应文件在部署目录的 etc 目录下。

    ALTER SYSTEM LOAD MODULE DATA
    MODULE = TIMEZONE
    INFILE = 'etc/';

    返回结果如下:

    Query OK, 0 rows affected

CHECK MODULE DATA 示例

提示

当前版本仅支持检查(CHECK MODULE DATA)导入的 REDIS 模块功能。

  • 未导入功能时,执行 CHECK MODULE DATA 语句将会报错。检查导入 REDIS 模块功能情况。

    ALTER SYSTEM CHECK MODULE DATA
    MODULE = REDIS

    返回结果如下:

    ERROR 4025 (HY000): redis info is not complete,please retry loading
  • 先导入功能后,再检查导入功能情况。

    1. 导入 REDIS 模块功能。

      ALTER SYSTEM LOAD MODULE DATA
      MODULE = REDIS

      返回结果如下:

      Query OK, 0 rows affected
    2. 检查导入 REDIS 模块功能情况。

      ALTER SYSTEM CHECK MODULE DATA
      MODULE = REDIS

      返回结果如下:

      Query OK, 0 rows affected