Can SQL 2019 appear as SQL 2008 R2?

  • There's a manager where I work, who has a nasty habit of springing something upon you, with the expectation that you've finished the task that she hasn't told you about. She did this to me yesterday and I had to tell her that no, I didn't have it gone because I didn't know what she was talking about, and this was the first time I'd even heard of it.

    So, here's the scenario that's been suddenly thrust upon me. We've got a very important third-party application, used by hundreds of people around the state. This application uses SQL Server 2008 R2. I think the vendor has dependencies upon SQL 2008 R2. What the manager wants to do is have her people migrate the SQL 2008 R2 database, currently on-prem, into an Azure VM.

    So, here is the primary question. I presume they'll be using SQL Server 2019 or 2022 in the VM. Can SQL 2019/2022 appear as SQL 2008 R2? I think the proper term is "Compatibility", but I don't know. I've never done it before. The important thing is it must work with the ASP.NET web app and all of the SSIS packages the vendor has written for it.

    Secondarily, I don't know why this manager and her people want to create a VM in Azure to migrate the on-prem database to. I thought that VMs were more expensive to run with SQL Server instances in them, than using Azure SQL Database. About 4 years ago I migrated a smaller SQL Server database to Azure SQL. It was work and I had to post lots of questions in these forums in order to get the job done, but I think it's easier to manage once it's in an Azure SQL database, so I reasoned that in the long run that would be best. Is it cheaper to run an instance of Azure SQL Database, rather than having an instance of SQL Server in an Azure VM? And can an Azure SQL Database have its compatibility mode set to SQL Server 2008 R2?

    Kindest Regards, Rod Connect with me on LinkedIn.

  • My thought is that, whichever approach you'll take, you are now into the regression testing season, good luck!

    😎

    If you can make 2019/2022 appear as 2008 you should seriously consider getting into antique trading 😉

  • SQL 2019 can run a compatibility mode at the database level back to sql 2008, but Eirikur is right, you will probably still have to tweak some things to make everything work. Will take some thorough testing.

    • This reply was modified 2 years, 1 month ago by  Jeff Fant.
  • Hopefully there are no non-ansi outer joins in the app code, as setting the compatibility mode doesn't make discontinued features work again.

    Do you know how the ssis packages are expected to be migrated to the new server?

  • Thank you everyone, for your great feedback.

    Eirikur and Fantom75, we'll be doing testing. And perhaps some upgrading. I believe the production system is running on SQL 2016 (not exactly sure and I'm responding to this from my personal PC not the work laptop, so I can't check). Anyway, maybe the vendor will migrate the test system to a newer version of SQL Server. Here's hoping.

    Ed B, I can't say what the app code is like. The vendor never gave us the code, to either the database or the application. I've been supporting this application for 7+ years. Originally, we had access to all the code. When the latest upgrade happened, I looked at the ASP.NET code. I was surprised to see that all the pages had only one div within the body tag. The div has a name and Id, but that's all. So, clearly the vendor's C# code (which we don't have) injects whatever HTML into the div as each page is launched. The vendor wants to keep their IP as close to the chest as they can get it. I hope you are right, is the best I can say.

    I don't know how they intend to migrate the SSIS packages. This is where my being a developer and not a DBA shows itself. How important is the method by which they'll migrate the SSIS packages?

    Kindest Regards, Rod Connect with me on LinkedIn.

  • If the production version of the app is running on SQL 2016, that's a good sign!  The dev system can prob go to SQL 2019 without too much trouble. Depends on what other custom code you have surrounding the dev system. But a good sign for the core of the application, 'fer sure.

     

Viewing 6 posts - 1 through 5 (of 5 total)

You must be logged in to reply to this topic. Login to reply