diff --git a/src/Download/README.md b/src/Download/README.md index 8a91afa86..fa44baa54 100644 --- a/src/Download/README.md +++ b/src/Download/README.md @@ -237,6 +237,123 @@ Legacy version are available here: [https://archive.apache.org/dist/iotdb/](http > sudo sysctl -w kern.ipc.somaxconn=65535 ``` +## How to Upgrade + +### General Rules + +- Minor version upgrades before v1.0.x (e.g., upgrading from v0.12.4 to v0.12.5) + - Minor versions under the same major version are generally compatible with each other. + - Simply download the new minor version and modify its configuration file to match the settings of the original version. + - Stop the old version process and start the new version. + +- Minor version upgrades for v1.0.x and later + - **It is recommended to stop the service before performing the upgrade operation.** + - Download and extract the target version. + - **Usually, you need to replace the `lib` and `sbin` folders.** + - If the target version introduces new configuration items or script changes, it is recommended to synchronously check and merge the contents of directories such as `conf` and `tools` as needed. + - Start the new version instance and verify the service status. + +- Cross-version upgrades + - **Before upgrading across major versions or important minor versions, it is recommended to back up data and configurations first for rollback purposes.** + - Stop writing before the upgrade, and perform `flush`, shut down the old version instance and other operations as required by the target version. + - **Do not upgrade directly across multiple major versions; it is recommended to upgrade step by step according to versions.** + - After the upgrade, check key configurations, data directories and service status to confirm that the version switch is successful. + +### Version Upgrade Instructions + +- How to upgrade from v2.0.4 and above to v2.0.8? + - **Stop writing and shut down the old version instance.** + - Download and extract v2.0.8. + - **Replace the `lib` and `sbin` folders.** + - Start the v2.0.8 instance and verify the service status. + +- How to upgrade from versions below v2.0.4 to v2.0.8? + - **Stop writing and shut down the old version instance.** + - **It is recommended to back up data, configurations and script files in advance for rollback purposes.** + - Download and extract v2.0.8. + - **Replace the new version's `conf`, `lib`, `sbin` and `tools` folders.** + - **`conf/iotdb-system.properties` can use the old version configuration, and other configurations are recommended to be merged item by item according to the new version content.** + - Start the v2.0.8 instance and verify the service status. + +- How to upgrade from v1.3.x to v2.0.8? + - **Back up data before upgrading.** + - **Replace the `lib` and `sbin` folders.** + - **Copy `iotdb-common.sh` from the v2.0.8 `conf` directory to the original v1.3.x `conf` directory.** + - Before starting v2.0.8, it is recommended to check whether the configuration and data directories meet the requirements of the target 2.0.x version. + - Start the v2.0.8 instance and verify the service status. + +- How to upgrade from lower versions to v2.0.x? + - **Do not upgrade directly across versions; it is recommended to upgrade step by step according to versions.** + - For example, when upgrading from v1.1.x to v2.0.x, it is recommended to follow the order `v1.1.x -> v1.2.x -> v1.3.x -> v2.0.x`. + - It is recommended to back up data and configurations before each upgrade for rollback purposes. + +- How to upgrade from v1.0.0 to v1.x.0? + - **Stop writing and shut down the old version instance.** + - Download the new version files. + - **Replace all the `lib` and `sbin` folders.** + - Restart the service. + +- How to upgrade from v0.13.x to v1.0.x? + - The file directory structure of version 0.13 is different from that of version 1.0. **You cannot directly copy the `data` directory from version 0.13 to a version 1.0 cluster for use**. If you need to import data from 0.13 to 1.0, you can use the [LOAD](../UserGuide/latest/Tools-System/Data-Import-Tool_apache) function. + - **The default RPC address for version 0.13 is `0.0.0.0`, and the default RPC address for version 1.0 is `127.0.0.1`.** + +- How to upgrade from v0.12.x to v0.13.x? + - The data file formats of 0.12 and 0.13 are compatible, but formats such as write-ahead logs are not compatible, so an upgrade is required. + - **Execute the `SET SYSTEM TO READONLY` command in the 0.12 CLI and stop writing new data.** + - Execute the `flush` command in the CLI to ensure all TsFile files are closed. + - We recommend backing up the entire `data` directory in advance for rollback purposes. + - Download the latest 0.13 version, extract it and modify the configuration file, especially **configuration parameters that cannot be modified after the first startup such as timestamp precision**, and point all data directories to the backed up or original data directories used by v0.12. + - Stop the v0.12 instance and start the v0.13 instance. + - **After performing the above steps, please confirm that `iotdb_version` in the `data/system/schema/system.properties` file is `0.13.x`. If not, please manually modify it to `0.13.x`.** + - **Note: The configuration file of 0.13 has been significantly modified, so do not directly use the 0.12 configuration file for 0.13.** + - **0.13 has made changes to SQL syntax. Identifiers not enclosed in backticks can only contain the following characters, otherwise they need to be enclosed in backticks.** + - **`[0-9 a-z A-Z _ : @ # $ { }]` (letters, numbers, some special characters)** + - **`['\u2E80'..'\u9FFF']` (Unicode Chinese characters)** + - **In 0.13, if a path node name in the `SELECT` clause is a real number, it needs to be enclosed in backticks to distinguish it from constants in expressions. For example, in the statement 'select 123 + \`123\` from root.sg', the first 123 represents a constant, and the latter \`123\` will be spliced with root.sg to represent the path root.sg.\`123\`.** + +- How to upgrade from v0.11.x or v0.10.x to v0.12.x? + - The process of upgrading from 0.11 or 0.10 to 0.12 is similar to upgrading from v0.9 to v0.10, and the upgrade tool will automatically upgrade the data files. + - **Stop writing new data to the old version.** + - Call `flush` using the CLI to ensure all TsFile files are closed. + - We recommend backing up data files, as well as write-ahead logs and `mlog` files in advance for rollback purposes. + - Download the latest version, extract it and modify the configuration file. Point all data directories to the backed up or original data directories used by v0.11 or v0.10, and synchronize necessary configuration changes from the old version to 0.12. + - Stop the old version IoTDB instance and start the v0.12 instance. IoTDB will automatically upgrade the data file format in the background. Data can be queried and written during the upgrade process. + - The upgrade is successful when the log shows `All files upgraded successfully!`. + - **Note 1: The configuration file of 0.12 has been significantly modified, so do not directly use the original configuration file for 0.12.** + - **Note 2: Since 0.12 does not support upgrading from 0.9 or lower versions, please upgrade to version 0.10 first if you need to upgrade.** + - **Note 3: It is best not to perform `delete` operations before the file upgrade is completed. If you delete data in a database and there are files to be upgraded in that database, the deletion will fail.** + +- How to upgrade from v0.10.x to v0.11.x? + - The data file formats of 0.10 and 0.11 are compatible, but formats such as write-ahead logs are not compatible, so an upgrade is required. + - **Stop writing new data to 0.10.** + - Call `flush` using the CLI to ensure all TsFile files are closed. + - We recommend backing up write-ahead logs and `mlog` files in advance for rollback purposes. + - Download the latest version, extract it and modify the configuration file. Point all data directories to the backed up or original data directories used by v0.10. + - Stop the v0.10 instance and start the v0.11 instance. IoTDB will automatically upgrade incompatible file formats. + - **Note: The configuration file of 0.11 has been significantly modified, so do not directly use the 0.10 configuration file for 0.11.** + +- How to upgrade from v0.9.x to v0.10.x? + - **Stop writing new data to the old version.** + - Call `flush` using the CLI to ensure all TsFile files are closed. + - We recommend backing up data files, as well as write-ahead logs and `mlog` files in advance for rollback purposes. + - Download the latest version, extract it and modify the configuration file. Point all data directories to the backed up or original data directories used by v0.9. + - Stop the v0.9 instance and start the v0.10 instance. IoTDB will automatically upgrade the data file format. + +- How to upgrade from v0.8.x to v0.9.x? + - We recommend backing up data files, as well as write-ahead logs and `mlog` files in advance for rollback purposes. + - Download the latest version, extract it and modify the configuration file. Point all data directories to the backed up or original data directories used by v0.8. + - Stop the v0.8 instance and start the v0.9.x instance. IoTDB will automatically upgrade the data file format. + + +### All releases + +Find all releases in the [Archive repository](https://archive.apache.org/dist/iotdb/). + +### Verifying Hashes and Signatures + +Along with our releases, we also provide sha512 hashes in `*.sha512` files and cryptographic signatures in `*.asc` files. The Apache Software Foundation has an extensive tutorial to [verify hashes and signatures](http://www.apache.org/info/verification.html)which you can follow by using any of these release-signing [KEYS](https://downloads.apache.org/iotdb/KEYS). + + ## About Version 1.0 **After we release version 1.0, how to upgrade from v0.13.x to v1.0.x?** @@ -374,91 +491,3 @@ Query the data of root.sg.a, you can see that the string is unescaped: +-----------------------------+---------+ ``` -## How to Upgrade - -- How to upgrade a minor version (e.g., from v0.12.3 to v0.12.5)? - - - versions which have the same major version are compatible. - - Just download and unzip the new version. Then modify the configuration files to keep consistent - with what you set in the old version. - - stop the old version instance, and start the new one. - -- How to upgrade from v0.12.x to v0.13.x? - - - The data format (i.e., TsFile data) of v0.12.x and v0.13.x are compatible, but the WAL file is - incompatible. So, you can follow the steps: - - ** Execute `SET SYSTEM TO READONLY` command in CLI. ** - - ** Stop writing new data.** - - Execute `flush` command to close all TsFiles. - - We recommend to back up all data files before upgrading for rolling back. - - Just download, unzip v0.13.x.zip, and modify conf/iotdb-engine.properties, ** especially the unchangeable configurations like timestamp precision**. Let all the - directories point to the data folder set in v0.12.x (or the backup folder). You can also modify - other settings if you want. - - Stop IoTDB v0.12.x instance, and then start v0.13.x. - - **After the steps above, please make sure the `iotdb_version` in `data/system/schema/system.properties` file is `0.13.x`. - If not, please change it to `0.13.x` manually.** - - **NOTICE: V0.13 changes many settings in conf/iotdb-engine.properties, so do not use v0.12's - configuration file directly.** - - **In 0.13, the SQL syntax has been changed. The identifiers not enclosed in backquotes can only contain the following characters, otherwise they need to be enclosed in backquotes.** - - **\[0-9 a-z A-Z _ : @ # $ { }] (letters, digits, some special characters)** - - **\['\u2E80'..'\u9FFF'] (UNICODE Chinese characters)** - - **In 0.13, if the path node name in the `SELECT` clause consists of pure numbers, it needs to be enclosed in backquotes to distinguish it from the constant in the expression. For example, in the statement "select 123 + \`123\` from root.sg", the former 123 represents a constant, and the latter \`123\` will be spliced with root.sg, indicating the path root.sg.\`123\`.** - -- How to upgrade from v0.11.x or v0.10.x to v0.12.x? - - - Upgrading from v0.11 or v0.10 to v0.12 is similar as v0.9 to v0.10. The upgrade tool will rewrite the data files automatically. - - **Stop writing new data.** - - Call `flush` command using sbin/start-cli.sh in original version to close all TsFiles. - - We recommend to backup the data file (also the wal files and mlog.txt) before upgrading for rolling back. - - Just download, unzip v0.12.x.zip, and modify conf/iotdb-engine.proeprties to let all the - directories point to the folders set in previous version (or the backup folder). - You can also modify other settings if you want. Any other config changes in v0.11 should be moved to v0.12. - - Stop IoTDB v0.11 or v0.10 instance, and start v0.12.x, then the IoTDB will upgrade data file format automatically. It is ok to read and write data when the upgrading process works. - - After a log `All files upgraded successfully!` printed, the upgrading completes. - - **NOTICE 1: V0.12 changes many settings in conf/iotdb-engine.properties, so do not use previous - configuration file directly.** - - **NOTICE 2: V0.12 doesn't support upgrade from v0.9 or lower version, please upgrade to v0.10 first if needed.** - - **NOTICE 3: We don't recommend deleting data before the upgrading finished. The deletion will fail if you try to delete data in the database with upgrading files.** - -- How to upgrade from v0.10.x to v0.11.x? - - - The data format (i.e., TsFile data) of v0.10.x and v0.11 are compatible, but the WAL file is - incompatible. So, you can follow the steps: - - **Stop writing new data.** - - Call `flush` command using `sbin/start-cli.sh` in v0.10.x to close all TsFiles. - - We recommend to backup the wal files and mlog.txt before upgrading for rolling back. - - Just download, unzip v0.11.x.zip, and modify conf/iotdb-engine.properties to let all the - directories point to the data folder set in v0.10.x (or the backup folder). You can also modify - other settings if you want. - - Stop IoTDB v0.10.x instance, and start v0.11.x, then the IoTDB will upgrade data file format - automatically. - - **NOTICE: V0.11 changes many settings in conf/iotdb-engine.properties, so do not use v0.10's - configuration file directly.** - -- How to upgrade from v0.9.x to v0.10.x? - - - Upgrading from v0.9 to v0.10 is more complex than v0.8 to v0.9. - - **Stop writing new data.** - - Call `flush` command using sbin/start-client.sh in v0.9 to close all TsFiles. - - We recommend to backup the data file (also the wal files and mlog.txt) before upgrading for rolling back. - - Just download, unzip v0.10.x.zip, and modify conf/iotdb-engine.proeprties to let all the - directories point to the folders set in v0.9.x (or the backup folder). - You can also modify other settings if you want. - - Stop IoTDB v0.9 instance, and start v0.10.x, then the IoTDB will upgrade data file format automatically. - -- How to upgrade from 0.8.x to v0.9.x? - - We recommend to backup the data file (also the wal files and mlog.txt) before upgrading for rolling back. - - Just download, unzip v0.9.x.zip, and modify conf/iotdb-engine.properties to let all the - directories point to the folders set in v0.8.x (or the backup folder). - You can also modify other settings if you want. - - Stop IoTDB v0.8 instance, and start v0.9.x, then the IoTDB will upgrade data file format automatically. - -​ - -# All releases - -Find all releases in the [Archive repository](https://archive.apache.org/dist/iotdb/). - -# Verifying Hashes and Signatures - -Along with our releases, we also provide sha512 hashes in `*.sha512` files and cryptographic signatures in `*.asc` files. The Apache Software Foundation has an extensive tutorial to [verify hashes and signatures](http://www.apache.org/info/verification.html)which you can follow by using any of these release-signing [KEYS](https://downloads.apache.org/iotdb/KEYS). diff --git a/src/zh/Download/README.md b/src/zh/Download/README.md index cbe1fcfd0..8a72d5084 100644 --- a/src/zh/Download/README.md +++ b/src/zh/Download/README.md @@ -237,12 +237,141 @@ > sudo sysctl -w kern.ipc.somaxconn=65535 ``` -## 关于 Version 1.0 +## 如何升级 + +### 通用规则 + +- v1.0.x 之前的小版本升级(例如,从 v0.12.4 升级到 v0.12.5) + + - 同一个大版本下的多个小版本通常互相兼容。 + - 只需要下载新的小版本,然后修改其配置文件,使其与原有版本的设置一致。 + - 停掉旧版本进程,启动新版本即可。 + +- v1.0.x 及之后的小版本升级 + + - **建议先停止服务,再执行升级操作。** + - 下载并解压目标版本。 + - **通常需要替换 `lib`、`sbin` 文件夹。** + - 如目标版本引入了新的配置项或脚本变更,建议同步检查并按需合并 `conf`、`tools` 等目录内容。 + - 启动新版本实例并验证服务状态。 + +- 跨版本升级 + + - **跨大版本或跨重要小版本升级前,建议先备份数据和配置,以便回滚。** + - 升级前应停止写入,并按目标版本要求执行 `flush`、关闭旧版本实例等操作。 + - **请勿跨多个大版本直接升级,建议按版本逐级升级。** + - 升级后应检查关键配置、数据目录和服务状态,确认版本切换成功。 + +### 版本升级说明 + +- 如何从 v2.0.4 及以上版本升级到 v2.0.8? + + - **停止写入并关闭旧版本实例。** + - 下载并解压 v2.0.8。 + - **替换 `lib`、`sbin` 文件夹。** + - 启动 v2.0.8 实例并验证服务状态。 + +- 如何从 v2.0.4 以下版本升级到 v2.0.8? + + - **停止写入并关闭旧版本实例。** + - **建议提前备份数据、配置和脚本文件,以备回滚。** + - 下载并解压 v2.0.8。 + - **替换新版 `conf`、`lib`、`sbin`、`tools` 文件夹。** + - **`conf/iotdb-system.properties` 可以沿用旧版配置,其余配置建议按新版本内容逐项合并。** + - 启动 v2.0.8 实例并验证服务状态。 + +- 如何从 v1.3.x 升级到 v2.0.8? + + - **升级前先备份数据。** + - **替换 `lib`、`sbin` 文件夹。** + - **将 v2.0.8 `conf` 目录中的 `iotdb-common.sh` 拷贝到原 v1.3.x 的 `conf` 目录。** + - 启动 v2.0.8 前,建议检查配置和数据目录是否满足目标 2.0.x 版本要求。 + - 启动 v2.0.8 实例并验证服务状态。 + +- 如何从更低版本升级到 v2.0.x? + + - **请勿跨版本直接升级,建议按版本逐级升级。** + - 例如,从 v1.1.x 升级到 v2.0.x 时,建议按 `v1.1.x -> v1.2.x -> v1.3.x -> v2.0.x` 的顺序执行。 + - 每次升级前都建议先备份数据和配置,以便回滚。 + +- 如何从 v1.0.0 升级到 v1.x.0? + + - **停止写入并关闭旧版本实例。** + - 下载新版本文件。 + - **将 `lib`、`sbin` 文件夹全部替换。** + - 重启即可。 + +- 如何从 v0.13.x 升级到 v1.0.x? + + - 0.13 版本与 1.0 版本的文件目录结构不同,**不能将 0.13 的 `data` 目录直接拷贝到 1.0 集群使用**。如果需要将 0.13 的数据导入至 1.0,可以使用 [LOAD](../UserGuide/latest/Tools-System/Data-Import-Tool_apache) 功能。 + - **0.13 版本的默认 RPC 地址是 `0.0.0.0`,1.0 版本的默认 RPC 地址是 `127.0.0.1`。** + +- 如何从 v0.12.x 升级到 v0.13.x? + + - 0.12 与 0.13 的数据文件格式兼容,但写前日志等格式不兼容,因此需要进行升级。 + - **在 0.12 的 CLI 中执行 `SET SYSTEM TO READONLY` 命令,并停止新数据的写入。** + - 在 CLI 执行 `flush` 命令,确保关闭所有的 TsFile 文件。 + - 我们推荐提前备份整个 `data` 目录,以备回滚。 + - 下载最新 0.13 版本,解压并修改配置文件,尤其是 **时间戳精度等首次启动后不可修改的配置参数**,并将各数据目录都指向备份的或者 v0.12 原来使用的数据目录。 + - 停止 v0.12 的实例,启动 v0.13 的实例。 + - **执行上述步骤后,请确认 `data/system/schema/system.properties` 文件中的 `iotdb_version` 是 `0.13.x`。如果不是,请手动修改为 `0.13.x`。** + - **注意:0.13 的配置文件进行了较大改动,因此不要直接将 0.12 的配置文件用于 0.13。** + - **0.13 进行了 SQL 语法的改动,不使用反引号括起的标识符中仅能包含如下字符,否则需要使用反引号括起。** + - **`[0-9 a-z A-Z _ : @ # $ { }]`(字母、数字、部分特殊字符)** + - **`['\u2E80'..'\u9FFF']`(Unicode 中文字符)** + - **0.13 中 `SELECT` 子句中路径结点名如果是实数,需要使用反引号引起,用于与表达式中的常数区分。如语句 "select 123 + \`123\` from root.sg",前一个 123 表示常数,后一个 \`123\` 会和 root\.sg 拼接,表示路径 root\.sg.\`123\`。** + +- 如何从 v0.11.x 或 v0.10.x 升级到 v0.12.x? + + - 从 0.11 或 0.10 升级到 0.12 的过程与 v0.9 升级到 v0.10 类似,升级工具会自动进行数据文件的升级。 + - **停掉旧版本新数据写入。** + - 用 CLI 调用 `flush`,确保关闭所有的 TsFile 文件。 + - 我们推荐提前备份数据文件,以及写前日志和 `mlog` 文件,以备回滚。 + - 下载最新版,解压并修改配置文件。将各数据目录都指向备份的或者 v0.11 或 v0.10 原来使用的数据目录,并将旧版本中的必要配置修改同步到 0.12 中。 + - 停止旧版本 IoTDB 实例,启动 v0.12 实例。IoTDB 将在后台自动升级数据文件格式。在升级过程中数据可以进行查询和写入。 + - 当日志中显示 `All files upgraded successfully!` 后代表升级成功。 + - **注意 1:0.12 的配置文件进行了较大改动,因此不要直接将原本的配置文件用于 0.12。** + - **注意 2:由于 0.12 不支持从 0.9 或更低版本升级,如需升级,请先升级到 0.10 版本。** + - **注意 3:在文件升级完成前,最好不要进行 `delete` 操作。如果删除某个 database 内的数据且该 database 内存在待升级文件,删除会失败。** + +- 如何从 v0.10.x 升级到 v0.11.x? + + - 0.10 与 0.11 的数据文件格式兼容,但写前日志等格式不兼容,因此需要进行升级。 + - **停掉 0.10 的新数据写入。** + - 用 CLI 调用 `flush`,确保关闭所有的 TsFile 文件。 + - 我们推荐提前备份写前日志和 `mlog` 文件,以备回滚。 + - 下载最新版,解压并修改配置文件。将各数据目录都指向备份的或者 v0.10 原来使用的数据目录。 + - 停止 v0.10 的实例,启动 v0.11 的实例。IoTDB 将自动升级不兼容的文件格式。 + - **注意:0.11 的配置文件进行了较大改动,因此不要直接将 0.10 的配置文件用于 0.11。** + +- 如何从 v0.9.x 升级到 v0.10.x? + + - **停掉旧版本新数据写入。** + - 用 CLI 调用 `flush`,确保关闭所有的 TsFile 文件。 + - 我们推荐提前备份数据文件,以及写前日志和 `mlog` 文件,以备回滚。 + - 下载最新版,解压并修改配置文件。将各数据目录都指向备份的或者 v0.9 原来使用的数据目录。 + - 停止 v0.9 的实例,启动 v0.10 的实例。IoTDB 将自动升级数据文件格式。 + +- 如何从 v0.8.x 升级到 v0.9.x? + + - 我们推荐提前备份数据文件,以及写前日志和 `mlog` 文件,以备回滚。 + - 下载最新版,解压并修改配置文件。将各数据目录都指向备份的或者 v0.8 原来使用的数据目录。 + - 停止 v0.8 的实例,启动 v0.9.x 的实例。IoTDB 将自动升级数据文件格式。 -- 如何从 v0.13.x 升级到 v1.0.x? - - **1.0 版本进行了 SQL 语法约定的改动(请参考用户手册语法约定章节),不兼容之处可以参考下方 1.0 版本不兼容的语法详细说明**。 - - 为了保证 UDF 相关 API 的稳定性,1.0 版本中 UDF 相关 API 被独立为一个单独的 module,不再依赖 tsfile 包,已经实现的 UDF 需要改写代码,将 `TsDataType` 替换为 `Type`,将 `org.apache.iotdb.tsfile.utils.Binary` 替换成 `org.apache.iotdb.udf.api.type.Binary`,并重新进行打包装载流程。 +### 所有版本 + +在 [Archive repository](https://archive.apache.org/dist/iotdb/) 查看所有版本 + +### 验证哈希和签名 + +除了我们的发行版,我们还在 `*.sha512` 文件中提供了 sha512 散列,并在 `*.asc` 文件中提供了加密签名。 Apache Software Foundation 提供了广泛的教程来 [验证哈希和签名](http://www.apache.org/info/verification.html),您可以使用任何这些发布签名的 [KEYS](https://downloads.apache.org/iotdb/KEYS) 来遵循这些哈希和签名。 + + +## 关于 Version 1.0 + +- **1.0 版本进行了 SQL 语法约定的改动(请参考用户手册语法约定章节),不兼容之处可以参考下方 1.0 版本不兼容的语法详细说明**。 +- 为了保证 UDF 相关 API 的稳定性,1.0 版本中 UDF 相关 API 被独立为一个单独的 module,不再依赖 tsfile 包,已经实现的 UDF 需要改写代码,将 `TsDataType` 替换为 `Type`,将 `org.apache.iotdb.tsfile.utils.Binary` 替换成 `org.apache.iotdb.udf.api.type.Binary`,并重新进行打包装载流程。 ### 1.0 版本不兼容的语法详细说明 @@ -374,78 +503,3 @@ insert into root.sg(time, a) values(4, "\u96d5") |1970-01-01T08:00:00.004+08:00| 雕| +-----------------------------+---------+ ``` - -# 如何升级 - -- 如何升级小版本 (例如,从 v0.12.4 to v0.12.5)? - - - 同一个大版本下的多个小版本是互相兼容的。 - - 只需要下载新的小版本, 然后修改其配置文件,使其与原有版本的设置一致。 - - 停掉旧版本进程,启动新版本即可。 - -- 如何从 v0.13.x 升级到 v1.0.x? - - - 0.13 版本与 1.0 版本的文件目录结构不同,**不能将 0.13 的 data 目录直接拷贝到 1.0 集群使用**。如果需要将 0.13 的数据导入至 1.0,可以使用 [LOAD](../UserGuide/latest/Tools-System/Data-Import-Tool_apache) 功能; - - **0.13 版本的默认 RPC 地址是 0.0.0.0,1.0 版本的默认 RPC 地址是 127.0.0.1** - -- 如何从 v1.0.0 升级到 v1.x.0? - - - 停止写入,下载新版本文件,将 lib 文件夹全部替换,重启即可 - -- 如何从 v0.12.x 升级到 v0.13.x? - - 0.12 与 0.13 的数据文件格式兼容,但写前日志等格式不兼容,因此需要进行升级(但速度很快): - - **在 0.12 的 CLI 中执行 `SET SYSTEM TO READONLY` 命令,并停止新数据的写入。** - - 在 CLI 执行 `flush` 命令,确保关闭所有的 TsFile 文件。 - - 我们推荐提前备份整个 data 目录,以备回滚。 - - 下载最新 0.13 版本,解压并修改配置文件,尤其是 **时间戳精度等首次启动后不可修改的配置参数 **。并将各数据目录都指向备份的或者 v0.12 原来使用的数据目录。 - - 停止 v0.12 的实例,启动 v0.13 的实例。 - - **执行上述步骤后, 请确认`data/system/schema/system.properties`文件中的 `iotdb_version` 是 `0.13.x`. - 如果不是,请手动修改为`0.13.x`。** - - **注意:0.13 的配置文件进行了较大改动,因此不要直接将 0.12 的配置文件用于 0.13** - - **0.13 进行了 SQL 语法的改动,不使用反引号括起的标识符中仅能包含如下字符,否则需要使用反引号括起。** - - **\[0-9 a-z A-Z _ : @ # $ { }] (字母,数字,部分特殊字符)** - - **\['\u2E80'..'\u9FFF'] (UNICODE 中文字符)** - - **0.13 中 `SELECT` 子句中路径结点名如果是实数,需要使用反引号引起,用于与表达式中的常数区分。如语句 "select 123 + \`123\` from root.sg",前一个 123 表示常数,后一个 \`123\`会和 root.sg 拼接,表示路径 root.sg.\`123\`。** -- 如何从 v0.11.x 或 v0.10.x 升级到 v0.12.x? - - - 从 0.11 或 0.10 升级到 0.12 的过程与 v0.9 升级到 v0.10 类似,升级工具会自动进行数据文件的升级。 - - **停掉旧版本新数据写入。** - - 用 CLI 调用 `flush`,确保关闭所有的 TsFile 文件。 - - 我们推荐提前备份数据文件(以及写前日志和 mlog 文件),以备回滚。 - - 下载最新版,解压并修改配置文件。将各数据目录都指向备份的或者 v0.11 或 0.10 原来使用的数据目录。 把 0.11 中的其他修改都放到 0.12 中。 - - 停止旧版本 IoTDB 的实例,启动 v0.12 的实例。IoTDB 将后台自动升级数据文件格式。在升级过程中数据可以进行查询和写入。 - - 当日志中显示 `All files upgraded successfully!` 后代表升级成功。 - - **注意 1:0.12 的配置文件进行了较大改动,因此不要直接将原本的配置文件用于 0.12** - - **注意 2: 由于 0.12 不支持从 0.9 或者更低版本升级,如果需要升级,请先升级到 0.10 版本** - - **注意 3: 在文件升级完成前,最好不要进行 delete 操作。如果删除某个 database 内的数据且该 database 内存在待升级文件,删除会失败。** - -- 如何从 v0.10.x 升级到 v0.11.x? - - - 0.10 与 0.11 的数据文件格式兼容,但写前日志等格式不兼容,因此需要进行升级(但速度很快): - - **停掉 0.10 的新数据写入。** - - 用 CLI 调用`flush`,确保关闭所有的 TsFile 文件。 - - 我们推荐提前备份写前日志和 mlog 文件,以备回滚。 - - 下载最新版,解压并修改配置文件。将各数据目录都指向备份的或者 v0.10 原来使用的数据目录。 - - 停止 v0.10 的实例,启动 v0.11 的实例。IoTDB 将自动升级不兼容的文件格式。 - - **注意:0.11 的配置文件进行了较大改动,因此不要直接将 0.10 的配置文件用于 0.11** - -- 如何从 v0.9.x 升级到 v0.10.x? - - - **停掉旧版本新数据写入。** - - 用 CLI 调用`flush`,确保关闭所有的 TsFile 文件。 - - 我们推荐提前备份数据文件(以及写前日志和 mlog 文件),以备回滚。 - - 下载最新版,解压并修改配置文件。将各数据目录都指向备份的或者 v0.9 原来使用的数据目录。 - - 停止 v0.9 的实例,启动 v0.10 的实例。IoTDB 将自动升级数据文件格式。 - -- 如何从 0.8.x 升级到 v0.9.x? - - 我们推荐提前备份数据文件(以及写前日志和 mlog 文件),以备回滚。 - - 下载最新版,解压并修改配置文件。将各数据目录都指向备份的或者 v0.8 原来使用的数据目录。 - - 停止 v0.8 的实例,启动 v0.9.x 的实例。IoTDB 将自动升级数据文件格式。 - -# 所有版本 - -在 [Archive repository](https://archive.apache.org/dist/iotdb/) 查看所有版本 - -# 验证哈希和签名 - -除了我们的发行版,我们还在 `*.sha512` 文件中提供了 sha512 散列,并在 `*.asc` 文件中提供了加密签名。 Apache Software Foundation 提供了广泛的教程来 [验证哈希和签名](http://www.apache.org/info/verification.html),您可以使用任何这些发布签名的 [KEYS](https://downloads.apache.org/iotdb/KEYS) 来遵循这些哈希和签名。