NDB 8.0.22 中引入的ndbxfrm实用程序可用于解压缩、解密和输出有关 NDB Cluster 创建的压缩、加密或两者的文件的信息。它还可以用于压缩或加密文件。
表 23.52 与程序 ndbxfrm 一起使用的命令行选项
| 格式 | 描述 | 添加、弃用或删除 |
|---|---|---|
| 压缩文件 | 添加:NDB 8.0.22 |
|
| 提供文件解密密钥 | 添加:NDB 8.0.31 |
|
| 从 stdin 提供文件解密密钥 | 添加:NDB 8.0.31 |
|
| 使用此密码解密文件 | 添加:NDB 8.0.22 |
|
| 从 STDIN 以安全的方式获取解密密码 | 添加:NDB 8.0.24 |
|
| 读取全局文件后读取给定文件 | (支持所有基于 MySQL 8.0 的 NDB 版本) |
|
| 还阅读带有 concat(group, suffix) 的组 | (支持所有基于 MySQL 8.0 的 NDB 版本) |
|
| 仅从给定文件中读取默认选项 | (支持所有基于 MySQL 8.0 的 NDB 版本) |
|
| 打印有关文件的信息,包括文件头和文件尾 | 添加:NDB 8.0.31 |
|
| 作为一个单元加密的输入数据块的大小。与 XTS 一起使用,对于 CBC 模式设置为零 | 添加:NDB 8.0.29 |
|
| 加密密码:1个用于CBC,2个用于XTS | 添加:NDB 8.0.29 |
|
| 键定义中使用的迭代次数 | 添加:NDB 8.0.22 |
|
| 使用此密钥加密文件 | 添加:NDB 8.0.31 |
|
| 使用标准输入提供的密钥加密文件 | 添加:NDB 8.0.31 |
|
| 使用此密码加密文件 | 添加:NDB 8.0.22 |
|
| 从 STDIN 以安全方式获取加密密码 | 添加:NDB 8.0.24 |
|
| 打印使用信息 | 添加:NDB 8.0.22 |
|
| 打印文件信息 | 添加:NDB 8.0.22 |
|
| 从登录文件中读取给定路径 | (支持所有基于 MySQL 8.0 的 NDB 版本) |
|
| 不要从登录文件以外的任何选项文件中读取默认选项 | (支持所有基于 MySQL 8.0 的 NDB 版本) |
|
| 打印程序参数列表并退出 | (支持所有基于 MySQL 8.0 的 NDB 版本) |
|
| 打印使用信息;--help 的同义词 | 添加:NDB 8.0.22 |
|
| 输出版本信息 | 添加:NDB 8.0.22 |
用法
ndbxfrm --info file[ file ...]
ndbxfrm --compress input_file output_file
ndbxfrm --decrypt-password=password input_file output_file
ndbxfrm [--encrypt-ldf-iter-count=#] --encrypt-password=password input_file output_file
input_file并且
output_file不能是同一个文件。
选项
--compress,-c命令行格式 --compress介绍 8.0.22-ndb-8.0.22 使用与压缩 NDB Cluster 备份相同的压缩方法压缩输入文件,并将输出写入输出文件。要解压缩
NDB未加密的压缩备份文件,只需使用压缩文件的名称和输出文件(无需任何选项) 调用ndbxfrm 。--decrypt-key=,key-Kkey命令行格式 --decrypt-key=key介绍 8.0.31-ndb-8.0.31 解密
NDB使用提供的密钥加密的文件。笔记该选项不能与 一起使用
--decrypt-password。-
命令行格式 --decrypt-key-from-stdin介绍 8.0.31-ndb-8.0.31 解密
NDB使用从提供的密钥加密的文件stdin。 -
命令行格式 --decrypt-password=password介绍 8.0.22-ndb-8.0.22 类型 细绳 默认值 [none]解密
NDB使用提供的密码加密的文件。笔记该选项不能与 一起使用
--decrypt-key。 --decrypt-password-from-stdin[=TRUE|FALSE]命令行格式 --decrypt-password-from-stdin介绍 8.0.24-ndb-8.0.24 NDB使用标准输入提供的密码 解密由 加密的文件。这类似于在选项后面没有密码的情况下 调用mysql后输入密码。--password-
命令行格式 --defaults-extra-file=path类型 细绳 默认值 [none]读取全局文件后读取给定文件。
-
命令行格式 --defaults-file=path类型 细绳 默认值 [none]仅从给定文件中读取默认选项。
-
命令行格式 --defaults-group-suffix=string类型 细绳 默认值 [none]还可以阅读 groups with 。
CONCAT(group,suffix) -
命令行格式 --encrypt-block-size=#介绍 8.0.31-ndb-8.0.31 类型 布尔值 默认值 FALSE打印出文件信息,如
--info,但包括文件的头和尾。例子:
$> ndbxfrm --detailed-info S0.sysfile File=/var/lib/cluster-data/ndb_7_fs/D1/NDBCNTR/S0.sysfile, compression=no, encryption=yes header: { fixed_header: { magic: { magic: { 78, 68, 66, 88, 70, 82, 77, 49 }, endian: 18364758544493064720, header_size: 32768, fixed_header_size: 160, zeros: { 0, 0 } }, flags: 73728, flag_extended: 0, flag_zeros: 0, flag_file_checksum: 0, flag_data_checksum: 0, flag_compress: 0, flag_compress_method: 0, flag_compress_padding: 0, flag_encrypt: 18, flag_encrypt_cipher: 2, flag_encrypt_krm: 1, flag_encrypt_padding: 0, flag_encrypt_key_selection_mode: 0, dbg_writer_ndb_version: 524320, octets_size: 32, file_block_size: 32768, trailer_max_size: 80, file_checksum: { 0, 0, 0, 0 }, data_checksum: { 0, 0, 0, 0 }, zeros01: { 0 }, compress_dbg_writer_header_version: { ... }, compress_dbg_writer_library_version: { ... }, encrypt_dbg_writer_header_version: { ... }, encrypt_dbg_writer_library_version: { ... }, encrypt_key_definition_iterator_count: 100000, encrypt_krm_keying_material_size: 32, encrypt_krm_keying_material_count: 1, encrypt_key_data_unit_size: 32768, encrypt_krm_keying_material_position_in_octets: 0, }, octets: { 102, 68, 56, 125, 78, 217, 110, 94, 145, 121, 203, 234, 26, 164, 137, 180, 100, 224, 7, 88, 173, 123, 209, 110, 185, 227, 85, 174, 109, 123, 96, 156, } } trailer: { fixed_trailer: { flags: 48, flag_extended: 0, flag_zeros: 0, flag_file_checksum: 0, flag_data_checksum: 3, data_size: 512, file_checksum: { 0, 0, 0, 0 }, data_checksum: { 226, 223, 102, 207 }, magic: { zeros: { 0, 0 } fixed_trailer_size: 56, trailer_size: 32256, endian: 18364758544493064720, magic: { 78, 68, 66, 88, 70, 82, 77, 49 }, }, } } -
命令行格式 --encrypt-block-size=#介绍 8.0.29-ndb-8.0.29 类型 整数 默认值 0最小值 0最大值 2147483647作为一个单元加密的输入数据块的大小。与 XTS 一起使用;
0对于 CBC 模式 设置为(默认值)。 -
命令行格式 --encrypt-cipher=#介绍 8.0.29-ndb-8.0.29 类型 整数 默认值 1最小值 0最大值 2147483647用于加密的密码。设置
1为 CBC 模式(默认)或2XTS。 --encrypt-kdf-iter-count=,#-k#命令行格式 --encrypt-kdf-iter-count=#介绍 8.0.22-ndb-8.0.22 类型 整数 默认值 0最小值 0最大值 2147483647加密文件时,指定用于加密密钥的迭代次数。需要
--encrypt-password选项。-
命令行格式 --encrypt-key=key介绍 8.0.31-ndb-8.0.31 使用提供的密钥加密文件。
笔记该选项不能与 一起使用
--encrypt-password。 -
命令行格式 --encrypt-key-from-stdin介绍 8.0.31-ndb-8.0.31 使用 提供的密钥加密文件
stdin。 -
命令行格式 --encrypt-password=password介绍 8.0.22-ndb-8.0.22 类型 细绳 默认值 [none]使用选项提供的密码加密备份文件。密码必须满足此处列出的要求:
使用任何可打印的 ASCII 字符,除了
!,',",$,%,\,`, 和^长度不超过 256 个字符
被单引号或双引号括起来
笔记该选项不能与 一起使用
--encrypt-key。 --encrypt-password-from-stdin[=TRUE|FALSE]命令行格式 --encrypt-password-from-stdin介绍 8.0.24-ndb-8.0.24 使用标准输入提供的密码加密文件。这类似于在选项后面没有密码的 情况下调用mysql 后输入密码。
--password--help,-?命令行格式 --help介绍 8.0.22-ndb-8.0.22 打印程序的使用信息。
--info,-i命令行格式 --info介绍 8.0.22-ndb-8.0.22 打印有关一个或多个输入文件的以下信息:
文件名
文件是否压缩 (
compression=yes或compression=no)文件是否加密(
encryption=yes或encryption=no)
例子:
$> ndbxfrm -i BACKUP-10-0.5.Data BACKUP-10.5.ctl BACKUP-10.5.log File=BACKUP-10-0.5.Data, compression=no, encryption=yes File=BACKUP-10.5.ctl, compression=no, encryption=yes File=BACKUP-10.5.log, compression=no, encryption=yes从 NDB 8.0.31 开始,您还可以使用该
--detailed-info选项查看文件的头和尾。-
命令行格式 --login-path=path类型 细绳 默认值 [none]从登录文件中读取给定路径。
-
命令行格式 --no-defaults不要从登录文件以外的任何选项文件中读取默认选项。
-
命令行格式 --print-defaults打印程序参数列表并退出。
--usage,-?命令行格式 --usage介绍 8.0.22-ndb-8.0.22 的同义词
--help。--version,-V命令行格式 --version介绍 8.0.22-ndb-8.0.22 打印出版本信息。
ndbxfrm可以加密由任何版本的 NDB Cluster 创建的备份。组成备份的.Data、
.ctl和.log文件必须单独加密,并且这些文件必须为每个数据节点单独加密。一旦加密,此类备份只能由
NDB Cluster 8.0.22 或更高版本
的ndbxfrm、 ndb_restore或
ndb_print_backup解密。
--encrypt-password可以使用和
--decrypt-password选项一起
使用新密码重新加密加密文件,如下所示:
ndbxfrm --decrypt-password=old --encrypt-password=new input_file output_file
在刚刚显示的示例中,old和
new分别是旧密码和新密码;这两个都必须引用。输入文件被解密,然后加密为输出文件。输入文件本身没有改变;如果您不想使用旧密码访问它,则必须手动删除输入文件。