保存 dbremote 实用程序使用 DBTools 库时所需的信息。
typedef struct a_remote_sql { short version; MSG_CALLBACK confirmrtn; MSG_CALLBACK errorrtn; MSG_CALLBACK msgrtn; MSG_QUEUE_CALLBACK msgqueuertn; char * connectparms; char * transaction_logs; a_bit_field receive : 1; a_bit_field send : 1; a_bit_field verbose : 1; a_bit_field deleted : 1; a_bit_field apply : 1; a_bit_field batch : 1; a_bit_field more : 1; a_bit_field triggers : 1; a_bit_field debug : 1; a_bit_field rename_log : 1; a_bit_field latest_backup : 1; a_bit_field scan_log : 1; a_bit_field link_debug : 1; a_bit_field full_q_scan : 1; a_bit_field no_user_interaction : 1; a_bit_field _unused1 : 1; a_sql_uint32 max_length; a_sql_uint32 memory; a_sql_uint32 frequency; a_sql_uint32 threads; a_sql_uint32 operations; char * queueparms; char * locale; a_sql_uint32 receive_delay; a_sql_uint32 patience_retry; MSG_CALLBACK logrtn; a_bit_field use_hex_offsets : 1; a_bit_field use_relative_offsets : 1; a_bit_field debug_page_offsets : 1; a_sql_uint32 debug_dump_size; a_sql_uint32 send_delay; a_sql_uint32 resend_urgency; char * include_scan_range; SET_WINDOW_TITLE_CALLBACK set_window_title_rtn; char * default_window_title; MSG_CALLBACK progress_msg_rtn; SET_PROGRESS_CALLBACK progress_index_rtn; char ** argv; a_sql_uint32 log_size; char * encryption_key; const char * log_file_name; a_bit_field truncate_remote_output_file:1; char * remote_output_file_name; MSG_CALLBACK warningrtn; char * mirror_logs; } a_remote_sql; |
成员 | 说明 | ||||||
---|---|---|---|---|---|---|---|
version | DBTools 版本号。 | ||||||
confirmrtn | 指向打印给定消息并接受是或否响应的函数的指针,如果为是,则返回 TRUE,如果为否,则返回 FALSE。 | ||||||
errorrtn | 指向打印给定错误消息的函数的指针。 | ||||||
msgrtn | 指向打印给定信息性(非错误)消息的函数的指针。 | ||||||
msgqueuertn | 指向一个函数的指针,该函数应休眠传递给它的毫秒数时间。当 DBRemoteSQL 正忙但想允许上层对消息进行处理时,使用 0 调用此函数。正常情况下,此例程应返回 MSGQ_SLEEP_THROUGH,或返回 MSGQ_SHUTDOWN_REQUESTED 以停止 SQL Remote 处理过程。 | ||||||
connectparms |
连接到数据库所需的参数。对应 dbremote -c 选项。它们采用如下所示的连接字符串形式:
数据库服务器将由连接字符串的 START 参数启动。例如:
一个包括 START 参数的完整连接字符串示例:
有关连接参数的列表,请参见连接参数。 |
||||||
transaction_logs | 指向一个字符串的指针,此字符串命名包含脱机事务日志的目录。与 dbremote 的 transaction_logs_directory 参数对应。 | ||||||
receive |
如果 receive 为 true,表示收到消息。对应 dbremote -r 选项。 如果 receive 和 send 均为 false,则两者均被认为是 true。建议将两者均设置为 false。 |
||||||
send |
如果 send 为 true,表示已发送消息。对应 dbremote -s 选项。 如果 receive 和 send 均为 false,则两者均被认为是 true。建议将两者均设置为 false。 |
||||||
verbose | 如果为 true,则打印额外的信息。与 dbremote -v 选项对应。 | ||||||
deleted | 应设置为 true。如果为 false,消息被应用后不会被删除。与 dbremote -p 选项对应。 | ||||||
apply | 应设置为 true。如果为 false,则扫描消息,但不应用消息。与 dbremote -a 选项对应。 | ||||||
batch | 如果为 true,则在应用消息和扫描日志后强制退出。与至少有一个具有 [always] 发送时间的用户的情况相同。如果为 false,则允许由远程用户的发送次数决定运行模式。 | ||||||
more | 应设置为 true。 | ||||||
triggers | 通常应设置为 false;否则,true 表示 DBRemoteSQL 复制触发器操作。与 dbremote -t 选项对应。 | ||||||
debug | 如果设置为 true,则包括调试输出。 | ||||||
rename_log | 如果设置为 true,则重命名并将重新启动日志。 | ||||||
latest_backup | 如果设置为 true,则只处理备份日志。不发送来自活动日志的操作。与 dbremote -u 选项对应。 | ||||||
scan_log | 保留;设置为 false。 | ||||||
link_debug | 如果设置为 true,将打开对链接的调试。 | ||||||
full_q_scan | 保留;设置为 false。 | ||||||
no_user_interaction | 如果设置为 true,则不请求用户交互。 | ||||||
max_length | 设置为消息可具有的最大长度(以字节为单位)。这会影响发送和接收。建议值为 50000。与 dbremote -l 选项对应。 | ||||||
memory | 设置为在建立要发送的消息时所使用的内存缓冲区的最大大小(以字节为单位)。建议值至少为 2 * 1024 * 1024。与 dbremote -m 选项对应。 | ||||||
frequency | 设置进来的消息的轮询频率。此值应设置为 max( 1, receive_delay/60 )。请参见下面的 receive_delay。 | ||||||
threads | 设置应当用于应用消息的工作线程的数目。此值不能超过 50。与 dbremote -w 选项对应。 | ||||||
operations | 当应用消息时会使用此值。在 DBRemoteSQL 至少具有此数量的未提交操作(插入、删除、更新)之前,提交将被忽略。与 dbremote -g 选项对应。 | ||||||
queueparms | 保留;设置为 NULL。 | ||||||
locale | 保留;设置为 NULL。 | ||||||
receive_delay | 设置为在轮询之间等待新进来的消息的时间(以秒为单位)。建议值为 60。与 dbremote -rd 选项对应。 | ||||||
patience_retry | 设置为 DBRemoteSQL 在假定所期待的消息丢失之前应等待的轮询进来的消息的次数。例如,如果 patience_retry 为 3,则 DBRemoteSQL 尝试最多三次来接收缺失的消息。然后,它会发送一个重新发送请求。建议值为 1。与 dbremote -rp 选项对应。 | ||||||
logrtn | 指向将给定消息打印到日志文件的函数的指针。这些消息无需用户进行查看。 | ||||||
use_hex_offsets | 如果想以十六进制表示法显示日志偏移,请将其设置为 true;否则,将使用十进制表示法。 | ||||||
use_relative_offsets | 如果想以相对于当前日志文件开始位置的方式显示日志偏移,请将其设置为 true。如果想显示相对于开始时间的日志偏移,则将其设置为 false。 | ||||||
debug_page_offsets | 保留;设置为 false。 | ||||||
debug_dump_size | 保留;设置为 0。 | ||||||
send_delay | 设置扫描日志文件以查找要发送的新操作的时间间隔(以秒为单位)。设置为零可允许 DBRemoteSQL 根据用户发送时间选择一个合适的值。与 dbremote -sd 选项对应。 | ||||||
resend_urgency | 设置 DBRemoteSQL 在知道用户需要重新扫描之后,在执行完全日志扫描之前所等待的时间(以秒为单位)。设置为零可允许 DBRemoteSQL 根据用户发送时间及其收集的其它信息选择一个合适的值。与 dbremote -ru 选项对应。 | ||||||
include_scan_range | 保留;设置为 NULL。 | ||||||
set_window_title_rtn | 指向一个重置窗口标题的函数的指针(仅适用于 Windows)。标题可以是 "database_name(接收、扫描或发送)- default_window_title"。 | ||||||
default_window_title | 指向缺省窗口标题字符串的指针。 | ||||||
progress_msg_rtn | 指向显示进程消息的函数的指针。 | ||||||
progress_index_rtn | 指向更新进度条状态的函数的指针。该函数具有两个无符号整型变量 index 和 max。第一次调用时,这两个值分别为最小和最大值(如 0、100)。后续调用时,第一个参数为当前索引值(例如,0 到 100 之间的值),而第二个参数始终为 0。 | ||||||
argv | 指向所分析命令行的指针(字符串指针矢量)。如果不为 NULL,则 DBRemoteSQL 将调用消息例程来显示前缀不是 -c、-cq 或 -ek 的每个命令行参数。 | ||||||
log_size | 当联机事务日志的大小大于此值时,DBRemoteSQL 将重命名并重新启动联机事务日志。与 dbremote -x 选项对应。 | ||||||
encryption_key | 指向加密密钥的指针。与 dbremote -ek 选项对应。 | ||||||
log_file_name | 指向 DBRemoteSQL 输出日志的名称的指针,消息回调会将其输出打印到该输出日志。如果 send 为 true,错误日志会被发送到统一数据库(除非此指针为 NULL)。 | ||||||
truncate_remote_output_file | 设置为 true 将使得远程输出文件被截断,而非附加到远程输出文件。请参见下文。与 dbremote -rt 选项对应。 | ||||||
remote_output_file_name | 指向 DBRemoteSQL 远程输出文件的名称的指针。与 dbremote -ro 或 -rt 选项对应。 | ||||||
warningrtn | 指向打印给定警告消息的函数的指针。如果为 NULL,将改为调用 errorrtn 函数。 | ||||||
mirror_logs | 指向目录名称的指针,该目录包含脱机镜像事务日志。与 dbremote -ml 选项对应。 |
dbremote 工具在处理任何命令行选项前会设置以下缺省值:
![]() |
使用DocCommentXchange 讨论此页。
|
版权 © 2010, iAnywhere Solutions, Inc. - SQL Anywhere 12.0.0 |