这是命令 bucardop,可以使用我们的多个免费在线工作站之一(例如 Ubuntu Online、Fedora Online、Windows 在线模拟器或 MAC OS 在线模拟器)在 OnWorks 免费托管提供商中运行
程序:
您的姓名
bucardo - 用于控制 Bucardo 程序的实用程序脚本
VERSION
本文档描述了 bucardo 5.4.1 版本
用法
布卡多[ ] [ ] [ ] [ ]
商品描述
bucardo 脚本是与正在运行的 Bucardo 实例的主要交互。 可以用
启动和停止 Bucardo、添加新项目、启动同步,甚至安装和升级 Bucardo
本身。 如需更完整的文档,请查看 wikihttp://bucardo.org/>.
指令
运行“布卡多帮助” 了解更多详细信息
“安装”
安装 Bucardo 配置数据库。
“升级”
将 Bucardo 配置数据库升级到最新架构。
“开始 [ ] [ ]”
布卡多开始。
“停止 [ ]”
阻止布卡多。
“重新开始 [ ] [ ]”
停止和启动布卡多。
“列表[ ]”
列出 Bucardo 管理的对象。
“添加”
添加一个新对象。
“更新”
更新一个对象。
“消除[ ...]”
移除一个或多个对象。
“踢[ ] [ ...] [ ]”
开始一个或多个同步。
“重新加载配置”
向所有 CTL 和 KID 进程发送消息,要求它们重新加载 Bucardo
组态。
“重新开放”
向所有 Bucardo 进程发送一条消息,要求它们重新打开可能的任何日志文件
有开放。 在轮换日志文件后调用此方法。
“显示全部| [ ...]”
显示当前布卡多设置。
” ...] >>
设置一项或多项配置设置。
“平[ ]”
向 MCP 进程发送 ping 通知以查看它是否会响应。
“地位 [ ] [ ...]”
以表格格式显示同步的简要状态。
“启用[ ...] [ ]”
激活一个或多个命名同步。
“停用[ ...] [ ]”
停用一个或多个命名同步。
“信息”
向正在运行的 Bucardo 日志发送消息。
“重新加载[ [ ...]]”
向一个或多个同步进程发送一条消息,指示它们重新加载。
“检查[ ...]”
检查特定类型的一个或多个对象。
“验证所有| [ ...]”
验证一个或多个同步。
“清除所有| [ ...]”
清除一个或多个数据库的一个或多个表的增量表和跟踪表。
“德尔塔[ ]”
显示每个源目标的增量计数。
“帮助 [ [ ]]”
显示帮助。
配置
-d --db-name NAME 数据库名称。
-U --db-user USER 数据库用户名。
-P --db-pass PASS 数据库密码。
-h --db-host HOST 数据库服务器主机名。
-p --db-port PORT 数据库服务器端口号。
--bucardorc FILE 使用指定的 .bucardorc 文件。
--no-bucardorc 不要使用 .bucardorc 文件。
--安静 增量安静。
--verbose 增量详细模式。
-? --help 输出基本帮助并退出。
--version 打印版本号并退出。
--dryrun 不执行任何实际操作。
--confirm 更改前需要直接确认。
指挥 详细信息
大多数命令都带有参数。 这些可以在命令名称之后传递,并且,
在适当的情况下,对象名称。 参数采用分隔的键/值对的形式
通过等号(“=”)。 例如:
布卡多添加 db sea_widgets dbname=widgets host=db.example.com
这里的“dbname”和是参数。
许多命令还使用命令行选项,这些选项以正常方式指定。
例如,“bucardo add db”命令也可以写为:
布卡多添加 db sea_widgets --dbname widgets --dbhost db.example.com
但是,参数和选项并非在所有情况下都可以直接互换。 请参阅
各个命令及其支持选项的文档。
安装
布卡多安装
从文件安装 Bucardo 架构 布卡多模式 到现有的 Postgres
簇。 将根据需要首先创建用户“bucardo”和数据库“bucardo”。 这
是一个交互式安装程序,但您可以从命令中提供以下值
线:
“--dbuser”
默认为 postgres
“--数据库名称”
默认为 postgres
“--dbport”
默认为 5432
“--pid-dir”
默认为 /var/run/bucardo/
升级
布卡多升级
将现有的 Bucardo 安装升级到当前版本的 bucardo 数据库
脚本。 要求布卡多和 布卡多模式 文件必须是同一版本。 所有变更
应该向后兼容,但您可能需要重新验证现有脚本才能使
某些更改会传播到所有数据库。
开始
布卡多开始“理性”
布卡多开始。 如果 MCP 进程正在运行,则失败(确定其 PID 文件是否为
展示)。 否则,首先发出相当于停止的命令来询问任何内容,从而干净地开始
现有的 Bucardo 进程退出,然后启动新的 Bucardo MCP 进程。 一个短
应提供原因和名称 - 这些被写入“reason_file”文件
(./bucardo.restart.reason.txt 默认情况下)并在布卡多已被发送时发送的电子邮件中发送
开始了。 它还会附加到原因日志中,该日志与原因日志同名。
“reason_file”但结尾为 .LOG.
“启动”命令的选项有:
“ - 发送邮件”
告诉 Bucardo 是否发送有关有趣事件的邮件:启动、关闭、
和错误。 默认开启。
“--额外名称字符串”
一个短字符串,将附加到 Bucardo 输出的版本字符串中
进程名称。 主要用于调试。
“--log-destination 目的地”
确定日志记录输出的目标。 支持的值为:
“标准错误”
“标准输出”
“系统日志”
“没有”
文件系统目录。
可以多次指定,这对于例如将两者记录到
目录和系统日志。 如果根本没有指定“--log-destination”,则使用默认值
是登录到文件 /var/log/布卡多.
“--日志分开”
强制为表单的每个 Bucardo 进程创建单独的日志文件
“log.bucardo.XY”,其中 X 是进程类型(MCP、CTL 或 KID),Y 是进程类型
进程标识。
“--log-扩展字符串”
将给定字符串附加到默认日志文件名的末尾, 布卡多日志。 一个点
也在名称之前添加,因此“rootdb”的日志扩展名将生成一个日志
文件名为 log.bucardo.rootdb.
“--日志清洁”
在运行之前强制删除所有旧的日志文件。
“--调试”
“--无调试”
启用或禁用调试输出。 默认禁用。
“--不同步时退出”
“--不同步时不退出”
启动时,如果 Bucardo 发现没有活动同步,它通常会继续运行,
添加同步后需要重新启动。 这对于启动脚本和
诸如此类的。
但是,如果您希望它在没有活动同步时退出,请传递
“--exit-on-nosync”选项。 你也可以明确表示它应该 而不去 存在时退出
通过传递“--no-exit-on-nosync”不进行同步。 这是默认值。
停止
布卡多停止“理性”
通过创建所有 MCP、CTL 和 KID 进程的停止文件来强制 Bucardo 退出
应检测并导致它们退出。 请注意,活动同步不会立即退出,因为
在完成当前运行之前,他们不会查找停止文件。
通常,您应该在运行该程序后扫描进程列表以确保
所有布卡多进程均已停止。 还应提供发出该通知的理由
停止 - 通常这是一个简短的解释和您的名字。 这是写给
“原因文件”文件(./bucardo.restart.reason.txt 默认情况下)并且也被 Bucardo 使用
当它退出并发送有关其死亡的邮件时。 它还附加到原因日志中,
其名称与“reason_file”相同,但结尾为 .LOG.
重新开始
布卡多重启“理性”
停止 bucardo,等待停止完成,然后再次启动。 支持
与 <"start"/start> 相同的选项。 对于启动脚本很有用。 仅获取 CTL 和 KID
进程识别新添加、更新或删除的对象,使用“reload”命令,
代替。
名单
布卡多清单
列出有关 Bucardo 对象的摘要信息。 支持的类型有:
· “数据库”
·“数据库组”
·“关系组”
· “同步”
· “桌子”
· “顺序”
·“自定义代码”
·“自定义名称”
·“自定义颜色”
· “全部”
“all”选项将列出有关所有对象类型的信息。
可选的“regex”选项可用于过滤列表,仅显示与
正则表达式。
加
布卡多阿德
向布卡多添加一个新对象。 “type”指定要添加的对象的类型,而
“名称”应该是对象的名称。 支持的类型包括:
“D b”
“数据库组”
“桌子”
“顺序”
“所有桌子”
“所有序列”
“关系组”
“同步”
“自定义名称”
“自定义列”
加 db
布卡多添加数据库数据库名称=实际名称 端口=xxx 主机=xxx 用户=xxx
添加一个或多个新数据库。 “名称”是数据库的名称
布卡多,并且必须是独一无二的。 这可能与实际的数据库名称不同,因为多个
主机可能有同名的数据库。 可以通过以下方式添加多个数据库
用逗号分隔名称。 数据库之间不同的选项应该是
用匹配的逗号分隔。 例子:
布卡多添加 db alpha,beta dbname=销售主机=aa,bb 用户=布卡多
此命令将尝试立即测试连接到添加的数据库。 这
支持的命名参数有:
“数据库名称”
数据库的实际名称。 除非使用服务文件,否则是必需的。
“类型”
数据库的类型。 默认为“postgres”。 目前支持的值为:
·“postgres”
·《细雨》
·“蒙戈”
·“mysql”
·《玛丽亚》
·《神谕》
·“redis”
·“sqlite”
“用户”
连接到此数据库时应使用的用户名 Bucardo。
“经过”
连接到此数据库时 Bucardo 应使用的密码。 推荐
您使用 .pgpass 文件而不是在此处输入密码。
“主持人”
连接到此数据库时应使用主机 Bucardo。 默认值为
$PGHOSTADDR 或 $PGHOST 环境变量(如果存在)。
“港口”
连接到此数据库时应使用 Bucardo 端口。 默认值为
$PGPORT 环境变量(如果存在)。
“康涅狄格州”
其他连接参数,例如“sslmode=require”。
“服务”
连接到此数据库时应使用的服务名称 Bucardo。
“地位”
该数据库的初始状态。 默认为“活动”,但可以设置为“非活动”。
“数据库组”
该数据库应属于的数据库组的名称。
“添加表”
自动添加此数据库中的所有表。
“添加所有序列”
自动添加此数据库中的所有序列。
“服务器端准备”
“ssp”
设置为 1 或 0 以启用或禁用服务器端准备。 默认为 1。
“makedelta”
设置为 1 或 0 以启用或禁用 makedelta。 默认为 0。
附加参数:
“ - 力量”
强制添加数据库而不运行连接测试。
请注意: 为方便起见,如果“dbuser”值是其默认值“bucardo”,则在
如果 Bucardo 无法连接到数据库,它将尝试以“postgres”连接
并创建一个名为“bucardo”的超级用户。 这是为了让人们更容易获得
从 Bucardo 开始,但如果它无法作为“postgres”连接,或者如果它是
由于身份验证失败,连接失败。
加 数据库组
bucardo 添加数据库组名称 db1:源 db2:源 db3:目标 ...
将一个或多个数据库添加到指定的 dbgroup。 如果 dbgroup 不存在,它将是
创建的。 数据库参数应指定其角色,“源”或“目标”。
加 表
布卡多添加表[架构].table db=actual_db_name
添加一个表对象。 将从指定的数据库中读取表信息。
支持的参数:
“D b”
从中读取表信息的数据库的名称。 应该是一个名字
布卡多知道,这要归功于之前对“添加数据库”的调用。 必需的。
“自动踢”
布尔值,指示表是否应自动发送踢出消息
当它被修改时。 覆盖表中任何同步的“autokick”参数
是一部分。
“重建索引”
布尔值,指示是否在每次同步后重建索引。 默认关闭。
可选的。
“复制后分析”
布尔值,指示是否在每次同步后分析表。 出发时间:
默认。 选修的。
“复制后真空”
布尔值,指示是否在每次同步后清理表。 出发时间:
默认。 选修的。
“关系组”
将表添加到指定的 relgroup。 如果relgroup不存在,则为
创建的。 选修的。
“makedelta”
打开或关闭 makedelta 魔法。 值是需要 makedelta 的数据库列表
这张桌子。 值也可以为“on”,以便为所有数据库启用 makedelta。 默认为
“离开”。
“严格检查”
布尔值,指示在同步之间比较表时是否严格。
如果列具有不同的名称或数据类型,验证将失败。 但
也许允许列有不同的名称或数据类型。 如果是这样,请禁用
“strict_check”和列差异将导致警告而不是失败
验证。 默认为 true。
加 序列
布卡多添加序列[架构].sequence relgroup=xxx
“D b”
从中读取序列信息的数据库的名称。 应该是一个名字
布卡多知道,这要归功于之前对“添加数据库”的调用。 必需的。
“关系组”
将序列添加到指定的 relgroup。 如果relgroup不存在,则为
创建的。 选修的。
加 所有 表
bucardo 添加所有表 [relgroup=xxx] [pkonly]
添加所有已知数据库或指定数据库中的所有表。 排除表
“pg_catalog”、“information_schema”和“bucardo”模式。 (是的,这意味着你
无法使用 Bucardo 复制 Bucardo 配置数据库。 对于那个很抱歉。)
支持的选项和参数:
“D b”
“ - D b”
从中查找所有要添加的表的数据库的名称。 如果没有提供,则表
将从所有已知数据库添加。
“模式”
“--架构”
“-n”
限制为指定的逗号分隔模式列表中的表。 选项可能
被指定多次。
“排除架构”
“--排除架构”
“-N”
排除指定的逗号分隔架构列表中的表。 选项可能是
指定不止一次。
“桌子”
“ - 桌子”
“ -t”
限制为指定的表。 可以多次指定这些选项。
“排除表”
“--排除表”
“-T”
排除指定的表。 可以多次指定这些选项。
“关系组”
“--relgroup”
要添加新表的 relgroup 的名称。
“pkonly”
排除没有主键的表。
加 所有 序列
布卡多添加所有序列 relgroup=xxx
添加所有已知数据库或指定数据库中的所有序列。 不包括
“pg_catalog”、“information_schema”和“bucardo”模式中的序列。 (是的,这个
意味着您无法使用 Bucardo 复制 Bucardo 配置数据库。 对不起
关于这一点。)支持的选项和参数:
“D b”
“ - D b”
从中查找所有要添加的序列的数据库的名称。 如果没有提供,
将从所有已知数据库添加序列。
“模式”
“--架构”
“-n”
限制为指定的逗号分隔模式列表中的序列。 选项
可以指定多次。
“排除架构”
“--排除架构”
“-N”
排除指定的逗号分隔模式列表中的序列。 选项可能是
指定不止一次。
“关系组”
“--relgroup”
要添加新表或序列的 relgroup 的名称。
加 相关组
布卡多添加关联组名称
布卡多添加relgroup名称表,序列,...
添加relgroup。 在名称之后,传入可选的表和/或序列列表,然后
他们将被添加到该组中。
加 同步
布卡多添加同步名称 relgroup=xxx dbs=xxx
添加同步,这是一个命名的复制事件,其中包含有关要执行的操作的信息
从哪里复制到哪里。 支持的参数有:
“数据库”
数据库组的名称或逗号分隔的数据库列表。 所有指定的
数据库将被同步。 必需的。
“数据库组”
数据库组的名称。 该组中的所有数据库都将成为
同步。 如果 dbgroup 不存在并且给出了单独的数据库列表,则
将创建并填充组。
“关系组”
要同步的relgroup 的名称。 中的所有表和/或序列
relgroup 将被同步。 除非指定“表”,否则是必需的。
“桌子”
要添加到同步的表列表。 这隐式创建了一个具有相同的relgroup
名称作为同步。 除非指定“relgroup”,否则是必需的。
“地位”
指示同步是否处于活动状态。 必须是“活动”或“非活动”。
默认为“活动”。
“重建索引”
布尔值,指示是否在每次同步后重建索引。 默认为
关闭。
“寿命”
KID 在被收割之前可以存活的秒数。 默认没有限制。
“最大踢”
KID 在被收割之前可能被踢的次数。 默认没有限制。
“冲突策略”
同步中使用的冲突解决策略。 支持的值:
“布卡多来源”
“源”数据库上的行始终“获胜”。 换句话说,在冲突中,
Bucardo 将行从源复制到目标。
“布卡多目标”
“目标”数据库上的行总是获胜。
“布卡多_跳过”
任何冲突的行都不会被复制。 大多数情况下不推荐。
“布卡多随机”
每个数据库每次获胜的机会均等。 这是默认设置。
“布卡多_最新”
最近更改的行获胜。
“布卡多_中止”
同步因冲突而中止。
“一次性复制”
确定同步是否应切换到单次运行的完整复制模式。
支持的值为:
0:关闭
1:始终完整副本
2:仅复制目标上空的表
“活着”
指示同步进程 (CTL) 是否应持久的布尔值。
默认为false。
“孩子们还活着”
指示同步子进程 (KID) 是否应持久的布尔值。
默认为false。
“自动踢”
布尔值,指示同步中的表是否应自动发送踢动
修改时的消息。 可能会被“autokick”参数覆盖
单独的桌子。
“检查时间”
指定同步在被踢出之前应进行的最长时间的间隔。 有用
对于您不希望通知触发器的开销的繁忙系统。
“优先事项”
指示同步优先级的整数。 数字越小优先级越高。
目前仅用于显示目的。
“复制后分析”
布尔值,指示是否在每次同步后分析表。 默认关闭。
可选的。
“逾期”
指定同步未运行的时间间隔
应视为逾期。 当同步发生时,“check_bucardo_sync”会发出警告
没有在这段时间内运行过。
“已到期”
指定同步未运行的时间间隔
应视为已过期。 当“check_bucardo_sync”发出一条关键消息时
这段时间内尚未运行同步。
“跟踪率”
指示是否跟踪同步速率的布尔值。
“重建索引”
布尔值,指示是否在每次同步后重建索引。 默认关闭。
可选的。
“严格检查”
布尔值,指示在同步中比较表时是否严格。 如果
列具有不同的名称或数据类型,验证将失败。 但也许
列可以有不同的名称或数据类型。 如果是这样,请禁用
“strict_check”和列差异将导致警告而不是失败
验证。 默认为 true。
加 自定义名称
布卡多添加自定义名称旧名称新名称 [db=名称] [sync=名称]
创建新的 Bucardo 自定义名称映射。 这允许参与复制的表
在不同的数据库上有不同的名称。 “旧名称”必须包含架构为
以及表名称(如果源数据库支持架构)。 可选参数
将其限制为一个或多个数据库,和/或一个或多个同步。 支持的参数:
“同步”
要添加自定义名称的同步。 可以指定多次。
“数据库”
“D b”
要为其添加自定义名称的数据库。 可以指定多次。
加 自定义列
bucardo 添加 customcols 表名 select_clause [sync=x db=x]
指定同步时要选择的列列表。 而不是默认的“SELECT
*”行为,你可以指定任何你想要的列,包括使用函数调用
返回值和不在源列列表中的内容。 可选参数限制它
一个或多个数据库,和/或一个或多个同步。 一些例子:
布卡多添加customcols public.foobar“选择a,b,c”
bucardo add customcols public.foobar "选择 a, upper(b) AS b, c" db=foo
布卡多添加customcols public.foobar“选择a,b,c”db = foo同步= abc
支持的参数:
“同步”
要添加自定义列的同步。 可以指定多次。
“数据库”
“D b”
要为其添加自定义列的数据库。 可以指定多次。
加 自定义代码
布卡多添加自定义代码[可选信息]
添加一个自定义代码,它是一个 Perl 子例程,可以在程序中的某些点运行
同步过程。 它可能处理异常,处理冲突,或者只是在特定时间运行
不期望任何功能(例如,在 Bucardo 删除触发器之前)。 关于元数据
该点将作为哈希引用传递给子例程。
支持的参数:
“名称”
自定义代码对象的名称。
“关于”
自定义代码的简短描述。
“运行时”
“何时运行”
指示何时应运行自定义代码的字符串。 支持的值包括:
“之前_txn”
“检查行之前”
“之前_触发_下降”
“after_trigger_drop”
“表同步后”
“例外”
“冲突”
“启用前触发”
“after_trigger_enable”
“after_txn”
“同步之前”
“同步后”
“getdbh”
布尔值,指示是否应将 Perl DBI 数据库句柄提供给
自定义代码子例程。 如果为 true,数据库句柄将在“dbh”键下提供
传递给子例程的哈希引用的值。 该键下的值将是
哈希引用将数据库名称映射到各自的句柄。
“同步”
与自定义代码关联的同步的名称。
“关系”
与自定义代码关联的表或序列的名称。
“地位”
此自定义代码的当前状态。 除“活动”之外的任何内容都意味着代码是
不跑。
“优先事项”
表示执行自定义代码的优先级的数字。 较低的数字
具有更高的优先级。 对于设置“lastcode”以取消
执行相同“when_run”的后续自定义代码。
“源代码”
从中读取自定义代码 Perl 源代码的文件。
Perl子例程的主体应该在“src_code”文件中实现,而不是
在“sub”声明内。 调用时,它将传递一个哈希引用
以下按键:
“同步名”
当前正在执行的同步的名称。
“版”
执行同步的 Bucardo 版本。
“来源名称”
源数据库的名称。
“目标名称”
目标数据库的名称。
“发送邮件”
可用于发送电子邮件的代码参考。
“来源dbh”
同步源数据库的 DBI 数据库句柄。 仅提供给自定义代码
由控制器执行。
“重新列出”
哈希引用的数组引用,每个引用代表同步中的一个关系。
仅提供给控制器执行的自定义代码。 哈希中的键是
与“添加表”和“添加序列”支持的参数相同(视情况而定)。
“模式名称”
触发异常的表的架构。 仅提供给“例外”
自定义代码。
“表名”
触发异常的表的名称。 仅提供给“例外”
自定义代码。
“错误字符串”
包含实际错误消息的字符串。 仅提供给“例外”自定义
码。
“德尔塔宾”
以每个源数据库的名称作为键和所有源数据库的列表的哈希引用
主键用“\0”连接在一起。 仅提供给“例外”自定义代码。
“尝试”
尝试同步的次数。 仅提供给“例外”自定义
码。
“冲突”
冲突行的哈希引用。 键是主键值,并且
值是包含冲突的数据库名称的哈希引用
行和真实值。 仅提供给“冲突”自定义代码。
自定义代码子例程可以在哈希引用中设置任何这些键以更改
同步的行为:
“消息”
要发送到日志的消息。
“警告”
子例程返回后发出警告。
“错误”
子例程返回后抛出的错误。
“下一个代码”
设置为将执行发送到相同类型的下一个自定义代码。 主要用于
异常自定义代码,并且仅受控制器执行的自定义代码支持。
“最后一个代码”
设置为 true 可跳过相同类型的任何后续自定义代码。
“结束同步”
完全取消同步。
一个例子:
用严格;
使用警告;
使用数据::倾销者;
我的 $info = 转变;
# 让我们打开一个文件。
我的 $file = '/tmp/bucardo_dump.txt';
打开我的 $fh, '>:encoding(UTF-8)', $file 或 do {
$info->{warning} = "无法打开$文件: $!\n";
返回;
};
# 检查 $info 的乐趣。
打印 $fh 转储器 $info;
close $fh 或 $info->{warning} = "关闭 $file 时出错:$!\n";
# 记录一条消息并返回。
$info->{message} = '在 UR 数据库中 NORMALIZIN UR RELAYSHUNS';
返回;
更新
布卡多更新
更新 Bucardo 对象。 “type”指定要更新的对象的类型,而
“名称”应该是对象的名称。 每种类型支持的参数是
与“添加”相同。 支持的类型有:
“自定义代码”
“D b”
“同步”
“桌子”
“顺序”
更新 自定义代码
布卡多更新自定义代码设置=值
更新现有的自定义代码。 可以更改的项目有:
“关于”
自定义代码的简短描述。
“getdbh”
布尔值,指示是否应将 Perl DBI 数据库句柄提供给
自定义代码子例程。 如果为 true,数据库句柄将在“dbh”键下提供
传递给子例程的哈希引用的值。 该键下的值将是
哈希引用将数据库名称映射到各自的句柄。
“名称”
自定义代码对象的名称。
“优先事项”
表示执行自定义代码的优先级的数字。 较低的数字
具有更高的优先级。 对于设置“lastcode”以取消
执行相同“when_run”的后续自定义代码。
“地位”
此自定义代码的当前状态。 除“活动”之外的任何内容都意味着代码是
不跑。
“运行时”
指示何时应运行自定义代码的字符串。 支持的值包括:
“之前_txn”
“检查行之前”
“之前_触发_下降”
“after_trigger_drop”
“表同步后”
“例外”
“冲突”
“启用前触发”
“after_trigger_enable”
“after_txn”
“同步之前”
“同步后”
更新 db
布卡多乌德帕特数据库端口=xxx 主机=xxx 用户=xxx 通行=xxx
更新数据库。 “名称”是 Bucardo 所知道的数据库的名称。 这
可能与实际的数据库名称不同,因为多个主机可能拥有具有以下名称的数据库
一样的名字。
支持的命名参数有:
“数据库名称”
“D b”
数据库的实际名称。
“类型”
“数据库类型”
数据库的类型。 目前支持的值为:
·“postgres”
·《细雨》
·“蒙戈”
·“mysql”
·《玛丽亚》
·《神谕》
·“redis”
·“sqlite”
“用户名”
“数据库用户”
“用户”
Bucardo 用于连接数据库的用户名。
“密码”
“数据库通行证”
“经过”
连接到数据库时 Bucardo 应使用的密码。
“数据库主机”
“鬼魂”
“主持人”
要连接的主机名。
“数据库端口”
“PG端口”
“港口”
要连接的端口。
“数据库连接”
“pgconn”
“康涅狄格州”
其他连接参数,例如“sslmode=require”。 选修的。
“地位”
布卡多数据库的状态。 必须是“活动”或“非活动”。
“数据库组”
“服务器端准备”
“ssp”
启用或禁用服务器端准备。 传递 1 启用它们或传递 0 禁用它们。
“makedelta”
为此数据库启用或禁用 makedelta。
“数据库服务”
“服务”
用于 Postgres 数据库的服务名称。
“数据库组”
要添加数据库的数据库组的逗号分隔列表。 数据库将是
从它以前所属的任何其他数据库组中删除。
更新 同步
布卡多更新同步同步名relgroup = xxx dbs = xxx
更新同步,这是一个命名的复制事件,其中包含有关要执行的操作的信息
从哪里复制到哪里。 支持的参数有:
“名称”
同步的名称。 必需的。
“数据库”
数据库组的名称或逗号分隔的数据库列表。
“关系组”
要同步的relgroup 的名称。
“地位”
指示同步是否处于活动状态。 必须是“活动”或“非活动”。
注意,这不会改变sync的当前运行状态,只是标记是否
它应该在下次重新加载时处于活动或非活动状态。 使用“激活同步”并
命令来实际激活或停用同步。
“重建索引”
布尔值,指示是否在每次同步后重建索引。
“寿命”
KID 在被收割之前可以存活的秒数。
“最大踢”
KID 在被收割之前可能被踢的次数。
“隔离级别”
此同步应使用的事务隔离级别。 只有选择是“可序列化的”
和“可重复读取”
“冲突策略”
同步中使用的冲突解决策略。 支持的值:
“布卡多来源”
“源”数据库上的行始终“获胜”。 换句话说,在冲突中,
Bucardo 将行从源复制到目标。
“布卡多目标”
“目标”数据库上的行总是获胜。
“布卡多_跳过”
任何冲突的行都不会被复制。 大多数情况下不推荐。
“布卡多随机”
每个数据库每次获胜的机会均等。
“布卡多_最新”
最近更改的行获胜。
“布卡多_中止”
同步因冲突而中止。
“一次性复制”
确定同步是否应切换到单次运行的完整复制模式。
支持的值为:
0:关闭
1:始终完整副本
2:仅复制目标上空的表
“活着”
指示同步进程 (CTL) 是否应持久的布尔值。
“孩子们还活着”
指示同步子进程 (KID) 是否应持久的布尔值。
“自动踢”
布尔值,指示同步中的表是否应自动发送踢动
修改时的消息。 可能会被“autokick”参数覆盖
单独的桌子。
“检查时间”
指定同步在被踢出之前应进行的最长时间的间隔。 有用
对于您不希望通知触发器的开销的繁忙系统。
“优先事项”
指示同步优先级的整数。 数字越小优先级越高。
目前仅用于显示目的。
“复制后分析”
布尔值,指示是否在每次同步后分析表。 默认关闭。
“逾期”
指定同步未运行的时间间隔
应视为逾期。 当同步发生时,“check_bucardo_sync”会发出警告
没有在这段时间内运行过。
“已到期”
指定同步未运行的时间间隔
应视为已过期。 当“check_bucardo_sync”发出一条关键消息时
这段时间内尚未运行同步。
“跟踪率”
指示是否跟踪同步速率的布尔值。
“重建索引”
布尔值,指示是否在每次同步后重建索引。
“严格检查”
布尔值,指示在同步中比较表时是否严格。 如果
列具有不同的名称或数据类型,验证将失败。 但也许
列可以有不同的名称或数据类型。 如果是这样,请禁用
“strict_check”和列差异将导致警告而不是失败
验证。 默认为 true。
更新 表
布卡多更新表 [schema].table db=actual_db_name
更新表对象。 将从指定的数据库中读取表信息。
支持的参数:
“D b”
从中读取表信息的数据库的名称。 应该是一个名字
布卡多知道。
“模式名称”
在其中找到该表的架构的名称。
“表名”
表的实际名称。
“自动踢”
布尔值,指示表是否应自动发送踢出消息
当它被修改时。 覆盖表中任何同步的“autokick”参数
是一部分。
“重建索引”
布尔值,指示是否在每次同步后重建索引。
“复制后分析”
布尔值,指示是否在每次同步后分析表。
“复制后真空”
布尔值,指示是否在每次同步后清理表。
“关系组”
将表添加到指定的 relgroup。 可以指定多次。 该表将
从任何其他relgroups 中删除。
“makedelta”
指定哪些数据库需要为此表启用 makedelta。
“严格检查”
布尔值,指示在同步之间比较表时是否严格。
如果列具有不同的名称或数据类型,验证将失败。 但
也许允许列有不同的名称或数据类型。 如果是这样,请禁用
“strict_check”和列差异将导致警告而不是失败
验证。 默认为 true。
更新 序列
布卡多更新序列 [schema].sequence relgroup=xxx
“D b”
序列所在的数据库的名称。
“模式名称”
在其中找到序列的模式的名称。
“关系组”
将序列添加到指定的 relgroup。 可能是特定的
序列将从任何其他相关组中删除。
去掉
布卡多删除
从布卡多移除一个或多个对象。 有效的项目类型是;
·“db”或“数据库”
使用“--force”选项清除相关表和组而不是出错
出。
·“数据库组”
·“关系组”
· “同步”
· “桌子”
· “顺序”
·“自定义颜色”
·“自定义名称”
·“自定义代码”
踢
布卡多踢[暂停]
告诉一个或多个命名同步尽快触发。 请注意,这只是发送一个
请求同步触发:如果已经有相同的同步,则可能不会立即开始
正在运行,或者源或目标数据库已超出允许的 Bucardo 数量
连接。 如果最后一个参数是数字,则将其视为超时。 如果这个数
为零,bucardo 命令在同步完成之前不会返回。 对于任何其他
数,同步最多将等待该秒数。 如果有任何同步尚未完成
在超时之前,将返回退出值 1。 错误将导致退出值
2 或 3。在所有其他情况下,将返回退出值 0。
如果给出超时,还会显示总完成时间(以秒为单位)。 如果同步
前往多个目标,每个目标从踢球开始所花费的时间
每个目标完成时也会显示。 选项:
“ - 重试”
同步失败时重试的次数。 默认为 0。
“--重试-睡眠”
每次重试之间的休眠时间(以秒为单位)。
“——不定时器”
默认情况下,带有超时参数的踢会给出运行的实时时间摘要
使用退格字符已过去。 如果跑踢,这可能是不需要的,
例如,通过 cronjob,因此打开 --notimer 将简单地打印整个
消息不带退格键。
暂停
布卡多暂停
布卡多暂停全部
布卡多简历
布卡多恢复全部
指示一个或多个命名同步暂时暂停,或从上一次暂停恢复。
这仅适用于活动同步,并且仅在 Bucardo 当前正在运行时才生效。
关键字“all”也可用于暂停或恢复所有已知的活动同步。
重载 配置
布卡多重新加载配置
布卡多重新加载配置 30
向所有 CTL 和 KID 进程发送消息,要求它们重新加载 Bucardo
配置。 此配置是配置 Bucardo 的一系列键/值对
行为,而不是由“添加”、“删除”或“更新”命令管理的任何对象。
默认情况下,Bucardo 将发送消息然后退出。 传递一个可选的数字并
Bucardo 将等待所有子进程报告的时间长度
完成。
集
布卡多设置设置1=值[设置2=值]
设置一个或多个配置设置表。 设置名称不区分大小写。 这
可用设置有:
“自动同步_ddl”
我们尝试自动修复哪些 DDL 变化情况? 默认值:“newcol”。
“布卡多版本”
布卡多的当前版本。 默认值:5.4.1。
“布卡多_vac”
我们想要自动运行 VAC 守护进程吗? 默认值:1。
“布卡多_初始_版本”
创建此架构所用的布卡多版本。 默认值:5.4.1。
“ctl_checkonkids_time”
控制器多久检查一次孩子的健康状况? 默认值:10。
“ctl_createkid_time”
我们需要睡多长时间才能让孩子们能够站起来? 默认值:0.5。
“ctl_睡眠”
控制器循环休眠多长时间? 默认值:0.2。
“默认冲突策略”
所有同步的默认冲突策略。 默认值:“bucardo_latest”。
“default_email_from”
警报电子邮件的发送者是谁。 默认: ”[电子邮件保护]".
“默认电子邮件主机”
通过哪个主机发送电子邮件。 默认值:“本地主机”。
“默认电子邮件地址”
向谁发送警报电子邮件。 默认: ”[电子邮件保护]".
“电子邮件_调试_文件”
用于保存所有外发电子邮件副本的文件。 默认值:无。
“结束同步睡眠”
当自定义代码请求结束同步时,我们会休眠多长时间? 默认值:1.0。
“平面文件目录”
存储平面文件输出的目录。 默认: ”。”。
“主机安全检查”
正则表达式确保我们不会意外地运行到不应该运行的地方。 默认值:无。
“隔离级别”
所有同步应使用的事务隔离级别。 默认为“可序列化”。 这
只有其他有效选项是“可重复读取”
“孩子死锁睡眠”
如果遇到死锁错误,需要休眠多长时间(以秒为单位)。 默认值:0.5。 设置为-1即可
防止孩子重试。
“kid_nodeltarows_sleep”
如果没有发现增量行,孩子们要睡多久? 默认值:0.5。
“孩子ping时间”
我们多久检查一次 KID? 默认值:60。
“孩子重新启动睡眠”
重新启动孩子时要睡多长时间? 默认值:1。
“孩子串行睡眠”
如果遇到序列化错误,要休眠多长时间(以秒为单位)。 默认值:0.5。 设置为-1
以防止孩子重试。
“孩子睡觉”
孩子循环睡多长时间? 默认值:0.5。
“日志冲突文件”
冲突详细信息日志文件的名称。 默认值:“bucardo_conflict.log”。
“日志级别”
日志记录的详细程度。 越高则越详细。 默认值:“正常”。
“log_微秒”
在时间戳中显示微秒输出? 默认值:0。
“日志显示级别”
在日志输出中显示日志级别? 默认值:0。
“日志显示线”
在日志输出中显示行号? 默认值:0。
“log_showpid”
在日志输出中显示PID? 默认值:1。
“日志显示时间”
在日志输出中显示时间戳? 0=关闭 1=自纪元以来的秒数 2=标量 gmtime
3=标量本地时间。 默认值:3。
“mcp_dbproblem_sleep”
在尝试重生之前要休眠多少秒。 默认值:15。
“mcp_loop_sleep”
主 MCP 守护进程在循环之间休眠多长时间? 默认值:0.2。
“mcp_ping时间”
我们多久 ping 检查一次 MCP? 默认值:60。
“mcp_vactime”
我们多久检查一次 VAC 是否仍在运行? 默认值:60。
“piddir”
保存 Bucardo PID 文件的目录。 默认值:“/var/run/bucardo”。
“原因文件”
文件保存停止和启动的原因。 默认值:“bucardo.restart.reason.txt”。
“重新加载配置超时”
“reload_config”命令应等待重新加载完成的秒数。
默认值:30
“信号量表”
让应用程序知道同步正在进行的表格。 默认值:“bucardo_status”。
“语句块大小”
将多少个主键放入单个语句中。 默认值:10000。
“统计脚本网址”
统计脚本的位置。 默认: ”http://www.bucardo.org/".
“停止文件”
用于停止 Bucardo 进程的信号量文件的名称。 默认值:“fullstopbucardo”。
“系统日志设施”
使用哪个系统日志设施级别。 默认值:“log_local1”。
“tcp_keepalives_count”
要发送多少个探针。 0 表示坚持系统默认值。 默认值:0。
“tcp_keepalives_idle”
每个保活探测之间等待多长时间。 默认值:0。
“tcp_keepalives_interval”
等待保活探测响应的时间。 默认值:0。
“真空运行”
VAC 进程运行的频率是多少? 默认值:30。
“真空睡眠”
VAC 进程在运行之间休眠多长时间? 默认值:120。
“警告文件”
包含以“Warning”开头的所有日志行的文件。 默认值:“bucardo.warning.log”。
显示
布卡多 显示全部| [ ...]
显示当前布卡多设置。 使用关键字“all”查看所有设置,或者
指定一个或多个搜索词。 有关配置的完整详细信息,请参阅“设置”
设置。
配置
布卡多配置显示全部| [ ...]
布卡多配置集[ ...]
已弃用用于显示和设置配置设置的界面。 使用“显示”和
相反,“设置”命令。
平
布卡多平
布卡多平 60
布卡多平 0
向 MCP 进程发送 ping 通知以查看它是否会响应。 默认情况下,它会等待
15秒。 数字参数将更改此超时。 使用 0 作为超时
表示永远的等待。 如果返回响应,程序将退出并返回一个值
为 0。如果超时,该值为 1。返回一条以 Nagios 开头的消息
“OK”或“CRITICAL”表示成功或失败。
状态
布卡多状态 [同步名称] [--sort=#] [--show-days] [--compress]
以表格格式显示所有已知同步的简要状态。 如果给定一个或多个同步
名称,显示每个名称的详细信息。 要查看所有同步的详细信息,
只需使用“状态全部”
显示简要信息时,各列为:
1. 姓名
同步的名称
2. 州
同步的状态。 可以是“好”、“坏”、“空”、“未找到记录”、“未知”、
或当前正在运行的同步的运行状态。
3. (姓) 非常好
同步上次成功运行的时间。
4. 时间
距离上次同步成功已经过去了多长时间
5. (姓) 输入/输出
上次成功同步执行的插入和删除次数。 也可能会显示
被截断 (T) 或冲突 (C) 的行数(如果适用)。
6. (姓) 坏
上次同步失败的时间。
7. 时间
自上次同步失败以来已经过去了多长时间
“状态”的选项有:
“——表演日”
指定是否列出时间间隔(以天为单位),或者仅显示
小时。 例如,“3d 12h 6m 3s”与“48h 6m 3s”
“ - 压缩”
指定是否通过删除空格来压缩时间间隔。 大多
用于限制“状态”显示的宽度。
“--排序=#”
请求按九列之一对“状态”输出进行排序。 使用负数
用于反转排序顺序的数字。
激活
布卡多激活同步名称 [同步名称2 同步名称3 ...] [超时]
激活一个或多个命名同步。 如果给出超时参数,它将等待,直到它完成
收到来自布卡多的确认,表明每个同步已成功激活。
关闭
布卡多停用同步名称 [同步名称2 同步名称3 ...] [超时]
停用一个或多个命名同步。 如果给出超时参数,它将等待,直到
已收到布卡多的确认,表明同步已成功停用。
消息
布卡多消息“我在这里”
向正在运行的 Bucardo 日志发送消息。 此消息将显示前缀为
“信息: ”。 如果 Bucardo 未运行,该消息将在下次运行时写入日志
布卡多跑了起来,有人添加了另一条消息。
重载
布卡多重新加载 [syncname2syncname3 ...]
向一个或多个同步进程发送一条消息,指示它们重新加载。 等待每一个
在继续下一个之前重新加载。 重新加载包括停用同步,
从数据库重新加载其信息,并再次激活它。
检查
布卡多视察[ ...]
检查特定类型的一个或多个对象。 结果发送到“STDOUT”。 这
支持的类型包括:
“桌子”
“同步”
“关系组”
验证
布卡多验证所有| [ ...]
验证一个或多个同步。 使用关键字“all”验证所有同步,或指定一个
或更多同步来验证。
请注意,此命令执行同步启动时完成的所有验证的子集
或激活。
清除
布卡多清除全部| [ ...]
清除一个或多个数据库的一个或多个表的增量表和跟踪表。 使用
关键字“all”验证所有表,或指定一个或多个表进行验证。
三角洲
布卡多三角洲 [总计] [ ...]
显示每个源目标的当前增量计数。 提供要限制的数据库列表
它只是给定的。 允许使用通配符。 使用特殊名称“总计”来显示
仅总计。
帮助
布卡多帮助
布卡多帮助
布卡多帮助
得到帮助。 可以返回一般帮助,也可以返回单个命令或单个命令的帮助
及其行动。 一些例子:
布卡德帮助列表
bucard帮助添加表
配置 详细信息
通常更容易在脚本顶部设置大部分选项,或者创建一个
它们的别名,因为它们不会经常改变(如果有的话)。
“-d”
“--数据库名称”
bucardo --db-name 小部件
布卡多-D 拼贴
要连接的 Bucardo 数据库的名称。
“-U”
“--db-用户”
布卡多--db-用户 postgres
布卡多-U妈妈
连接到 Bucardo 数据库时使用的用户名。
“-P”
“--db-pass”
布卡多--db-pass s3cr1t
布卡多-P lolz
连接到 Bucardo 数据库时使用的密码。
“-H”
“--db-主机”
布卡多 --db-host db.example.com
布卡多-h db2.example.net
连接到 Bucardo 数据库时使用的主机名。
“-p”
“--db-端口”
布卡多--db-端口 7654
连接到 Bucardo 数据库时要连接的端口号。
“——布卡多克”
布卡多--bucardorc myrcfile
使用指定的文件进行配置,而不是默认的 ./.布卡多克.
“--不-布卡多克”
请勿使用 ./.布卡多克 配置文件。
“--详细”
使 bucardo 运行变得冗长。 默认关闭。
“ - 安静的”
告诉布卡多尽可能安静。 默认关闭。
“ - 帮助”
显示 bucardo 用法的简短摘要。
使用 onworks.net 服务在线使用 bucardop