SQL SERVER 2012 TO 2017 data mirror

Shri 21 Reputation points
2020-11-13T23:34:38.503+00:00

Hi Expert,

How will data mirror SQL Server Application from one server to another . How to check which server machine depended on this server and how will move it from sql server 2012 to sql server 2017 with all dependency, jobs, agents etc together

os windows server 2008 to win server 2016

Shree

SQL Server
SQL Server
A family of Microsoft relational database management and analysis systems for e-commerce, line-of-business, and data warehousing solutions.
13,801 questions
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.
532 questions
{count} votes

Accepted answer
  1. Jeffrey Williams 1,891 Reputation points
    2020-11-14T17:18:03.73+00:00

    You will not be able to setup 'mirroring' in your current environment. See this document: https://learn.microsoft.com/en-us/sql/sql-server/failover-clusters/windows/upgrade-sql-server-failover-cluster-instance-2008-2012?view=sql-server-ver15

    To be able to setup mirroring (availability group) you need to have a cluster and none of the scenarios allow for moving from 2008. This document shows how to perform a rolling upgrade: https://learn.microsoft.com/en-us/windows-server/failover-clustering/cluster-operating-system-rolling-upgrade

    This also shows what can/cannot be done: https://sqlha.com/2019/08/15/ags-and-wsfc-os-rolling-upgrades-what-works-and-what-doesnt/

    Basically, this leaves you with a backup/restore option as the best and safest route to upgrade. You can reduce the amount of downtime using the following strategy:

    1. Backup database on old system
    2. Restore database to new system with norecovery (can be done several hours before cutover)
    3. Differential backup on old system about 1 hour before cutover
    4. Restore differential backup to new system with norecovery
    5. Restore transaction log backups from old system to new system from differential backup forward
    6. Perform tail-log backup on old system (will take database offline on old system - if not, manually take database offline)
    7. Restore final transaction log to new system
    8. Restore database with recovery

    The downtime will be minimal - but you still need to have that downtime. All systems/applications connecting to the old system will need to be updated to connect to the new system. You could shut down the old system and update DNS so the old name now points to the new IP address - or you can setup client aliases - or make changes to the hosts file on each device...

    Performing a backup/restore will not lose any data...unless you allow the applications to continue filing data into the old system. This is why you need to take the database offline...it will prevent any additional data from being filed into that database during the migration.

    Even if you somehow get mirroring working...the applications connections must be updated to use the new system or the listener, which will require a downtime for the application to insure all connections have been moved.

    1 person found this answer helpful.
    0 comments No comments

9 additional answers

Sort by: Most helpful
  1. Shri 21 Reputation points
    2020-11-15T12:25:24.73+00:00

    Hi Expert,

    31 databases are in synchronized status, 1 database is in restoring status, and 7 with no brackets and cluster service is running in services. Msc

    Shree


  2. Shri 21 Reputation points
    2020-11-15T17:10:40.883+00:00

    Hi Expert,
    One thing is database server is available on the windows Server 2016.only the things is database, jobs, link server linkbetc needs to migrate and then windows Server 2008 (old server) will be decommissioned

    Shree

    0 comments No comments

  3. Jeffrey Williams 1,891 Reputation points
    2020-11-15T17:20:25.12+00:00

    Databases: Backup/Restore as I outlined above
    Jobs: Script out jobs on old system (or use dbatools.io) - execute script on new system (note: don't transfer all jobs - some are specific to a system)
    Logins: Script out logins - use sp_help_revlogin or custom script or dbatools.io
    Linked Servers: script out linked server, execute script on new server - update login information if needed

    Old system appears to have an AG set up...for that you will need another server and you will need to setup and create the AG on the new system(s).

    To be honest...you really should consider hiring someone to do this for you - and as part of that process the consultant can help you understand the environment to be able to support it.


  4. Shri 21 Reputation points
    2020-11-15T17:34:29.787+00:00

    Hi Expert,

    Team is available to execute it but i have to show them a way do it. and client is saying about data mirror
    so i should have valid reason and case study why data mirror is not feasible.

    and then will requires logs for pull out jobs and dependency, tables from various databases

    then i will suggest this steps,

    Backup database on old system

    Restore database to new system with norecovery (can be done several hours before cutover)

    Differential backup on old system about 1 hour before cutover

    Restore differential backup to new system with norecovery

    Restore transaction log backups from old system to new system from differential backup forward

    Perform tail-log backup on old system (will take database offline on old system - if not, manually take database offline)

    Restore final transaction log to new system

    • your login scripts

    Make sense ???

    Shree

    0 comments No comments

Your answer

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