ldap数据库的suffix是建立ldap之间复制协议的基础,suffix的创建也可以通过管理界面进行,也可以通过命令行进行。不同点是通过管理界面创建的suffix会自动创建一条对应该suffix的匿名读取权限aci,但是通过命令行不会。
创建suffix命令如下:
/bin/dsconf create-suffix -h hostname -p port -w /usr/db/ODSEE/pwd dc=example,dc=cr
创建子suffix:
/bin/dsconf create-suffix -h hostname -p port -w /usr/db/ODSEE/pwd o=org,dc=example,dc=cr
设置子suffix的跟dn
/bin/dsconf set-suffix-prop -h hostname -p port -w /usr/db/ODSEE/pwd o=org,dc=example,dc=cr parent-suffix-dn:dc=example,dc=cr
suffix数据导入
suffix的初始化可以看作数据数据导入,通过dsconf和dsadm进行,区别是使用dsadm进行出事需停止ldap实例。
使用dsconf初始化suffix:
/bin/dsconf import -h hostname -p port -iK -w /usr/db/ODSEE/pwd [-x DN]... LDIF_FILE [LDIF_FILE...] SUFFIX_DN
参数说明:
-K:以增量房是导入输入
-i:是否进行交互
-x:不包含dn
LDIF_FILE:ldif初始化文件路径,可以是多个文件
SUFFIX_DN:初始化suffix跟dn
使用dsadm初始化suffix,命令行参数同上
/bin/dsadm stop instance_path
/bin/dsadm import -iK -w /usr/db/ODSEE/pwd instance_path /local/dsInst/ldif/LDIF_FILE SUFFIX_DN
/bin/dsadm start instance_path
suffix数据导出
suffix的数据数据导出,同样可以通过dsconf和dsadm进行。
使用dsconf导出(正常生产环境下,一般不会存在为了进行维护而停止服务器实例的情况,所以一般备份操作均使用dsconf进行)
/bin/dsconf export -h hostname -p port -w /usr/db/ODSEE/pwd -f not-export-unique-id --no-repl SUFFIX_DN[SUFFIX_DN...] GZ_LDIF_FILE
参数说明:
GZ_LDIF_FILE:导出到ldif文件路径
其他参数意义同上,这个是我在进行日常维护使用的导出命令,如果想更深入了解可以产看ODSEE在线手册。
使用dsadm进行导出:
/bin/dsadm export [-biQ] [-s DN] ... [-x DN] ... [-f FLAG] ... [-y [-W CERT_PW_FILE]] INSTANCE_PATH SUFFIX_DN [ SUFFIX_DN ...] GZ_LDIF_FILE
参数说明:
-s:包括那些DN
-x:不包括那些DN
INSTANCE_PATH :要导出的实例路径
SUFFIX_DN:导出的suffix
GZ_LDIF_FILE:导出到ldif文件路径
删除suffix
当删除某个suffix的时候,对应该suffix的复制协议也会一起删除。
/bin/dsconf delete-repl-agmt -h host -p port SUFFIX_DN HOST:PORT [HOST:PORT ...]
配置suffix属性
查看suffix属性,suffix缓存大小
/bin/dsconf help-properties -v | grep entry-cache-size
设置suffix缓存大小
/bin/dsconf set-suffix-prop -h host -p port dc=example,dc=com entry-cache-size:12M
获取suffix缓存设置
/bin/dsconf get-suffix-prop -h host -p port dc=example,dc=com entry-cache-size
ldap数据库实例的所有属性值的设置和查看方式大体相同,举一反三即可。