Technical Blog Post
Abstract
如何将已创建的LDAP实例迁移到iASP
Body
如何将已创建的LDAP实例迁移到iASP
LDAP从IBM i 7.1开始支持部分数据存放到iASP。到了IBM i 7.2, LDAP支持将所有实例数据都存放到iASP。默认情况下,LDAP实例数据放在系统的ASP上。出于提供数据持续可用性或者隔离数据等考虑,有时需要把LDAP实例迁移到iASP。本文通过介绍LDAP数据分布以及如何迁移这些数据,从而帮助有需要的客户实现将LDAP实例迁移到iASP。
LDAP实例数据包含以下部分:
- 存有配置文件和schema文件的IFS目录,其路径类似如下:/QIBM/UserData/OS400/DirSrv/idsslapd-<INSTANCE_NAME>
- 用于对上述IFS目录进行补充的配置信息库,需存放在SYSBAS或者IFS目录所在ASP组上;
- 存放条目相关等数据的数据库;
- 存放修改日志信息的修改日志库。创建实例时,修改日志功能默认被关闭,因此修改日志库不被创建;
根据是否将实例数据全部迁移到iASP,迁移方法分为两种:
- 只迁移部分数据,通常是数据库和修改日志库;
- 迁移实例所有数据;
IBM i 7.1适用于第一种方法且只能迁移数据库和修改日志库。以默认LDAP实例QUSRDIR、所用iASP为MYIASP为例。
对于第一种方法,假设只迁移数据库和修改日志库,需要做如下操作:
- 停止运行QUSRDIR
ENDTCPSVR SERVER(*DIRSRV) INSTANCE(QUSRDIR)
- 备份数据库和日志库
CRTLIB LIB(BACKUP)
CRTSAVF FILE(BACKUP/INSTDB)
CRTSAVF FILE(BACKUP/INSTCL)
SAVLIB LIB(QUSRDIRDB) DEV(*SAVF) SAVF(BACKUP/INSTDB) PVTAUT(*YES)
SAVLIB LIB(QUSRDIRCL) DEV(*SAVF) SAVF(BACKUP/INSTCL) PVTAUT(*YES)
- 恢复数据库和日志库到MYIASP
RSTLIB SAVLIB(QUSRDIRDB) DEV(*SAVF) SAVF(BACKUP/INSTDB) PVTAUT(*YES) RSTASPDEV(MYIASP)
RSTLIB SAVLIB(QUSRDIRCL) DEV(*SAVF) SAVF(BACKUP/INSTCL) PVTAUT(*YES) RSTASPDEV(MYIASP)
- 修改配置信息
将ibm-slapdDbName属性值由*SYSTEM改为MYIASP。该属性位于LDAP实例配置文件/QIBM/UserData/OS400/DirSrv/idsslapd-QUSRDIR/etc/ibmslapd.conf里的如下两个条目:
- cn=Directory, cn=RDBM Backends, cn=IBM Directory, cn=Schemas, cn=Configuration
- cn=CHANGE LOG, cn=RDBM Backends, cn=IBM Directory, cn=Schemas, cn=Configuration
上述步骤中有关修改日志库的操作是可选的,只有在创建实例时选择了使用修改日志才需要该操作。
对于第二种方法,除了需要做第一种方法中的操作之外,还需要做如下操作:
- 备份配置信息库和IFS目录
CRTSAVF FILE(BACKUP/INSTCF)
CRTSAVF FILE(BACKUP/INSTUD)
SAVLIB LIB(QUSRDIRCF) DEV(*SAVF) SAVF(BACKUP/INSTCF) PVTAUT(*YES)
SAV DEV('/QSYS.LIB/BACKUP.LIB/INSTUD.FILE') OBJ(('/QIBM/UserData/OS400/DirSrv/idsslapd-QUSRDIR')) PVTAUT(*YES)
- 恢复配置信息库和IFS目录到MYIASP
RSTLIB SAVLIB(QUSRDIRCF) DEV(*SAVF) SAVF(BACKUP/INSTCF) PVTAUT(*YES) RSTASPDEV(MYIASP)
RST DEV('/QSYS.LIB/BACKUP.LIB/INSTUD.FILE') OBJ(('/QIBM/UserData/OS400/DirSrv/idsslapd-QUSRDIR' *INCLUDE '/MYIASP/QIBM/UserData/OS400/DirSrv/idsslapd-QUSRDIR')) CRTPRNDIR(*YES) PVTAUT(*YES)
- 创建符号链接
QSH CMD( 'ln -s /MYIASP/QIBM/UserData/OS400/DirSrv /idsslapd-QUSRDIR/ /QIBM/UserData/OS400/DirSrv/idsslapd-QUSRDIR')
当上述所列操作成功完成时,迁移LDAP实例到iASP上的工作也随即完成。
UID
ibm11144330