Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Informacje o bazie (wielkość/rozmiar, klucz, statystyka rekordów)
Forum PHP.pl > Forum > Bazy danych > MySQL
Sky_walker
Chce napisać skrypcik w php który wyświetli mi informacje o bazie danych, takie jak (słówka kluczowe dla poszukujących przez wyszukiwarkę):
*Wykorzystanie przestrzeni / wielkość / rozmiar tabeli w bazie danych (takie cuś w bajtach)
*Nazwę klucza tabeli
*Statystyke rekordów (w tym: metode porównywania napisów, ilość rekordów, data utworzenia, data ostatniej aktualizacji oraz data ostatniego sprawdzenia)

Jeśli problem jest banalny i takich skryptów są setki na necie to bardzo bym prosił o wklejenie choć jednego (działającego), bo moje poszukiwania nie dały efektu sad.gif

Jedyne co znalazłem to skrypcik:
  1. <?php
  2. $result = mysql_query("SHOW TABLE STATUS FROM '$tabela'"); //$tabela zawiera nazwę tabeli
  3. while($array = mysql_fetch_array($result)) {
  4. $total = $array[Data_length]+$array[Index_length];
  5. echo '
  6. Wykorzystanie przestrzeni w tabeli '.$array[Name].':
  7. Dane: '.$array[Data_length].'<br />
  8. Indeks: '.$array[Index_length].'<br />
  9. Sumarycznie: '.$total.'<br />
  10. Wierszy: '.$array[Rows].'<br />
  11. Średni rozmiar wiersza: '.$array[Avg_row_length].'<br /><br />
  12. ?>

Oczywiście trochę go zmodyfikowałem, ale - co gorsza - nie działa :/
Po pierwsze nie wyświetla mi wszystkich danych jakie bym chciał mieć, a po drugie wywala mi błąd i nie moge znaleźć co jest jego przyczyną.

Z góry dziękuję za pomoc
Sky_walker
dr_bonzo
Cytat
a po drugie wywala mi błąd i nie moge znaleźć co jest jego przyczyną.

Za to nasze magiczne zdolnosci telepatii pomoga w rozwiazaniu problemu.
Podaj tresc bledu i linie w ktorej wystepuje.
krzyszbi
  1. <?php
  2. $result = mysql_query("SHOW TABLE STATUS FROM baza"); //tu dajesz nazwe bazy do analizy a nia talebi
  3. while($array = mysql_fetch_array($result)) {
  4. $total = $array[Data_length]+$array[Index_length];
  5. echo '
  6. Wykorzystanie przestrzeni w tabeli '.$array[Name].':
  7. Dane: '.$array[Data_length].'<br />
  8. Indeks: '.$array[Index_length].'<br />
  9. Sumarycznie: '.$total.'<br />
  10. Wierszy: '.$array[Rows].'<br />
  11. Średni rozmiar wiersza: '.$array[Avg_row_length].'<br /><br />'; //a ty zamkniecia apstrofu i srednika
  12. }//tu brakowałe zamkniecia nawiasu
  13. ?>

u mnie ten kodzik działa snitch.gif
Sky_walker
krzyszbi napisał:
Cytat
//a ty zamkniecia apstrofu i srednika
}//tu brakowałe zamkniecia nawiasu

Wszystko było, tylko linię obciąłem. Błąd był w tym, że wprowadzałem mu tabele, a nie bazę danych (tak dla n00bów większych odemnie).

A jak w takim razie zrobić analizę tylko podanej tabeli (tak żebym wprowadzał jej nazwe $tabela)?
I jak wyświetlić pozostałe informacje (1szy post)?

I jeszcze dodatkowe pytanko:
Jak zrobić, żeby po optymalizacji tabeli (1sza linia) zwrócił mi Msg_text (przynajmniej tak to się nazywa w phpMyAdmin; przykładowa wartość: "Table is already up to date") - czyli raport z tego co zrobił?

Pomocy... błagam...
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.