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
-K
key
命令行格式 --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 模式(默认)或2
XTS。 --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
分别是旧密码和新密码;这两个都必须引用。输入文件被解密,然后加密为输出文件。输入文件本身没有改变;如果您不想使用旧密码访问它,则必须手动删除输入文件。