Nasza aplikacja bazy danych MySQL uległa awarii. Mieliśmy kopię zapasową i przywróciliśmy ją około tygodnia po awarii systemu. Tymczasem użyliśmy kopii zapasowej aplikacji bazy danych. Jak mogę dodać dane z luki w tym tygodniu do bazy danych.
Jaki byłby najlepszy sposób na zrobienie tego?
EDYTOWAĆ.
Struktura tabeli jest taka sama. Istnieje wiele tabel z kluczami obcymi.
Zasadniczo moje pytanie sprowadza się do tego:
Klucze podstawowe na obu serwerach wyglądają tak:
serv1: 123456---
serv2: 123---456
To są klucze obce w tabeli wtórnej
Chciałbym scalić te dwa, ale wszystkie główne klucze w drugiej tabeli powinny być odzwierciedlone w relacji klucza obcego, gdy przeniesię odpowiednie dane z innych tabel.
Odpowiedzi:
0 dla odpowiedzi № 1Jeśli masz kilka wersji bazy danych, które, jak sądzę, teraz, najlepszym sposobem jest zsynchronizowanie danych między bazą danych online i brakującymi danymi.
Możesz spróbować z: http://www.red-gate.com/products/mysql/mysql-data-compare/ Lub: http://www.devart.com/dbforge/sql/datacompare/
W środowisku roboczym można porównać schematy: http://dev.mysql.com/doc/workbench/en/wb-database-diff-report.html
Ale najlepiej najpierw zrobić kopię zapasową środowiska testowego, a następnie wypróbować porównania, może to być ten sam identyfikator w dwóch lokalizacjach i trzeba znaleźć najlepsze rozwiązanie dla bazy danych.
- Więc umieść obie bazy danych (bieżącą i najnowszą bazę danych w dwóch środowiskach testowych)
- Zsynchronizuj je i sprawdź różnice
Uruchom naprawę w teście, jeśli wszystko pójdzie dobrze, a następnie zrób to podczas produkcji.