Restore the database to the development VM using the.bacpac file

Step by step, as below:


1. Take a Backup of AxDB database from LCS and push it into Development VM


2. Open Command Prompt (Run as Administrator)

Run - cd "C:\Program Files (x86)\Microsoft SQL Server\140\DAC\bin"


3. Command to Execute


SqlPackage.exe /a:import /sf:C:\TEMP\YourDBBackupFile.bacpac /tsn:localhost /tdn:AxDB_DDMMYYYY /p:CommandTimeout=1200


Note: The process will take some more time


4. Open SQL and run the below script


CREATE USER axdeployuser FROM LOGIN axdeployuser EXEC sp_addrolemember 'db_owner', 'axdeployuser' 


CREATE USER axdbadmin FROM LOGIN axdbadmin EXEC sp_addrolemember 'db_owner', 'axdbadmin' 


CREATE USER axmrruntimeuser FROM LOGIN axmrruntimeuser EXEC sp_addrolemember 'db_datareader', 'axmrruntimeuser' EXEC sp_addrolemember 'db_datawriter', 'axmrruntimeuser' 


CREATE USER axretaildatasyncuser FROM LOGIN axretaildatasyncuser EXEC sp_addrolemember 'DataSyncUsersRole', 'axretaildatasyncuser' 


CREATE USER axretailruntimeuser FROM LOGIN axretailruntimeuser EXEC sp_addrolemember 'UsersRole', 'axretailruntimeuser' EXEC sp_addrolemember 'ReportUsersRole', 'axretailruntimeuser' 


CREATE USER axdeployextuser FROM LOGIN axdeployextuser EXEC sp_addrolemember 'DeployExtensibilityRole', 'axdeployextuser' 


CREATE USER [NT AUTHORITY\NETWORK SERVICE] FROM LOGIN [NT AUTHORITY\NETWORK SERVICE] EXEC sp_addrolemember 'db_owner', 'NT AUTHORITY\NETWORK SERVICE' UPDATE T1 SET T1.storageproviderid = 0 , T1.accessinformation = '' , T1.modifiedby = 'Admin' , T1.modifieddatetime = getdate() FROM docuvalue T1 WHERE T1.storageproviderid = 1 --Azure storage DROP PROCEDURE IF EXISTS SP_ConfigureTablesForChangeTracking DROP PROCEDURE IF EXISTS SP_ConfigureTablesForChangeTracking_V2 GO -- Begin Refresh Retail FullText Catalogs DECLARE @RFTXNAME NVARCHAR(MAX); DECLARE @RFTXSQL NVARCHAR(MAX); DECLARE retail_ftx CURSOR FOR SELECT OBJECT_SCHEMA_NAME(object_id) + '.' + OBJECT_NAME(object_id) fullname FROM SYS.FULLTEXT_INDEXES WHERE FULLTEXT_CATALOG_ID = (SELECT TOP 1 FULLTEXT_CATALOG_ID FROM SYS.FULLTEXT_CATALOGS WHERE NAME = 'COMMERCEFULLTEXTCATALOG'); OPEN retail_ftx; FETCH NEXT FROM retail_ftx INTO @RFTXNAME; BEGIN TRY WHILE @@FETCH_STATUS = 0 BEGIN PRINT 'Refreshing Full Text Index ' + @RFTXNAME; EXEC SP_FULLTEXT_TABLE @RFTXNAME, 'activate'; SET @RFTXSQL = 'ALTER FULLTEXT INDEX ON ' + @RFTXNAME + ' START FULL POPULATION'; EXEC SP_EXECUTESQL @RFTXSQL; FETCH NEXT FROM retail_ftx INTO @RFTXNAME; END END TRY BEGIN CATCH PRINT error_message() END CATCH CLOSE retail_ftx; DEALLOCATE retail_ftx; 


-- End Refresh Retail FullText Catalogs


ALTER DATABASE [<YOUR AX DB NAME>] SET CHANGE_TRACKING = ON (CHANGE_RETENTION = 6 DAYS, AUTO_CLEANUP = ON) GO


5. Stop following services

  • Management Reporter 2012 Process Service
  • Microsoft Dynamics 365 Unified Operations: Batch Management Service
  • World Wide Web Publishing Service


6. Rename DB


  • AxDB to AxDB_Orig
  • AxDB_DDMMYYYY (New Restored DB) to AxDB


Use Master run the scripts


GO 

ALTER DATABASE AxDB SET SINGLE_USER WITH ROLLBACK IMMEDIATE

GO

ALTER DATABASE AxDB MODIFY NAME = AxDB_orig ;

GO 

ALTER DATABASE AxDB_orig SET MULTI_USER

GO



GO 

ALTER DATABASE <Restore DB name> SET SINGLE_USER WITH ROLLBACK IMMEDIATE

GO

ALTER DATABASE <Restore DB name> MODIFY NAME = AxDB ;

GO 

ALTER DATABASE AxDB SET MULTI_USER

GO


7. Start the following services:


  • Management Reporter 2012 Process Service
  • Microsoft Dynamics 365 Unified Operations: Batch Management Service
  • World Wide Web Publishing Service


Build Model and Sync Database


Open the development environment URL and check once 

Comments

Popular posts from this blog

How to customize electronic reporting in D365

Build HTML and send email in D365 FO with X++

Batch parallelism or multithreading in Dynamics 365 for Finance and Operations

How to Enable/Disable a Form Button with X++

How to create and run the Runbase batch class in D365

How to create and run the Runbase class in D365

Difference between InMemory and TempDB tables in D365 F&O

Customize the standard excel template in D365FO

How to create and run a batch class that extends RunBaseBatch in D365