W kilku moich tabelach w mojej bazie danych SQL Server 2005 wszystkie moje dane zostały usunięte. Czy mimo to można uzyskać dziennik SQL Server zawierający wszystkie instrukcje, które zostały uruchomione w ciągu ostatniego dnia? Próbuję dowiedzieć się, czy ktoś zrobił to w wyniku wypadku, w mojej aplikacji sieciowej wystąpiła luka w zabezpieczeniach, lub faktyczny błąd bazy danych został naruszony.W jaki sposób moje zabezpieczenia bazy danych zawiodły?
Odpowiedz
Poniżej znajduje się kilka programów, które pozwolą Ci odczytać dziennik.
http://sqlserver2000.databases.aspfaq.com/how-do-i-recover-data-from-sql-server-s-log-files.html
Jeden z Red Gate is called SQL Rescue i wygląda całkiem nieźle.
Można faktycznie oddzielić dziennik transakcji i określić, co zostało uruchomione w bazie danych. Jednak są one w zastrzeżonym, nieudokumentowanym formacie pliku - szukaj narzędzi, które mogą to zrobić, niestety nie mam rekomendacji. –
@Redbeard: Myliłem się i zaktualizowałem swoją odpowiedź. Dzięki! – NotMe
można spróbować narzędzia dziennika ratunkowego jak Log Rescue
Chciałbym również uporządkować pewne inspekcję własną rękę.
Log Rescue nie obsługuje SQL 2005, więc można też spróbować Apex SQL Log
Strona Log Rescue stwierdza, że nie obsługuje SQL 2005 (czyli tego, co używa OP) –
Istnieją aplikacje można kupić, że można przekonwertować kopię zapasową dziennika transakcji do rzeczywistych wypowiedzi, które były prowadzone. Być może uda Ci się znaleźć wersję próbną niektórych z nich, niestety nie mogę zalecić żadnej konkretnej.
Poszukujesz dziennika transakcji . W zależności od tego, jak i jeśli jest skonfigurowany, będziesz mógł zobaczyć, co zostało uruchomione. Jest na niej trochę informacji pod adresem http://www.databasedesign-resource.com/sql-server-transaction-log.html. Biorąc to pod uwagę, jestem pewien, że możesz również ulepszyć zasoby Google.
Moje rozumienie dziennika transakcji polega na tym, że * nie * przechowuje tekst instrukcji SQL uruchamianych na serwerze, ale lokalizacje i zawartość stron, których dotyczyła każda transakcja. Dziennik jest przydatny do przewijania transakcji w przód lub w tył w celu przywrócenia punktu w czasie, ale z tego, co wiem, jest bezużyteczny w przypadku kryminalistyki. –
Snafu terminologii, myślę. MySQL na przykład wywołuje log, który opisałeś dziennik transakcji. "Dziennik binarny" MySQL jest równoważny "dziennikowi transakcji" programu SQL Server. –
Należy pamiętać o jeszcze jednej rzeczy: jeśli haker uzyska wystarczający dostęp, aby wyczyścić niektóre tabele, istnieje spora szansa, że uzyskali wystarczający dostęp, aby uzyskać dostęp do swoich plików dziennika.
Można również spróbować uruchomić polecenie DBCC LOG (baza danych, 3). Wyśle dane z dziennika transakcji.
Utwórz kopię zapasową dziennika transakcji w programie SQL Server, pobierz wersję próbną programu TOAD dla programu SQL Server, w której można zaimportować kopię zapasową transakcji Transactionlog.
A jeśli chcesz, możesz również utworzyć INSERT Scripts z usuniętych rekordów. Ale nie wiem, czy są jakieś ograniczenia w wersji próbnej TOAD.
- 1. Zabezpieczenia na poziomie wiersza w scenariuszu z klientem bazy danych
- 2. W jaki sposób zaimplementowano kursor bazy danych Android w szczegółach?
- 3. Gdzie są moje pliki bazy danych H2?
- 4. Jakie są niektóre opcje zabezpieczenia bazy danych redis?
- 5. W jaki sposób (jednostka) Przetestuj schemat bazy danych?
- 6. Jaki jest najlepszy sposób inicjowania aktora z bazy danych?
- 7. Jaki jest najlepszy sposób na skopiowanie bazy danych?
- 8. Jaki jest najlepszy sposób konwertowania bazy danych mysql na sqlite?
- 9. Najlepszy sposób przechowywania danych "ustawień witryny" w tabeli bazy danych?
- 10. w jaki sposób plik sails.js obsługuje migracje bazy danych podczas pracy z bazą danych schematu?
- 11. jaki sposób moje strony wyglądają w innych krajach
- 12. W jaki sposób kątowe-jwt dekoduje moje JWT bez tajemnicy?
- 13. Jaki jest cel schematu bazy danych?
- 14. Właściwy sposób uzyskiwania danych z bazy danych Access
- 15. Jak bezpiecznie przechowywać hasło bazy danych w Pythonie?
- 16. ponawiania próby zawiodły mokka
- 17. Zabezpieczenia zasobów w systemie Android
- 18. Najlepszy sposób zarządzania pulą wątków w kolejce do bazy danych
- 19. jaki jest najlepszy sposób przechowywania paramerów zapytań filtrowanych przez użytkownika w tabeli bazy danych?
- 20. W SQL * Plus, w jaki sposób zmienić monit o wyświetlenie połączonego użytkownika i bazy danych?
- 21. W jaki sposób przeprowadzamy migrację/aktualizację schematu bazy danych w Grails?
- 22. W jaki sposób zapełniać dane w kodzie Entity Framework po raz pierwszy przy tworzeniu bazy danych?
- 23. W Zend Framework przy użyciu MultiDB Resource, w jaki sposób skonfigurować awarię bazy danych?
- 24. W jaki sposób uruchamiasz aktualizację poprawki/częściowej bazy danych w Scala Slick?
- 25. WCF, zabezpieczenia i certyfikaty
- 26. w jaki sposób repozytorium danych źródłowych spring rescue tylko aktualizować
- 27. Wstawianie do bazy danych
- 28. W jaki sposób NULL są przechowywane w bazie danych?
- 29. Baza danych bazy danych Codeigniter
- 30. W jaki sposób unika się nadmiarowych danych w nierelacyjnych bazach danych?
Nie mam problemów z iniekcją SQL, mam nadzieję? –