jak rozpoznać uszkodzenie tabeli innodb?
<p>mam kilka tabel, które są podzielone na partycje i mają kilka indeksów na zreplikowanym slave. po skopiowaniu migawki (zweryfikowanej jako bezpieczna) do nowego urządzenia podrzędnego i aktualizacji mysqld z 5.1.42 do 5.5.15 i ponownym uruchomieniu replikacji, pojawia się awaria innodb z komunikatem o błędzie „nieprawidłowy wskaźnik ...”</p><p>te błędy wystąpiły na 2 serwerach z innym sprzętem i systemem operacyjnym. po bieganiu:</p><p><code>alter table .... coalesce partion n;</code></p><p>problem zniknął dla tego stołu.</p><p>moje pytanie ma jednak większy zakres i brzmi: „jak rozpoznać uszkodzenie tabeli innodb?” lub przeformułował „jak oceniasz zdrowie tabeli innodb?” czy <strong>„sprawdź tabelę”</strong> jest jedynym dostępnym narzędziem do identyfikowania problemów przed awarią?</p><p>nie jestem pewien, czy to ma znaczenie, ale wystąpiły awarie podczas uruchamiania: wersja: „5.5.15-55-log” gniazdo: port „/opt/mysql.sock”: 3306 serwer percona (gpl), wydanie rel21.0, wersja 158</p>
<p> <a href="https://dba.stackexchange.com/users/1268/morgan-tocker">morgan</a> daje wskazówkę w swoim komentarzu, że innodb stale sprawdza uszkodzone strony, wykonując sumy kontrolne na stronach, które czyta. jeśli innodb znajdzie niedopasowanie sumy kontrolnej, to zrobi to <strike>wypadek</strike> zatrzymaj serwer.</p><p>jeśli chcesz przyspieszyć ten proces (zamiast czekać, aż innodb przeczyta uszkodzoną stronę), możesz użyć <a href="http://dev.mysql.com/doc/refman/5.5/en/innochecksum.html"><code>innochecksum</code></a> :</p><blockquote> <p>ponieważ niedopasowania sumy kontrolnej spowodują, że innodb celowo zamknie działający serwer, może być preferowane użycie tego narzędzia zamiast czekania, aż serwer w trybie produkcyjnym napotka uszkodzone strony.</p> </blockquote><p>ciekawe zastrzeżenie:</p><blockquote> <p>innochecksum nie może być używany w plikach obszaru tabel, które serwer już otworzył. w przypadku takich plików należy użyć sprawdź tabelę, aby sprawdzić tabele w obszarze tabel.</p> </blockquote><p>tak, dla tabeli online <code>check table</code> jest prawdopodobnie narzędziem (lub jak wskazano <a href="https://dba.stackexchange.com/questions/6191/how-do-you-identify-innodb-table-corruption/6219#6219">w innej odpowiedzi</a> <code>mysqlcheck</code>, jeśli chcesz zrobić więcej niż jedną bazę danych na raz.)</p><p>jeśli możesz zamknąć bazę danych, możesz wymusić na niej sumy kontrolne, używając <code>innochecksum</code></p><p><strong> anegdota: </strong> w obszarze tabel innodb o wielkości 29 gb (z <code>innodb\_file\_per\_table=1</code>), ten skrypt zajął około 2 minut</p><pre class="lang-bsh prettyprint-override"><code>#!/bin/bash for i in $(ls /var/lib/mysql/*/*.ibd) do innochecksum -v $i done </code></pre><p>jako bonus jednak, ponieważ korzystasz z percony, zaimplementowali nową metodę dla <a href="http://www.percona.com/doc/percona-server/5.5/performance/innodb\_fast\_checksum.html?id=percona-server:features:innodb\_fast\_checksum">szybka suma kontrolna innodb</a> . nigdy go nie użyłem, ale może to przyspieszyć proces.</p>
tak. 
poprawiło się :wink: 
czy skanowanie mbam coś wykryło wcześniej? 
zrób skanowanie roguekiller, oczyść to co znajdzie, wstaw raport do wglądu. 

 
wykonaj, po restarcie, nowy skan frst i wstaw logi witaj serdecznie. błąd wyskakuje bo nie masz zaktualizowanego stylu. w mybb 1.8.16 zostało dodane zabezpieczenie przed podatnością csrf i wymagane jest dodanie ukrytego znacznika 'input' z kluczem.
 


 sprawdź poradnik "naprawa błędu niepoprawny kod autoryzacji" a w razie trudności zajrzyj do tematu "niepoprawny kod autoryzacji" mybb. moja siostra miała tak samo jak ty i okazało się, że ją hackowali .  
ale to też mogą być problemy z serwerem .. [nie można wykryć dysku podczas instalacji nowego systemu operacyjnego...](https://www.intel.pl/content/www/pl/pl/support/articles/000058724/memory-and-storage.html) to jest rozwiązanie , ale ja cię nie zabardzo rozumię. czy był czas że ci oba monitory działały poprawne gdy oba były podłaczone czy oba działały poprawnie osobno. ja niestety nie znam się wogłe na kartach amd bo ich nie lubię ale w nvidi jest coś takiego a jak jest nvidia i intel to wtedy jest w intelu “skaluj pełen ekr… Jest to dość szerokie, ale dam ci tak ogólną odpowiedź, jak tylko mogę.

**CTE ...**

* Są niezindeksowalne (ale mogą używać istniejących indeksów na obiektach, do których istnieją odwołania)
* Nie można mieć ograniczeń
* Są zasadniczo jednorazowe `VIEW` s
* Trwać tylko do momentu uruchomienia następnego zapytania
* Może być rekurencyjny
* Nie masz dedykowanych statystyk (polegaj na statystykach dotyczących podstawowych obiektów)

**#Temp Tables ...**

* Są prawdziwe zmaterializowane tabele, które istnieją w tempdb
* Może być indeksowany
* Może mieć ograniczenia
* Trwaj w życiu obecnego POŁĄCZENIA
* Może odwoływać się do innych zapytań lub podprocedur
* Masz dedykowane statystyki generowane przez silnik

Jeśli chodzi o użycie każdego z nich, mają bardzo różne przypadki użycia.Jeśli masz bardzo duży zestaw wyników lub musisz odwołać się do niego więcej niż raz, umieść go w tabeli `#temp` .Jeśli ma być rekurencyjny, jednorazowy lub po prostu dla uproszczenia logicznego, preferowany jest `CTE` .

Ponadto należy `CTE`**nigdy nie używaj do wykonania**.Prawie nigdy nie przyspieszysz przy użyciu CTE, ponieważ znowu jest to widok jednorazowy.Możesz zrobić z nimi kilka fajnych rzeczy, ale przyspieszenie zapytania nie jest jednym z nich. dziękuję za opis sytuacji. 
utworzę plik naprawczy/oczyszczający. 
frst zaznaczył lenovo app explorer, gdyż ma to związek ze sweetlabs. odinstaluj go. 
ogólnie, zalecam przejrzeć zainstalowane programy i usunąć nieużywane. 
masz sporo zaplanowanych zadań, a dotyczą one w większości lenovo, a część z… infekcja była, dlatego wysłałem plik do kontroli. 
[virustotal](https://www.virustotal.com/gui/file/2a2adf308ebea5b0cc4b8cff6c706c902965899751a40a3a8dd781b0b549148b/detection) 
wykonaj co następuje 

pobierz [eset online scanner](https://download.eset.com/com/eset/tools/online_scanner/latest/esetonlinescanner_plk.exe)

uruchom z uprawnieniami administratora
naciśnij skanowanie komputera
naciśnij pełne skanowanie
wybierz włącz wykrywanie …
rozpocznij skanowanie
gdy wykryje jakiekolwiek zagrożenia zapis… logi są poprawne.

skanowanie też

nie mam już nic do dodania :wink:

jeśli system odzyskał sprawność, zaznacz post, który rozwiązał twój problem. wystarczy jeden :wink:

[obraz]

w razie kolejnych kłopotów z komputerem, pisz :+1:

pozdrawiam serdecznie

juliusz Ok. Znalazłem to w czym problem.


Na początku myślałem, że to problem z DataProvided, ale to nie było. Odkryłem ten sam problem w SQLServer 2000 ....


Wyszukiwanie w google dowiedziałem się czegoś o plan wykonania. Biorąc w ten sposób, że zapytania zwiększyło wydajność 50%.


Krótki życiorys tego problemu jest to, że podczas wykonywania SP kodem, DBMS ma pewne problemy z planu wykonania, a nie korzystać z indeksów ...


Lepszą odpowiedź jest w tym poście:
 [Parametr Wąchania (lub Fałszowanie) w SQL Server](https://stackoverflow.com/questions/211355/parameter-sniffing-or-spoofing-in-sql-server)


Mam nadzieję, że to Ci pomoże.