如何使用指令碼 - Amazon Timestream

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

如何使用指令碼

執行指令碼的簡單範例是 命令:

python3 influx_migration.py --src-host <source host> --src-bucket <source bucket> --dest-host <destination host>

這會遷移單一儲存貯體。

所有選項都可以透過執行下列動作來檢視:

python3 influx_migration.py -h

用途

shell influx_migration.py [-h] [--src-bucket SRC_BUCKET] [--dest-bucket DEST_BUCKET] [--src-host SRC_HOST] --dest-host DEST_HOST [--full] [--confirm-full] [--src-org SRC_ORG] [--dest-org DEST_ORG] [--csv] [--retry-restore-dir RETRY_RESTORE_DIR] [--dir-name DIR_NAME] [--log-level LOG_LEVEL] [--skip-verify] [--s3-bucket S3_BUCKET]

選項

  • -confirm-full (選用):使用 --full 而不使用 --csv會將目的地資料庫中的所有字符、使用者、儲存貯體、儀表板和任何其他鍵值資料取代為原始資料庫的字符、使用者、儲存貯體、儀表板和任何其他鍵值資料。 --full --csv僅遷移所有儲存貯體和儲存貯體中繼資料,包括儲存貯體組織。此選項 (--confirm-full) 將確認完整遷移,並在使用者未輸入的情況下繼續。如果未提供此選項,且--full已提供且未--csv提供此選項,則指令碼將暫停執行,並等待使用者確認。這是一個關鍵動作,請謹慎處理。預設為 false。

  • -csv (選用):是否使用 csv 檔案進行備份和還原。如果同時傳遞 --full ,則會遷移所有組織中所有使用者定義的儲存貯體,而不是系統儲存貯體、使用者、字符或儀表板。如果目的地伺服器中的所有儲存貯體都需要單一組織,而不是其現有的來源組織,請使用 --dest-org

  • -dest-bucket DEST_BUCKET (選用):目的地伺服器中 InfluxDB 儲存貯體的名稱不得為現有的儲存貯體。如果None--src-bucket未提供,則預設為 --src-bucket或 的值。

  • -dest-host DEST_HOST:目的地伺服器的主機。範例:https://http://localhost:8086.

  • -dest-org DEST_ORG (選用):在目的地伺服器中將儲存貯體還原至 的組織名稱。如果省略此項目,則來源伺服器的所有遷移儲存貯體都會保留其原始組織,而且在未建立和切換組織的情況下,遷移的儲存貯體可能不會出現在目的地伺服器中。無論是單一儲存貯體、完整遷移,還是使用 csv 檔案進行備份和還原的任何遷移,此值都會用在所有形式的還原中。

  • -dir-name DIR_NAME (選用):要建立的備份目錄名稱。預設為 influxdb-backup-<timestamp>。不得已存在。

  • -full (選用):是否要執行完整還原,請將目的地伺服器上的所有資料取代為來自所有組織的來源伺服器的所有資料,包括字符、儀表板、使用者等所有鍵值資料。覆寫 --src-bucket--dest-bucket。如果與 搭配使用--csv, 只會遷移儲存貯體的資料和中繼資料。預設為 false。

  • h, --help:顯示說明訊息和結束。

  • -log-level LOG_LEVEL(選用):執行期間要使用的日誌層級。選項是偵錯、錯誤和資訊。預設為資訊。

  • -retry-restore-dir RETRY_RESTORE_DIR(選用):當先前的還原失敗時用於還原的目錄, 會略過備份和目錄建立,如果目錄不存在, 會失敗,可以是 S3 儲存貯體中的目錄。如果還原失敗,則會顯示可用於還原的備份目錄路徑,以相對於目前目錄顯示。S3 儲存貯體的格式為 influxdb-backups/<s3 bucket>/<backup directory>。預設備份目錄名稱為 influxdb-backup-<timestamp>

  • -s3-bucket S3_BUCKET(選用):用於存放備份檔案的 S3 儲存貯體名稱。在 Linux 上,這只是 S3 儲存貯體的名稱,例如 my-bucket、指定的 AWS_ACCESS_KEY_IDAWS_SECRET_ACCESS_KEY環境變數已設定或${HOME}/.aws/credentials存在。在 Windows 上,這是rclone設定的遠端和儲存貯體名稱,例如 my-remote:my-bucket。在建立的influxdb-backups-<timestamp>目錄中遷移後,所有備份檔案都會保留在 S3 儲存貯體中。名為 的臨時掛載目錄influx-backups將在執行此指令碼的目錄中建立。如果未提供,則所有備份檔案都會儲存在本機,並存放在執行此指令碼的建立influxdb-backups-<timestamp>目錄中。

  • -skip-verify(選用):略過TLS憑證驗證。

  • -src-bucket SRC_BUCKET(選用):來源伺服器中 InfluxDB 儲存貯體的名稱。如果未提供,--full則必須提供 。

  • -src-host SRC_HOST(選用):來源伺服器的主機。預設為 http://localhost:8086.

如前所述,如果要使用 --s3-bucketrclone則需要 mountpoint-s3和 ,但如果使用者未提供 的值,則可以忽略 --s3-bucket,在這種情況下,備份檔案將儲存在本機的唯一目錄中。