用途
move 命令可创建一个作业来将指定数据库对象从一个数据库复制到另一数据库,然后立即启动该作业。使用此命令可通过在命令行中指定表来快速创建并启动作业,而无需提供 XML 对象列表。
对于使用 Teradata DSA 的作业,要将表复制到的目标系统的数据库用户必须具有 RESTORE 权限,且该用户不能在作业运行时登录系统,否则作业将失败。
参数
请参阅参数顺序。
- data_streams
- [可选] 可在源数据库和目标数据库之间使用的数据流数量。适用于使用 Teradata DSA 和 TPT API(与 Teradata 之间)的作业。所有其他协议均使用单个数据流。
- db_client_encryption
- [可选] 数据传输期间需要加密作业时设置为 true。
- dm.rest.endpoint
- [可选] 输入 Data Mover REST 服务器 URL 以覆盖 commandline.properties 文件中指定的缺省值,以便在运行时连接到不同的 REST 服务器(进而连接到不同的守护程序)。
- force_utility
- [可选] 强制 Data Mover 守护程序使用特定实用程序执行所有复制操作。
有效值
- dsa
- jdbc
- tptapi
- tptapi_load
- tptapi_stream
- tptapi_update
- T2T
使用 Teradata DSA 将数据复制到旧版 Teradata Database 是无效的。如果源 TDPID 和目标 TDPID 相同,则不能使用 Teradata DSA。 - job_name
- [可选] 作业的名称。该名称必须是唯一的,并且最多包含 32 个字符。如果未指定该名称,则会以 <source_tdpid>_<target_tdpid>_M<sequential number> 格式自动生成该名称。
- job_priority
- [可选] 指定作业的执行优先级。支持的值包括:“HIGH”、“MEDIUM”、“LOW”和“UNSPECIFIED”。如果未指定值,则运行时使用缺省值“MEDIUM”。
- log_level
- [可选] 日志文件输出的日志级别。
有效值
- 0
- 1
- 2
- 99
- max_agents_per_task
- [可选] 移动表或数据库时,可并行使用的 Data Mover 代理的最大数量。
- netrace
- [可选] CLI netrace 参数。该值大于或等于 0 时会生成 CLI 跟踪日志。必须提供有效的 CLI 值。
- netrace_buf_len
- [可选] CLI netrace_buf_len 参数。该值大于或等于 0 时会生成 CLI 跟踪日志。必须提供有效的 CLI 值。
- online_archive
- [可选] 使用 Teradata DSA 复制源表时,允许读写访问源表。复制过程中源表会发生更新,但更新不会传输至目标表。复制成功后,目标表中包含的数据与复制开始时源表中的数据匹配。有效值
值 说明 True 启用在线存档 False 禁用在线存档 Unspecified 缺省值- 此值将设置为 Data Mover 守护程序配置文件中的值 - overwrite_existing_objects
- [可选] 作业覆盖目标上已存在的对象。有效值如果未指定此参数,该值将设置为 Data Mover 守护程序配置文件中的 overwrite_existing_objects 参数值。如果此参数指定为 true 或 false,则该值优先于 Data Mover 守护程序配置文件中的参数值。
值 说明 True 启用覆盖 False 禁用覆盖 Unspecified 缺省值- 此值将设置为 Data Mover 守护程序配置文件中的值 - query_band
- [可选] 唯一标识 Teradata 会话或源及目标事务的分号分隔名称-值对集。要使用查询带标识作业 payroll、用户 ID aa100000 以及作业会话编号 1122,请按照如下方式定义查询带:
- response_timeout
- [可选] 等待 Data Mover 守护程序响应的时间(以秒为单位)。
- security_password
- [可选] 超级用户或授权 Viewpoint 用户的密码。
- security_username
- [可选] 超级用户或授权 Viewpoint 用户的用户 ID。超级用户的用户 ID 为 dmcl_admin 且不能更改。
- source_account_id
- [可选] 源数据库的登录帐户 ID。
- source_logon_mechanism
- [可选] 源系统的登录机制。要登录源 Teradata Database 系统,用户必须至少提供以下其中之一:
- source_user 和 source_password
- source_logon_mechanism
Teradata DSA 作业不支持登录机制。请仅对 Teradata PT API 和 Teradata JDBC 作业使用登录机制。如果指定了 -source_logon_mechanism,而未使用 -force_utility,则缺省情况下会使用 Teradata PT API。如果已为 -force_utility 指定 Teradata DSA,指定 -source_logon_mechanism 将导致出现错误。
- source_logon_mechanism_data
- [可选] 源系统的登录机制所需的其他参数。
- source_password
- [可选] 源 Teradata 登录密码。
- source_password_encrypted
- [可选] 源 Teradata 加密登录密码。
- source_sessions
- [可选] 源数据库上每数据流的会话数。
- source_tdpid
- 源 Teradata Database。
- source_user
- [可选] 源 Teradata 登录 ID。
- source_userid_pool
- [可选] 作业会从指定的凭据池提取用户。适用于所有作业类型。如果在同一作业定义中同时指定了此参数和 target_userid_pool 参数,则必须使用与后者相同的凭据池。
- sync
- [可选] 等待作业完成,然后返回表示作业成功完成与否的退出代码。退出代码 0 表示作业成功完成。0 之外的退出代码表示作业或命令出错。
- table
- [可选] 要复制的表。
- target_account_id
- [可选] 目标数据库的登录帐户 ID。
- target_logon_mechanism
- [可选] 目标系统的登录机制。要登录目标 Teradata Database 系统,用户必须至少提供以下其中之一:
- target_user 和 target_password
- target_logon_mechanism
Teradata DSA 不支持登录机制。请仅对 Teradata PT API 和 Teradata JDBC 作业使用登录机制。如果指定了 -target_logon_mechanism,而未使用 -force_utility,则缺省情况下会使用 Teradata PT API。如果已为 -force_utility 指定 Teradata DSA,则指定 -target_logon_mechanism 将导致出现错误。
- target_logon_mechanism_data
- [可选] 目标系统登录机制所需的其他参数。
- target_password
- [可选] 目标 Teradata 登录密码。
- target_password_encrypted
- [可选] 目标 Teradata 加密登录密码。
- target_sessions
- [可选] 目标数据库上每数据流的会话数。
- target_tdpid
- [可选] 目标 Teradata Database。
- target_user
- [可选] 目标 Teradata 登录 ID。
- target_userid_pool
- [可选] 作业会从指定的凭据池提取用户。适用于所有作业类型。如果在同一作业定义中同时指定了此参数和 source_userid_pool 参数,则必须使用与后者相同的凭据池。
- tpt_debug
- [可选] TPT API 跟踪调试日志参数。该值大于或等于 0 时会生成 TPT API 跟踪日志。必须提供有效的 TPT API 值。
- uowid
- [可选] 与作业关联的批量工作的备用 ID 或名称。如果提供了此参数的值,将事件发送至 Teradata Ecosystem Manager 或其内部 TMSMEVENT 表时,Data Mover 将此值报告为工作单元 ID。如果未指定此参数,将事件发送至 Teradata Ecosystem Manager 或其内部 TMSMEVENT 表时,Data Mover 会使用缺省值作为工作单元 ID。工作单元 ID 的缺省值由作业执行名称和当前时间戳构成。例如,如果要定义查询源的来源,而作业执行名称为 sales_table,则工作单元 ID 的缺省值为 sales_table-20211110122330
XML 文件示例
对于 move 命令,请键入 datamove move -f parameters.xml。
在以下示例中,XML 文件将使用 <dmCreate> 元素,而不是 <dmMove> 元素。
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<dmCreate xmlns="http://schemas.teradata.com/dataMover/v2009"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://schemas.teradata.com/unity/DataMover.xsd"">
<job_name>floyd_dmdev_create</job_name>
<source_tdpid>floyd</source_tdpid>
<source_user>dmguest</source_user>
<source_password>please</source_password>
<target_tdpid>dmdev</target_tdpid>
<target_user>dmguest</target_user>
<target_password>please</target_password>
<data_streams>5</data_streams>
<source_sessions>1</source_sessions>
<target_sessions>1</target_sessions>
<force_utility>dsa</force_utility>
<log_level>0</log_level>
<database selection="unselected">
<name>dmguest</name>
<table selection="included">
<name>test1</name>
</table>
<table selection="included">
<name>test2</name>
</table>
<table selection="included">
<name>test3</name>
</table>
</database>
<uowid>sales_tables_move</uowid>
<query_band>Job=payroll;Userid=aa1000000;Jobsession=1122;</query_band>
</dmCreate>