Discussion:
SQL - jak naprawić bazę?
(Wiadomość utworzona zbyt dawno temu. Odpowiedź niemożliwa.)
Robert-SoftMAR
2005-05-22 21:17:21 UTC
Permalink
Podczas próby podłączenia bazy poleceniem: attach file mam komunikat:
error 823 I/O error (bad page ID) detected during read at offset 0x itd...
Czy i jak można naprawić tą bazę?

Robert Lis
dobrzak
2005-05-23 06:42:30 UTC
Permalink
Post by Robert-SoftMAR
error 823 I/O error (bad page ID) detected during read at offset 0x itd...
Czy i jak można naprawić tą bazę?
Microsoft zaleca zainstalowac najnowszy service pack, zainstalowales ?
dobrzak
2005-05-23 06:45:42 UTC
Permalink
Post by dobrzak
Microsoft zaleca zainstalowac najnowszy service pack, zainstalowales ?
choc to wyglada na blad sprzetowy, moze przejzyj event viewer, zapusc
CHKDSK...
Robert-SoftMAR
2005-05-22 21:52:51 UTC
Permalink
Post by dobrzak
choc to wyglada na blad sprzetowy, moze przejzyj event viewer, zapusc
CHKDSK...
Problem w tym, że baz nie działa na innym komputerze, a ja przeniosłem ją do
innego XP Pro z SpII. Chkdsk raczej naprawia błędy dyskowe niż baz danych.
Robert Lis
Post by dobrzak
Post by dobrzak
Microsoft zaleca zainstalowac najnowszy service pack, zainstalowales ?
choc to wyglada na blad sprzetowy, moze przejzyj event viewer, zapusc
CHKDSK...
Ireneusz Pełka
2005-05-23 07:45:26 UTC
Permalink
Użytkownik "Robert-SoftMAR" napisał
Post by Robert-SoftMAR
Problem w tym, że baz nie działa na innym komputerze, a ja przeniosłem ją
do innego XP Pro z SpII.
Czyli jednak istnieje serwer, na ktorym ta baza jest podlaczona? Rozumiem,
ze baza jest w trybie suspect? Jesli tak, przestaw baze w tryb emergency i
zastosuj polecenia dbcc, o ktorych pisali na "swiatowej" ;)
--
Pozdrawiam
Irek
Robert-SoftMAR
2005-05-23 09:34:50 UTC
Permalink
Post by Ireneusz Pełka
Czyli jednak istnieje serwer, na ktorym ta baza jest podlaczona?
Serwer istnieje i baza była podłączona lecz komputer sie zawiesił i po
restarcie baza już podłączona nie była. Przy próbie jej podłączania system
sygnalizował, że ktoś inny tej bazy używa. Po przeniesieniu na inny komputer
podczas podłączania pokazuje się przytoczony już błąd.
Robert Lis
Post by Ireneusz Pełka
Użytkownik "Robert-SoftMAR" napisał
Post by Robert-SoftMAR
Problem w tym, że baz nie działa na innym komputerze, a ja przeniosłem ją
do innego XP Pro z SpII.
Czyli jednak istnieje serwer, na ktorym ta baza jest podlaczona? Rozumiem,
ze baza jest w trybie suspect? Jesli tak, przestaw baze w tryb emergency i
zastosuj polecenia dbcc, o ktorych pisali na "swiatowej" ;)
--
Pozdrawiam
Irek
Ireneusz Pełka
2005-05-23 13:03:08 UTC
Permalink
Użytkownik "Robert-SoftMAR" napisał
Post by Robert-SoftMAR
Serwer istnieje i baza była podłączona lecz komputer sie zawiesił i po
restarcie baza już podłączona nie była.
Podlaczona pewnie byla (jest), tylko nie mozna bylo sie do niej podlaczyc -
chyba o to Ci chodzilo? :) Jesli tak, to umowmy sie, ze nie mogles sie
polaczyc do bazy ;)
Post by Robert-SoftMAR
Przy próbie jej podłączania system sygnalizował, że ktoś inny tej bazy
używa.
A w jaki sposob probowales ja podlaczac?
Post by Robert-SoftMAR
Po przeniesieniu na inny komputer podczas podłączania pokazuje się
przytoczony już błąd.
Bo faktycznie nie mozliwe jest podlaczenie do serwera uszkodzonej bazy.
Mozna natomiast serwer oszukac i podmienic pliki dobrej bazy ta uszkodzona.
Ale wtedy otrzymasz stan identyczny jak na serwerze pierwotnym - stan
suspect. Sprawdz w EM, taka informacja powinna sie pojawic na liscie baz
obok Twojej bazy (calosc na szaro). Aby moc sie polaczyc do bazy, nalezy
wiec ustawic ja w tryb emergency i albo probowac ja naprawiac albo wyciagac
dane (np. wg przepisu podanego w linku przez normunda).
--
Pozdrawiam
Irek
Robert-SoftMAR
2005-05-23 21:41:20 UTC
Permalink
Post by Ireneusz Pełka
Post by Robert-SoftMAR
umowmy sie, ze nie mogles sie polaczyc do bazy...
Już się podłączyłem w trybie suspect. Zastosowałem w tym celu procedurę
normunda
Post by Ireneusz Pełka
Post by Robert-SoftMAR
nalezy wiec ustawic ja w tryb emergency ...
Próbowałem poprzez QA komendą:
sp_resetstatus 'gg_system' i otrzymuję komunikat:
Prior to updating sysdatabases entry for database 'gg_system', mode = 0 and
status = 1077936409 (status suspect_bit = 256).
For row in sysdatabases for database 'gg_system', the status bit 256 was
forced off and mode was forced to 0.
Warning: You must recover this database prior to access.
I nadal baza jest w trybie suspect. Jak inaczej niż opisuje to normund
przestawić bazę w tryb emergency?
Post by Ireneusz Pełka
Post by Robert-SoftMAR
albo wyciagac dane (np. wg przepisu podanego w linku przez normunda).
Na tyle na ile znam angielski to mam użyć komendy:
Sp_configure 'allow updates', 1
Reconfigure with override ?
Robert Lis
Post by Ireneusz Pełka
Użytkownik "Robert-SoftMAR" napisał
Post by Robert-SoftMAR
Serwer istnieje i baza była podłączona lecz komputer sie zawiesił i po
restarcie baza już podłączona nie była.
Podlaczona pewnie byla (jest), tylko nie mozna bylo sie do niej
podlaczyc - chyba o to Ci chodzilo? :) Jesli tak, to umowmy sie, ze nie
mogles sie polaczyc do bazy ;)
Post by Robert-SoftMAR
Przy próbie jej podłączania system sygnalizował, że ktoś inny tej bazy
używa.
A w jaki sposob probowales ja podlaczac?
Post by Robert-SoftMAR
Po przeniesieniu na inny komputer podczas podłączania pokazuje się
przytoczony już błąd.
Bo faktycznie nie mozliwe jest podlaczenie do serwera uszkodzonej bazy.
Mozna natomiast serwer oszukac i podmienic pliki dobrej bazy ta
uszkodzona. Ale wtedy otrzymasz stan identyczny jak na serwerze
pierwotnym - stan suspect. Sprawdz w EM, taka informacja powinna sie
pojawic na liscie baz obok Twojej bazy (calosc na szaro). Aby moc sie
polaczyc do bazy, nalezy wiec ustawic ja w tryb emergency i albo probowac
ja naprawiac albo wyciagac dane (np. wg przepisu podanego w linku przez
normunda).
--
Pozdrawiam
Irek
Ireneusz Pełka
2005-05-24 06:59:19 UTC
Permalink
Uruchom ponizszy kod w QA (dla pewnosci krok po kroku)

/* sql */
use master
go

-- zezwolenie na zmiany w tabelach systemowych
exec sp_configure 'allow updates', 1
reconfigure with override
go

-- tryb emergency
update sysdatabases set status = 32768 where name = 'gg_system'
go

use gg_system
go
/* sql */

Jesli wszytko poszlo dobrze, to jestes polaczony do bazy gg_system. I jak
pisalem wczesniej, mozesz albo probowac przenosic dane albo naprawiac baze
poleceniami dbcc. Jesli uda Ci sie naprawic baze, musisz ja przestawic w
normalny tryb pracy. Ponizszy kod ustawi baze w tryb recovery simple oraz
automatyczne tworzenie i update statystyk dla bazy.

/* sql */
update master..sysdatabases set status = 8 where name = 'gg_system'
go

-- wylaczenie zmian w tabelach systemowych
exec sp_configure 'allow updates', 0
reconfigure with override
/* sql */


Po wszytkim zrestartuj serwer sql (sama usluge).
Powodzenia.
--
Pozdrawiam
Irek
Sławomir Szyszło
2005-05-22 21:48:34 UTC
Permalink
Post by Robert-SoftMAR
error 823 I/O error (bad page ID) detected during read at offset 0x itd...
Czy i jak można naprawić tą bazę?
Nie ma szans. Wróżki na urlopie.
--
Sławomir Szyszło mailto:***@poczta.onet.pl
Primus inter FAQires & Grand Inquisitor no.0 of pl.comp.bazy-danych
FAQ pl.comp.bazy-danych http://www.dbf.pl/faq/
Archiwum http://groups.google.com/groups?group=pl.comp.bazy-danych
Robert-SoftMAR
2005-05-23 06:44:35 UTC
Permalink
Post by Sławomir Szyszło
Nie ma szans. Wróżki na urlopie.
Próbowałem na listę ''światową'' ms sql ale też mam odpowiedzi typu: DBCC
CHECKDB, które nie działąją na niepodłączonej bazie. Czy kiedyś wróżki wrócą
z urlopu?
Robert Lis
Post by Sławomir Szyszło
Dnia Sun, 22 May 2005 23:17:21 +0200, "Robert-SoftMAR"
Post by Robert-SoftMAR
error 823 I/O error (bad page ID) detected during read at offset 0x itd...
Czy i jak można naprawić tą bazę?
Nie ma szans. Wróżki na urlopie.
--
Primus inter FAQires & Grand Inquisitor no.0 of pl.comp.bazy-danych
FAQ pl.comp.bazy-danych http://www.dbf.pl/faq/
Archiwum http://groups.google.com/groups?group=pl.comp.bazy-danych
Sławomir Szyszło
2005-05-23 16:18:01 UTC
Permalink
Post by Robert-SoftMAR
Próbowałem na listę ''światową'' ms sql ale też mam odpowiedzi typu: DBCC
CHECKDB, które nie działąją na niepodłączonej bazie. Czy kiedyś wróżki wrócą
z urlopu?
Nie napisałeś w temacie (ani w treści) jaka to baza, co oznacza, że nie znasz
FAQ tej grupy.
--
Sławomir Szyszło mailto:***@poczta.onet.pl
Primus inter FAQires & Grand Inquisitor no.0 of pl.comp.bazy-danych
FAQ pl.comp.bazy-danych http://www.dbf.pl/faq/
Archiwum http://groups.google.com/groups?group=pl.comp.bazy-danych
Robert-SoftMAR
2005-05-23 21:42:55 UTC
Permalink
Post by Sławomir Szyszło
Nie napisałeś w temacie (ani w treści) jaka to baza, co oznacza, że nie
znasz FAQ tej grupy...
Czy ma znaczenie, że jest to baza od programu magazynowego? Czy nie
wystarczy, że chodzi o plik *.mdf?
Robert Lis
Post by Sławomir Szyszło
Dnia Mon, 23 May 2005 08:44:35 +0200, "Robert-SoftMAR"
Post by Robert-SoftMAR
Próbowałem na listę ''światową'' ms sql ale też mam odpowiedzi typu: DBCC
CHECKDB, które nie działąją na niepodłączonej bazie. Czy kiedyś wróżki wrócą
z urlopu?
Nie napisałeś w temacie (ani w treści) jaka to baza, co oznacza, że nie znasz
FAQ tej grupy.
--
Primus inter FAQires & Grand Inquisitor no.0 of pl.comp.bazy-danych
FAQ pl.comp.bazy-danych http://www.dbf.pl/faq/
Archiwum http://groups.google.com/groups?group=pl.comp.bazy-danych
Artur Muszynski
2005-05-23 22:34:37 UTC
Permalink
Post by Robert-SoftMAR
Czy ma znaczenie, że jest to baza od programu magazynowego? Czy nie
wystarczy, że chodzi o plik *.mdf?
Robert Lis
LOL :-) Czy tak trudno napisać, że chodzi ci o SQL Server?
normund
2005-05-23 09:58:25 UTC
Permalink
Post by Robert-SoftMAR
error 823 I/O error (bad page ID) detected during read at offset 0x itd...
Czy i jak można naprawić tą bazę?
http://www.nigelrivett.net/RecoverCorruptDatabase.html
Loading...