2012-04-10 10 views
16

Mam kopię zapasową z bazy danych w SQL Server 2008 R2. Gdy chcę przywrócić kopię zapasową do programu SQL Server, pojawia się następujący błąd: "Błąd: Określona rzutowanie jest niepoprawna. (SqlManagerUI)" Jak rozwiązać ten problem? Dzięki.Błąd: Określony rzut jest niepoprawny. (SqlManagerUI)

+0

WITH MOVE ' 'YourMDFLogicalName' do 'D: \',' DataYourMDFFile.mdf -adjust ścieżka MOVE ' 'YourLDFLogicalName' do„D: \ DataYourLDFFile.ldf'' MDF LDF –

Odpowiedz

12

Istnieje kilka funnies przywracających stare bazy danych do SQL 2008 przez faceta; czy próbowałeś robić to przez TSQL?

+2

co jest YourLDFLogicalName? – coure2011

+0

Nazwa pliku w SQL Server. W Management STudio; otwórz zapytanie; użyj bazy danych, którą pracujesz przy tworzeniu kopii zapasowej uruchom wybierz Nazwa z plików sys w kolumnie Nazwa. – u07ch

+1

Dla noobów takich jak ja. Komentarz u07ch jest poprawny, ale zawiera literówkę w zapytaniu: wybierz nazwę z sysfiles –

17

Tak by się również stało, gdy próbujesz przywrócić nowszą wersję kopii zapasowej w starszej bazie danych SQL. Na przykład przy próbie odtworzenia kopii zapasowej bazy danych utworzonej w 2012 roku z kompatybilnością 110 i próbujesz przywrócić ją w 2008 R2.

+1

Czy masz do tego rozwiązanie? –

4

Czasami dzieje się tak ze względu na zmianę wersji, taką jak sklep db 2012 na 2008 r., Więc jak to sprawdzić?

RESTORE VERIFYONLY FROM DISK = N'd:\yourbackup.bak' 

jeśli daje błąd jak:

Msg 3241, Level 16, State 13, linia 2 Rodziny mediów na urządzeniu 'd: \ alibaba.bak' jest nieprawidłowo uformowane. Program SQL Server nie może przetworzyć tej rodziny multimediów. Msg 3013, poziom 16, Stan 1, wiersz 2 BAZA WERYFIKACYJNA przestaje działać nienormalnie.

Sprawdź to dalej:

RESTORE HEADERONLY FROM DISK = N'd:\yourbackup.bak' 

BackupName jest "* INCOMPLETE *" stanowisko jest "1", Pozostałe pola są "NULL".

Oznacza, że ​​kopia zapasowa jest uszkodzona lub pochodzi z nowszej wersji.

0

miałem podobny błąd "Określone rzutowanie jest nieprawidłowe" przywracania danych z SQL Server 2012 do SQL Server 2008 R2

pierwsze mam MDF i LDF nazwami:

RESTORE FILELISTONLY 
FROM DISK = N'C:\Users\dell laptop\DotNetSandBox\DBBackups\Davincis3.bak' 
GO 

Second I przywrócony z ruch używając tych nazw powrócił:

RESTORE DATABASE Davincis3 
FROM DISK = 'C:\Users\dell laptop\DotNetSandBox\DBBackups\Davincis3.bak' 
WITH 
    MOVE 'JQueryExampleDb' TO 'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\Davincis3.mdf', 
    MOVE 'JQueryExampleDB_log' TO 'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\Davincis3.ldf', 
REPLACE 
GO 

nie mam pojęcia, o nazwie „JQueryExampleDb”, ale ten pracował dla mnie.

Mimo to kopie zapasowe (i bazy danych) nie są wstecznie zgodne ze starszymi wersjami.

Powiązane problemy