locked
Dynamics CRM 2013-2015 Upgrade Questions RRS feed

  • Question

  • Dynamics CRM 2013-2015 Upgrade Questions

    Regarding some clarifications to the 2013-2015 Migration, I have the following thoughts and questions... would greatly appreciate any input insofar as corrects to the thought process and answers to these questions. Many thanks in advance.

    1. As a prerequisite to installing the CRM 2015 Server product,  installation of SQL Server 2014 is performed. During the SQL Server 2014 installation, a new instance is created, e.g. CRM2015.

    Question:

    During the creation of this new instance (using SQL Server setup) should the ReportServer database be included ? It would seem that we would want only one ReportServer database in all instances, not one in each instance.

    2. Another SQL Server Instance is created so that the CRM2013 database can be restored to it, and from there the Organization Can be imported (which will be imported into yet another New Instance). Note: Only one CRM Database can exist in each instance.

    Questions:

    During the SQL Server Instllation creation of this new instance should the ReportServer database be included ?

    Does the ReportServer database from the original 2013 CRM Database need to be restored to this instance? What about existing and custom reports that may have been created in 2013 and how are they migrated ?

    3. The 2013 CRM databases:

    PRMCRM2013_MSCRM

    MSCRM_CONFIG

    Are to be restored to the instance created in Step 2 above. This restored database will be used as the restore source during the Import Organization Utility, and will create a new database with upgraded 2015 data.

    Questions:

    Where is the data migrated to? Is a new instance created, since it is understood that only one CRM Database can reside in one SQL Server instance? In addition, in which instance is the primary ReportServer Database going to reside ? Are configuration changes required to be made to location of the ReportServer database, because during the Import Organization routine the ReportServer URL address was pointed to the CRM2015 Instance (the new install of 2015 where the SSRS Data Connection Tools were pointed to). It would seem like there needs to be a reconfiguration of the ReportServer URL after the database has been successfully upgraded to the new instance, and a re-install of the SSRS Data Tools Extensions and Data Connector to the new, upgraded database--uncertain where this new database will reside (e.g. in which SQL Server Instance).

    4. Received an error message during Import Organization, User Mapping. All users are not mapped.

    Question:

    How can this be addressed without errors so the process is more streamlined?

    5. Receiving a defragment/rebuild warning on indexes. This can be resolved using the following TSQL Script to rebuild all indexes in a database

    DECLARE @Database VARCHAR(255)  

    DECLARE @Table VARCHAR(255) 

    DECLARE @cmd NVARCHAR(500) 

    DECLARE @fillfactor INT

     

    SET @fillfactor = 90

     

    DECLARE DatabaseCursor CURSOR FOR 

    SELECT name FROM master.dbo.sysdatabases  

    WHERE name NOT IN ('master','msdb','tempdb','model','distribution', 'MSCRM_CONFIG','ReportServer$CRM2013', 'ReportServer$CRM2013TempDB')  

    ORDER BY

     

    OPEN DatabaseCursor 

     

    FETCH NEXT FROM DatabaseCursor INTO @Database 

    WHILE @@FETCH_STATUS =

    BEGIN 

     

       SET @cmd = 'DECLARE TableCursor CURSOR FOR SELECT ''['' + table_catalog + ''].['' + table_schema + ''].['' +

      table_name + '']'' as tableName FROM [' + @Database + '].INFORMATION_SCHEMA.TABLES

      WHERE table_type = ''BASE TABLE'''  

     

       -- create table cursor 

       EXEC (@cmd) 

       OPEN TableCursor  

     

       FETCH NEXT FROM TableCursor INTO @Table  

       WHILE @@FETCH_STATUS = 0  

       BEGIN  

     

           IF (@@MICROSOFTVERSION / POWER(2, 24) >= 9)

           BEGIN

               -- SQL 2005 or higher command

               SET @cmd = 'ALTER INDEX ALL ON ' + @Table + ' REBUILD WITH (FILLFACTOR = ' + CONVERT(VARCHAR(3),@fillfactor) + ')'

               EXEC (@cmd)

           END

           ELSE

           BEGIN

              -- SQL 2000 command

              DBCC DBREINDEX(@Table,' ',@fillfactor) 

           END

     

           FETCH NEXT FROM TableCursor INTO @Table  

       END  

     

       CLOSE TableCursor  

       DEALLOCATE TableCursor 

     

       FETCH NEXT FROM DatabaseCursor INTO @Database 

    END 

    CLOSE DatabaseCursor  

    DEALLOCATE DatabaseCursor

     

     

    6. Received a warning that indexes are not consistent with Microsoft Dynamics CRM Indexes:

    The indexes on the Microsoft Dynamics CRM database are not consistent with Microsoft Dynamics CRM indexes.

    The following indexes are not consistent with Microsoft Dynamics CRM indexes:

    tablename:                              auditbase

    indexname:                              ndx_primarykey_audit

    remark:                                 deleted index

    tablename:                              auditbase

    indexname:                              ndx_primarykey_audit_primary

    remark:                                 deleted index

     

    Questions:

    How should this be dealt with – does the Import Organization utility make necessary overrides ? Will this adversely affect the database ?

     

    7. Received a warning message THAT THE FOREIGN KEY CONSTRAINTS IN THE Microsoft Dynamics CRM Database are not consistent with Microsoft Dynamics CRM foreign key constraints:

    The foreign key constraints in the Microsoft Dynamics CRM database are not consistent with Microsoft Dynamics CRM foreign key constraints.

     The following foreign key constraint(s) are not consistent with Microsoft Dynamics CRM foreign key constraints:

    name:                                   activity_pointer_new_dispatchlog

    remark:                                 added foreign key

    name:                                   activity_pointer_po_surveyactivity

    remark:                                 added foreign key

    name:                                   new_appointment_opportunity_quailifier

    remark:                                 added foreign key

    name:                                   new_competitor_lead_currentservicecompany

    remark:                                 added foreign key

    name:                                   new_contact_account_billingmanager

    remark:                                 added foreign key

    name:                                   new_contact_account_secondarycontact

    remark:                                 added foreign key

    name:                                   new_contact_contact_reportsto

    remark:                                 added foreign key

    etc......

    Question:

    It looks like the import utility make corrections to these foreign key constraints. Is this correct?


    Tuesday, December 1, 2015 4:33 PM

All replies

  • Some answers:

    1. If you're creating a new Deployment of CRM, then you should create a new instance of ReportServer
    2. There's no need to restore the ReportServer database. CRM will publish reports to this database when you import a CRM organisation
    3. You should only restore the organisation database (PRMCRM2013_MSCRM). The MSCRM_Config database is specific to the CRM deployment and created during the CRM server installation, and should not be overwritten
    4. You should map all active users

    5,6,7 There are no general answers to these


    Microsoft CRM MVP - http://mscrmuk.blogspot.com/ http://www.excitation.co.uk

    Tuesday, December 1, 2015 5:09 PM
    Moderator
  • David, is it possible to host multiple CRMs with one Reporting Service now? (might be a RTFM-question...)

    Regards


    Rickard Norström Developer CRM-Konsulterna
    http://www.crmkonsulterna.se
    Swedish Dynamics CRM Forum: http://www.crmforum.se
    My Blog: http://rickardnorstrom.blogspot.se

    Tuesday, December 8, 2015 2:17 PM