Step by step Dynamics CRM 2011升级到Dynamics CRM 2013

时间:2020-12-26 07:35:04

 

原创地址:http://www.cnblogs.com/jfzhu/p/4018153.html

转载请注明出处

 

(一)检查Customizations

从2011升级到2013有一些legacy feature是不再支持的了:

  • CRM 4.0 plugin-ins
  • CRM 4.0 client-side scripting
  • CRM 4.0 custom workflow activities
  • 2007 web service endpoint
  • ISV folder support for custom web applications
  • Solution Down Level tool

微软提供了Legacy Feature Check tool来帮助检查你的系统是否使用了这些legacy feature,另外还提供了Dynamics CRM 2011 Custom Code Validation Tool来帮助你检查系统中是否有不再支持的客户端代码。

 

 

(二)检查你的软硬件件是否支持Dynamics CRM 2013

具体参见Planning Guide for Microsoft Dynamics CRM 2013

 

 

(三)其他需要了解的事情

从CRM 4.0无法直接升级到2013,2011必须是从Rollup 6到Rollup 14+才可以升级到2013。

参见《Microsoft Dynamics CRM 2013 and 2011 Update Rollups and Service Packs》

 

升级后的数据库结构会有改变,Base table和Extension table将会合并,所以如果在2011里你有一些直接对数据库的操作,升级后这部分工作可能会失败,但是微软也为你推迟合并的升级方式,本文后面也会介绍到。

 

 

(四)升级测试

先做一次升级测试,以来检验一下升级过程之中和之后是否会出现问题,二来对升级所需要的时间(系统停止的时间)做到心中有数。

 

 

(五)升级方法

有三种方法:

  1. 使用一个新的SQL实例(推荐方法):也有一些文章管它叫Side-by-Side的升级方法,这种方法需要最短的system downtime,如果升级发生问题,可以最快速的恢复到旧的环境。
  2. 使用原来的SQL实例
  3. In-place upgrade(最慢,最不安全)

下面我们演示第一种升级方法

 

 

(六)Side-by-Side升级

1. 备份CRM 2011的数据库

Step by step Dynamics CRM 2011升级到Dynamics CRM 2013

Step by step Dynamics CRM 2011升级到Dynamics CRM 2013

 

 

2. 恢复数据库

演示环境有一台CRM服务器,一台SQL Server服务器,一台Report服务器。

CRM 服务器要先安装Dynamics CRM 2013,如何安装请参考《Step by step Dynamics CRM 2013安装》

 

Step by step Dynamics CRM 2011升级到Dynamics CRM 2013

 

在SQL Server上恢复数据库备份文件。

 

Step by step Dynamics CRM 2011升级到Dynamics CRM 2013

 

Step by step Dynamics CRM 2011升级到Dynamics CRM 2013

Step by step Dynamics CRM 2011升级到Dynamics CRM 2013

Step by step Dynamics CRM 2011升级到Dynamics CRM 2013

 

3. 在CRM服务器上使用Deployment Manager来导入组织

Step by step Dynamics CRM 2011升级到Dynamics CRM 2013

Step by step Dynamics CRM 2011升级到Dynamics CRM 2013

Step by step Dynamics CRM 2011升级到Dynamics CRM 2013

Step by step Dynamics CRM 2011升级到Dynamics CRM 2013

Step by step Dynamics CRM 2011升级到Dynamics CRM 2013

Step by step Dynamics CRM 2011升级到Dynamics CRM 2013

Step by step Dynamics CRM 2011升级到Dynamics CRM 2013

Step by step Dynamics CRM 2011升级到Dynamics CRM 2013

Step by step Dynamics CRM 2011升级到Dynamics CRM 2013

 

打开数据库发现Base table和Extension table已经合并为一张表了。

Step by step Dynamics CRM 2011升级到Dynamics CRM 2013

 

 

(七)升级但推迟数据库表合并

1. 停用并删除刚才升级的组织

Step by step Dynamics CRM 2011升级到Dynamics CRM 2013

Step by step Dynamics CRM 2011升级到Dynamics CRM 2013

Step by step Dynamics CRM 2011升级到Dynamics CRM 2013

 

2. 删除数据库

Step by step Dynamics CRM 2011升级到Dynamics CRM 2013

 

勾选Close existing connections

Step by step Dynamics CRM 2011升级到Dynamics CRM 2013

 

3.重新恢复2011的数据库

Step by step Dynamics CRM 2011升级到Dynamics CRM 2013

 

4. 在CRM服务器修改注册表

CRM服务器上的一个注册表键值会决定升级时是否合并Base与Extension Table。

Location: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSCRM\MergeBaseAndExtensionTables

Type: DWORD (32-bit)

Value: 0表示不合并,1表示合并

 

如果存在该键值,就修改它为0,否则创建一个。

Step by step Dynamics CRM 2011升级到Dynamics CRM 2013

Step by step Dynamics CRM 2011升级到Dynamics CRM 2013

Step by step Dynamics CRM 2011升级到Dynamics CRM 2013

 

5. 在CRM服务器上使用Deployment Manager来导入组织

导入成功后,在SQL Server上看一下数据库结构,发现Base table和Extension table确实没有合并。

Step by step Dynamics CRM 2011升级到Dynamics CRM 2013

 

6. 使用CrmMergeBaseAndExtensionTableTool来合并双表

先将注册表中的MergeBaseAndExtensionTables的值改为1:

Step by step Dynamics CRM 2011升级到Dynamics CRM 2013

 

然后,可以使用CRM提供的一个工具来合并这两张表

Step by step Dynamics CRM 2011升级到Dynamics CRM 2013

Step by step Dynamics CRM 2011升级到Dynamics CRM 2013

Step by step Dynamics CRM 2011升级到Dynamics CRM 2013

Step by step Dynamics CRM 2011升级到Dynamics CRM 2013

 

 

(八)总结

  1. 升级前检查一下系统中是否有CRM 2013不支持的定制开发
  2. 检查2013的环境是否满足软硬件的要求
  3. 默认的升级过程会合并Base table和Extension table
  4. 最好在测试环境先做一下升级
  5. 推荐使用side-by-side的升级方法
  6. 如果想要推迟base和extension表的合并,可以通过修改注册表来实现,微软也提供了一个工具来帮助后期单独完成合并表的工作。