Code:Wydobywanie tabel z archiwum: Różnice pomiędzy wersjami

Z Motława
 
Linia 2: Linia 2:
  
 
1. Znaleźć plik backupu z żądanego dnia. Zazwyczaj jest to katalog /mnt/backup/ na serwerze.
 
1. Znaleźć plik backupu z żądanego dnia. Zazwyczaj jest to katalog /mnt/backup/ na serwerze.
 +
 
2. Przegrać go na bok, np. do katalogu /root/temp
 
2. Przegrać go na bok, np. do katalogu /root/temp
 +
 
3. Przygotować w tym katalogu plik z nazwami tabel do wypakowania. Należy użyć masek, żeby pominąć ścieżki do poszczególnych plików. Czyli tworzymy plik o nazwie, np. lista z zawartością *pr_tob.*
 
3. Przygotować w tym katalogu plik z nazwami tabel do wypakowania. Należy użyć masek, żeby pominąć ścieżki do poszczególnych plików. Czyli tworzymy plik o nazwie, np. lista z zawartością *pr_tob.*
 +
 
4. Wypakowujemy pliki poleceniem:
 
4. Wypakowujemy pliki poleceniem:
 
     tar -xvvzf nazwa_backupu --files-from=./lista
 
     tar -xvvzf nazwa_backupu --files-from=./lista
 +
 
5. Zmieniamy nazwy plików po wypakowaniu (będą one w katalogu /root/temp/var/lib/mysql/db/ht/..... albo podobnym)
 
5. Zmieniamy nazwy plików po wypakowaniu (będą one w katalogu /root/temp/var/lib/mysql/db/ht/..... albo podobnym)
 
na takie, jakie mają być już w bazie. Trzeba pamiętać, że pliki do jednej tabeli są 3: ....MYI, MYD, frm
 
na takie, jakie mają być już w bazie. Trzeba pamiętać, że pliki do jednej tabeli są 3: ....MYI, MYD, frm
 +
 
6. Wgrywamy pliki do właściwego katalogu właściwej bazy danych.
 
6. Wgrywamy pliki do właściwego katalogu właściwej bazy danych.
 +
 
7. Sprawdzamy uprawnienia do tych plików (mysql/mysql).
 
7. Sprawdzamy uprawnienia do tych plików (mysql/mysql).
 +
 
8. Wykonujemy myisamchk na tych plikach i dla pewności analyze, żeby mieć pewność, że tabele są poprawne.
 
8. Wykonujemy myisamchk na tych plikach i dla pewności analyze, żeby mieć pewność, że tabele są poprawne.
 +
 
9. Warto sprawdzić, czy wszystko gra, poleceniem select * from tabela limit 5;
 
9. Warto sprawdzić, czy wszystko gra, poleceniem select * from tabela limit 5;

Wersja z 13:34, 16 gru 2009

Gdy chcemy wydobyć jakąś tabelę, albo kilka, z backupu, należy:

1. Znaleźć plik backupu z żądanego dnia. Zazwyczaj jest to katalog /mnt/backup/ na serwerze.

2. Przegrać go na bok, np. do katalogu /root/temp

3. Przygotować w tym katalogu plik z nazwami tabel do wypakowania. Należy użyć masek, żeby pominąć ścieżki do poszczególnych plików. Czyli tworzymy plik o nazwie, np. lista z zawartością *pr_tob.*

4. Wypakowujemy pliki poleceniem:

   tar -xvvzf nazwa_backupu --files-from=./lista

5. Zmieniamy nazwy plików po wypakowaniu (będą one w katalogu /root/temp/var/lib/mysql/db/ht/..... albo podobnym) na takie, jakie mają być już w bazie. Trzeba pamiętać, że pliki do jednej tabeli są 3: ....MYI, MYD, frm

6. Wgrywamy pliki do właściwego katalogu właściwej bazy danych.

7. Sprawdzamy uprawnienia do tych plików (mysql/mysql).

8. Wykonujemy myisamchk na tych plikach i dla pewności analyze, żeby mieć pewność, że tabele są poprawne.

9. Warto sprawdzić, czy wszystko gra, poleceniem select * from tabela limit 5;