版本升级
从 v0.4 开始,我们提供了一个内置的工具来帮助您将以前的 GreptimeDB 部署升级到最新版本。
如果不同版本之间有 Breaking Change,我们都建议使用此方法在不同版本的 GreptimeDB 之间进行迁移升级。
此工具可以将 v0.3.0 以上的版本升级到最新版本。
CLI
该工具在 greptime 二进制文件中。在开始之前,您需要准备目标版本的二进制文件。
greptime cli export --help
帮助文档如下:
greptime-cli-export
USAGE:
greptime cli export [OPTIONS] --addr <ADDR> --output-dir <OUTPUT_DIR> --target <TARGET>
OPTIONS:
--addr <ADDR>
Server address to connect
--output-dir <OUTPUT_DIR>
Directory to put the exported data. E.g.: /tmp/greptimedb-export
--database <DATABASE>
The name of the catalog to export
[default: greptime-*]
-j, --export-jobs <EXPORT_JOBS>
Parallelism of the export
[default: 1]
--max-retry <MAX_RETRY>
Max retry times for each job
[default: 3]
-t, --target <TARGET>
Things to export
[default: all]
Possible values:
- schema: Export all table schemas, corresponding to `SHOW CREATE TABLE`
- data: Export all table data, corresponding to `COPY DATABASE TO`
- all: Export all table schemas and data at once
--log-dir <LOG_DIR>
--start-time <START_TIME>
A half-open time range: [start_time, end_time). The start of the time range (time-index column) for data export
--end-time <END_TIME>
A half-open time range: [start_time, end_time). The end of the time range (time-index column) for data export
--log-level <LOG_LEVEL>
--auth-basic <AUTH_BASIC>
The basic authentication for connecting to the server
-h, --help
Print help (see a summary with '-h')
-V, --version
Print version
这里解释一些重要选项的含义:
-addr:Frontend 节点或者 Standalone 进程的 http server 地址。-output-dir:要放置导出数据的目录。需要是当前机器上的路径。导出的 SQL 文件将放在该目录中。-target:指定要导出的数据。schema选项会导出每个表的CREATE TABLE子句。data选项会导出每个数据库的数据以及对应 DB 的COPY FROM语句。默认情况下会导出schema和data的所有数据,推荐不设定选项直接使用默认值以导出所有数据。
对于完整的升级,您需要使用每个目标选项两次执行此工具。
从 0.8.x 升级
这一节将演示如何从 v0.8.x 升级到 v0.9.x。
在下面的文本中,我们假设您的数据库的 HTTP 端口为 127.0.0.1:4000。