Richard Lloyd
asked on
How do I restore an msdb.bak from SQL Server 2008 r2 to SQL Server 2012
Hi
I have recently had to upgrade my server following a disk failure.
The new server has arrived with SQL Server 2012, but my system database backups are from SQL Server 2008 r2, so I cannot restore them! Nice one Microsoft!
The error message is:
Msg 3168, Level 16, State 1, Line 1
The backup of the system database on the device d:\MSDB3.Bak cannot be restored because it was created by a different version of the server (10.00.4067) than this server (11.00.5058).
Msg 3013, Level 16, State 1, Line 1
RESTORE DATABASE is terminating abnormally.
Short of finding an old version of SQL Server 2008 r2, restoring it on that and then scripting the jobs etc out, is there a better way?
Surely Microsoft must have a work around, but I can't find it anywhere!
Thanks for you help!!!
I have recently had to upgrade my server following a disk failure.
The new server has arrived with SQL Server 2012, but my system database backups are from SQL Server 2008 r2, so I cannot restore them! Nice one Microsoft!
The error message is:
Msg 3168, Level 16, State 1, Line 1
The backup of the system database on the device d:\MSDB3.Bak cannot be restored because it was created by a different version of the server (10.00.4067) than this server (11.00.5058).
Msg 3013, Level 16, State 1, Line 1
RESTORE DATABASE is terminating abnormally.
Short of finding an old version of SQL Server 2008 r2, restoring it on that and then scripting the jobs etc out, is there a better way?
Surely Microsoft must have a work around, but I can't find it anywhere!
Thanks for you help!!!
ASKER
Hi Vitor,
Thanks for your comments,
Would this mean that I have to have a working version of SQL Server 2008 r2 installed?
I only have 2012 on my replacement server and I do not want to add any other editions!
Richard
Thanks for your comments,
Would this mean that I have to have a working version of SQL Server 2008 r2 installed?
I only have 2012 on my replacement server and I do not want to add any other editions!
Richard
Truly, I can't understand what you are achieving here. I was only guessing if you want to move the jobs from servers, so I gave two solutions how to do it.
If you can explain me better what you want/need to do I will be happy to help you.
If you can explain me better what you want/need to do I will be happy to help you.
ASKER
In a nutshell...
I need to restore a SQL 2008 r2 MSDB.bak database on to SQL Server 2012, but Microsoft say:
"System databases can be restored only from backups that are created on the version of SQL Server that the server instance is currently running. For example, to restore a system database on a server instance that is running on SQL Server 20012, you must use a database backup that was created after the server instance was upgraded to SQL Server 2012."
So I am stuck!
Richard
I need to restore a SQL 2008 r2 MSDB.bak database on to SQL Server 2012, but Microsoft say:
"System databases can be restored only from backups that are created on the version of SQL Server that the server instance is currently running. For example, to restore a system database on a server instance that is running on SQL Server 20012, you must use a database backup that was created after the server instance was upgraded to SQL Server 2012."
So I am stuck!
Richard
Richard, that part I understood. My question is why you need to restore de MSDB from a MSSQL 2008R2 to a MSSQL 2012?
ASKER
I used to run my websites off a SQL 2008 server, but the disk failed so I purchased a new server. My replacement server has got SQL 2012. I need to restore the backups, including SQL AGENT Jobs on to the new server.
Ok. That confirmed my guess. You don't need to restore the MSDB to have your jobs back. Just follow what I said in my first comment. There's two ways to copy jobs from one server to another one.
If you have any doubts about copy the jobs, just post here what you need to go forward with this, ok?
If you have any doubts about copy the jobs, just post here what you need to go forward with this, ok?
ASKER
Sorry Vitor, still not sure how to get access to the jobs in the .bak file if I don't restore it first?
You need to restore it in a SQL Server 2008R2 instance and only after that you can get access to the jobs. The first step (restore) need to be done always.
ASKER
Bingo! I have not got a SQL 2008 server to restore it on!
You need to or you won't be able to restore the jobs.
Can't you install one and delete it after you export the jobs?
Can't you install one and delete it after you export the jobs?
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Sure isn't my fault. I didn't develop SQL Server. Just work with it.
Anyway, I gave you two workarounds. Aren't you going to apply at least one of them? It's better than recreate the jobs from scratch, right?
Anyway, I gave you two workarounds. Aren't you going to apply at least one of them? It's better than recreate the jobs from scratch, right?
ASKER
When I have reinstalled SQL Server 2008, I'll give it a go!
Thanks
Thanks
ASKER
Very helpful, but not able to resolve my problem in any better way than I already had in mind. Not Vitor's fault, just the short sightedness of Microsoft!
If what you want to achieve is to migrate jobs, then you have two options:
1. Create a SSIS package using the TransferJobTask
2. Script the jobs and run the script in the new SQL Server instance