我们在做完Lync2013升级完毕后,所有个人的联系人都已经丢失。我们应当怎么从原有数据库里面导入联系人数据呢?
Lync2010 的各种用户数据包括用户权限,用户联系人列表等都存储在RTC.mdf数据库里,微软为我们提供了现成的管理此数据库的工具叫做Dbimpexp.exe。
此工具在Lync的安装目录:C:\Program Files\Common Files\Microsoft Lync Server 2010\Support>
但是此工具只能管理Lync2010的数据,导出导入数据都必须在Lync2010环境下使用。
到Lync2013以后随着Powershell的进一步加强,有了现成的Cmdlets管理更加方便了,并且数据库也变成了RTCXDS.mdf,管理此数据库的Cmdlets命令有update-csuserdata和import-Csuserdata,关于这两个命令的区别我们接下来再说。
但是同样这两个工具也只能识别自己到处的数据格式。
那么怎么办呢?我们有没有一种转换数据的工具呢。当然有,它就是Convert-csuserdata。接下来举一个例子说明一下怎么将lync2010的数据导入到Lync2013:
一 从Lync 2010 导出联系人数据
C:\Program Files\Common Files\Microsoft Lync Server 2010\Support>DBImpExp.exe /hrxmlfile:"c:\user.xml" /sqlserver:LyncDB01.contoso.com
二 查看一下个人的空的联系人列表
三 使用Lync2013转换工具转换数据格式,我们发现Lync2010导入的格式是XML的,而Lync2013的格式是zip文件:
四 使用Lync2013导入工具导入转换后的数据文件。就用到上边我们说到的命令。
import-csuserdata可以直接将数据写入到后端数据库,但是前端服务器只读取在冷启动时候的后端数据库所以需要重新启动前端服务器来填充数据库。
update-csuserdata 不需要则不需要重新启动系统
我们只更新一个账户的联系人列表:
update-csuserdata –filename c:\lync2013.zip –userfilter “lixs@contoso.com”
五 导入完毕后重新登录客户端,发现所有的联系人已经出来了。
本文转自handsome7038 51CTO博客,原文链接:http://blog.51cto.com/lixiaosong/1576600