Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> wylapywanie zmian na tabelach przed i po akcji
robert1974
post
Post #1





Grupa: Zarejestrowani
Postów: 131
Pomógł: 1
Dołączył: 2.11.2014

Ostrzeżenie: (0%)
-----


witam,

Mam takie zadanie. Mam w bazie okolo 100 tabel (forum vbulletin). Z GUI forum wykonuje akcje np. Ban user albo Delete User.

Czy jest moze jakies narzedzie ktore pozwolilo by zapamietac status tabel (ilosc wierszy ale i co jest w tych wierszach) przed akcja i porownac z wartosciami po wykaniu akcji Ban czy Delete? Musze sprawdzic jakich tabel dotyka (Insert/Update/Delete) dana akcja, by potem moc zautomatyzowac i wykonac SQLem.

Dziekuje za pomoc.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 7)
DarkAbso
post
Post #2





Grupa: Zarejestrowani
Postów: 60
Pomógł: 10
Dołączył: 17.11.2011

Ostrzeżenie: (0%)
-----


Jedyne co mi przychodzi na myśl to pozakładać wyzwalacze na tabele. Nie jest to raczej eleganckie rozwiązanie, ale pozwoli wykonywać akcje po UPDATE, DELETE lub INSERT wybranej tabeli. Jeżeli ma to być tymczasowe rozwiązanie w celu zdiagnozowania jakiegoś problemu to powinno się sprawdzić. W innym wypadku raczej nie polecam. (IMG:style_emoticons/default/smile.gif) Więcej na ten temat w google.
Go to the top of the page
+Quote Post
phpion
post
Post #3





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




Zrób sobie zrzut bazy przed i po zmianach (jako czysty SQL). Następnie korzystając z np. z KDiff porównaj oba zrzuty.
Go to the top of the page
+Quote Post
robert1974
post
Post #4





Grupa: Zarejestrowani
Postów: 131
Pomógł: 1
Dołączył: 2.11.2014

Ostrzeżenie: (0%)
-----


dzieki, sprobuje napisac rozwiazanie w sql i php do tego. robic kopie tabel, a po akcji, porownywac zawartosci skopiowanych tabel z oryginalnymi. moze cos z tego wyjdzie.
Go to the top of the page
+Quote Post
Crozin
post
Post #5





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

Ostrzeżenie: (0%)
-----


Nie wystarczy odpalić jakiegoś profilera czy choćby query loga, żeby zobaczyć jakie zapytania lecą do bazy danych?
Go to the top of the page
+Quote Post
damian.1923
post
Post #6





Grupa: Zarejestrowani
Postów: 29
Pomógł: 0
Dołączył: 18.08.2008

Ostrzeżenie: (0%)
-----


powórzę to co @Crozin, chyba najprościej włączyć pełne logowanie sql:

general_log = 1;
general_log_file = /path/to/query.log;
Go to the top of the page
+Quote Post
Pyton_000
post
Post #7





Grupa: Zarejestrowani
Postów: 8 068
Pomógł: 1414
Dołączył: 26.10.2005

Ostrzeżenie: (0%)
-----


Ładniej będzie logować do BD:
http://stackoverflow.com/a/14403905/3732803
Go to the top of the page
+Quote Post
robert1974
post
Post #8





Grupa: Zarejestrowani
Postów: 131
Pomógł: 1
Dołączył: 2.11.2014

Ostrzeżenie: (0%)
-----


dzieki za odpowiedzi. poprobuje.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 9.10.2025 - 02:50