As you probably know Microsoft Dynamics AX 2012 R2/R3 does not have a redeployment utility (like the Dynamics CRM deployment manager) meaning that if you want to move an AX Deployment from one domain to another – you’ll have to get your hands a little dirty.
Some important notes before we start :
- You can use these steps also in AX 2012 – Just ignore the Modelstore database.
- You can also use these steps to move a deployment in the same domain – ignore step 4.
- You need to make sure that the AX installation version in the new server matches the installation
- on the previous server.
- I’m assuming that you have the basic required knowledge in SQL Server, your Windows Serverenvironments and of course some AX 2012 architecture understanding to do these steps
Let’s go:
- Open the SQL management studio and Backup your AX Databases [BusinessData Database + Modelstore Database]
- for example: AXProd + AXProd_model - Stop the AX Service on the new server and restore the databases in the new SQL server – You can restore them with different names just remember that they have to match
– for example: AXProdNEW + AXProdNEW_model. - In the SQL management studio run the following queries on the BusinessData Database (AXProdNEW):
DELETE FROM SYSSERVERCONFIG;
DELETE FROM SYSSERVERCONFIG;
DELETE FROM BATCHSERVERCONFIG;
- This will delete the batch server properties of the previous server – You should do this if the redeployment is in the same domain because the old server might be reachable by the new one and may use it as a batch server.
DELETE FROM SYSEMAILPARAMETERS;
- This will delete the SMTP server parameters for sending emails
- This will delete the AOSID & SERVERID of the previous installation and will repopulate the tables with the new server name when the AX service on the new server is started.
Also consider running:
DELETE FROM SRSSERVERS;
- This will clear the Reporting Services properties form – you will need to reconfigure this later if you want to redeploy the reports.
DELETE FROM BATCHSERVERGROUP - Now you need to configure your user in the AX Database in the new domain (You can skip this step if you re-deployed AX in the same domain).
Open CMD with “Run as admin” and type:
wmic useraccount where (name='your_windows_username' and domain='your_domain') get name,sid
Example: wmic useraccount where (name='administrator' and domain='contoso') get name,sid
Copy the SID to notepad.
In the SQL management studio run the following query on the BusinessData Database (AXProdNEW):
UPDATE USERINFO
SET SID='your_sid', NETWORKALIAS='your_windows_username', NETWORKDOMAIN='your_domain', NAME='your_full_name'
WHERE ID = 'Admin';
Example:
UPDATE USERINFO
SET SID='S-1-5-21-916693446-2822637979-541647007-1001', NETWORKALIAS='administrator', NETWORKDOMAIN='contoso', NAME='John TheAdmin'
WHERE ID = 'Admin';
- This will replace the AX Admin user to your user – you can modify this query to replace other users as well, or you can later add new users from the AX GUI. - Grant the AX AOS account permissions over the databases as follows:
AXProdNEW:
db_datareader
db_datawriter
db_ddladmin
public
AXProdNEW_model:
public
You can identify the AOS account by going to the services on the application server (start-> services.msc) and check the Log On tab:
If you are using NETWORK SERVICES as the service account you will need to grant permissions to the machine$ account – Use the following query to do it.
CREATE LOGIN [Domain\axservername$] FROM WINDOWS - All done! Go to services on the application server and start the Microsoft Dynamics AX Service – it might take a few minutes for it to start. Once it’s running – you can start the application.
If you have any issues starting the service check the server’s event log for clues, and if you have any questions – feel free to post them here and i will do my best to help you out.
- You should synchronize your Database to make sure everything is working properly.
- If you want to deploy your reports – you need to fill the Report Servers form and then run the following command from the Dynamics AX 2012 management Shell:
Publish-AXReport –ReportName *
댓글 없음:
댓글 쓰기