20.3. 离线两个目录服务器实例
要比较两个离线目录服务器实例,请导出两个主机上的数据库,并使用 ds-replcheck 进行比较。
默认情况下,如果您排除复制协议中的某些属性被复制,则 ds-replcheck 会报告这些属性不同。要忽略这些属性,请将 -i attribute_list 参数传递给 实用程序。
流程
在供应商中,列出后缀及其对应的数据库:
# dsconf -D "cn=Directory Manager" ldap://supplier.example.com backend suffix list dc=example,dc=com (userroot) o=test (test_database)请注意您要比较的数据库的名称或后缀。
在实例运行时导出数据库:
# dsconf -D "cn=Directory Manager" ldap://supplier.example.com backend export -r -l /var/lib/dirsrv/slapd-instance_name/ldif/export-supplier.ldif userRootr参数确保导出包含复制状态信息,-l设置导出文件的路径。请注意,dirsrv用户必须在目标目录中具有写入权限才能创建该文件。- 在您要与供应商比较的副本中重复前面的步骤。
将导出的文件从一个主机复制到另一个主机。例如,要将 LDIF 文件从
replica.example.com复制到provider.example.com,请在副本上输入以下命令:# scp /var/lib/dirsrv/slapd-instance_name/ldif/export-replica.ldif supplier.example.com:/var/lib/dirsrv/slapd-instance_name/ldif/请注意,这个命令需要您可以使用 SSH 访问供应商。
在供应商中,比较两个 LDIF 文件:
# ds-replcheck offline -m /var/lib/dirsrv/slapd-instance_name/ldif/export-supplier.ldif -r /var/lib/dirsrv/slapd-instance_name/ldif/export-replica.ldif -rid 1 -b "dc=example,dc=com"-m和-r参数设置到供应商和副本的路径,-rid设置供应商的副本标识符。