migration sql name instance to always on high availability

slaviša radisavljević 1 Reputation point
2021-08-11T22:59:50.47+00:00

HI,

My task is to migrate the named instance of SKL 2014 to Always On High Availability SQL 2019 whose nodes are in 2 different subnets. And that in itself is no problem that there is no additional condition that the connection string must be retained as before Server_Name\Instance_Name.
If there was no instance, SKL servers would be set up on each of the nodes, a cluster service would be set up, an availability group would be created, and then a lister would either be named as the old server name or the name would be defined, and then a DNS alias would be created (C_Name ) for the name of the old one pointing to the listener.
But since there is an instance, it is important to keep the name of the instance in the name and character . This is where the problem arises when the name needs to contain the character \ in DNS, which is not possible.
Is there a solution to my problem or is the request unrealistic?

Best Regards,

SQL Server Migration Assistant
SQL Server Migration Assistant
A Microsoft tool designed to automate database migration to SQL Server from Access, DB2, MySQL, Oracle, and SAP ASE.
0 comments No comments
{count} votes

2 answers

Sort by: Most helpful
  1. CathyJi-MSFT 22,406 Reputation points Microsoft External Staff
    2021-08-12T02:50:40.287+00:00

    Hi @slaviša radisavljević ,

    Migrate SQL server 2014 to SQL 2019 and the application should not affect due to that change? You want to still using the old connection string for new SQL server connection. If so, suggest you creating an Alias for SQL server 2019 instance as below screenshot, then you did not change the connection string when using new SQL server instance. If I misunderstood your issue, please let me know.

    122505-screenshot-2021-08-12-104315.jpg

    Please refer to the blog Overview of SQL Server Aliases.

    By the way, each availability group listener requires a DNS host name that is unique in the domain and in NetBIOS. The DNS name is a string value. This name can contain only alphanumeric characters, dashes/hyphens (-), and underscores (_), in any order. DNS host names are case insensitive.

    Refer to MS document Requirements for the DNS Name of an Availability Group Listener.


    If the response is helpful, please click "Accept Answer" and upvote it, as this could help other community members looking for similar thread.

    0 comments No comments

  2. slaviša radisavljević 1 Reputation point
    2021-08-12T13:22:32.673+00:00

    Hi Cathyji-msft,

    Unfortunately for both of them, that is not the solution to my problem. This with an alias would be a solution if there was no condition not to change the connection string. and when there are multiple instances of SQL, so SQL and DNS aliases are created. For this to work SQL and DNS aliases must be the same, that is the rule.
    It is possible to create an alias from your image in SQL Configuration Manager, but it is impossible to create such a DNS alias, because it is not allowed, as you wrote below, to contain the \ character, and without a DNS alias this is unusable for that same SQL server. trust me i tried.
    122787-dns-error.jpg
    Thank you so much for your time.

    Best Regards,

    Slaviša

    0 comments No comments

Your answer

Answers can be marked as 'Accepted' by the question author and 'Recommended' by moderators, which helps users know the answer solved the author's problem.