NAV in Azure SQL

Hello again!

We have been busy installing new customers to Azure, and I'd like to write a short blog jut to remember what one has to do before publishing.

Good instructions how to publish database to Azure SQL you can find from this link:

However, msdn articles sometimes miss information, and here is the things you have to remember to make it work easier.

  • If you don't have a SSL certificate, forget it. Certificate is the first thing to get. And it has to have both client and server sides in it! I strongly suggest using wildcard certificate to make things easier.
  • Prepare SQL database for publishing in Azure SQL
    • Remove all stored procedures, they are not supported by Azure SQL
    • Remove all AD users, they are not supported. SQL users are inserted, but they have no password, so remove all unnessessary SQL users as well
    • Make sure you store license to database before publishing with SSMS.exe (instructions for publishing here). If you forget this, you have to start over..
  • Prepare NAV Server
    • Enable NAV Server to use SQL login (as in MSDN article), and add correct rights to DB
    • Remember to add endpoints to Azure VM hosting NAV Server. And firewall holes as well, both to VM and SQL!
    • Remember to put Azure VM that hosts NAV service and Azure SQL in same region, for example North/North. Never put in different regions, that kills performance
  • Consider applying SSL encryption between VM and Azure SQL (instructions here)
  • If you have two NAV servers and load balancing, see instructions from here
    • And remember that with load balancing you have to import/export the SQL keys to enable two nav services against same SQL database with SQL login. Commands to handle import/export attached to txt file

That's about it! I will add information to this blog as I encounter it.


Comment List
  • Using the import/export keys is really cumbersome, and I have stopped using them until they become somewhat usable level.

    Now I just create own SQL user account to every NAV service that connects to Azure SQL, and the problems with the keyfiles and SQL matching keys are over.

    For example if you have a NAV service called NAV2017WS, just create a SQL user for example as SRV_NAV2017WS, and give it appropiate user rights to correct database.

    This is way easier than keep up with the keyfiles.

    --BR, urpok