Hej,
finns det något snabbt sätt att fråga eller räkna ut hur mycket plats en hel databas tar i mySQL?
Även en tabell vore trevligt att veta hur mycket plats den tar upp.
Mvh
-- Rincewind
9 svar · 448 visningar · startad av rincewind
Hej,
finns det något snabbt sätt att fråga eller räkna ut hur mycket plats en hel databas tar i mySQL?
Även en tabell vore trevligt att veta hur mycket plats den tar upp.
Mvh
-- Rincewind
Jag är ledsen att jag inte kan vara till mer hjälp, men folk behöver nog få reda på ung. hur många användare det blir också.
Min tomma tabell däremot som var på ca 85 fält var inte större än 1 kB. Lycka till!
Det bör du kunna se i ditt administrationsgränssnitt (ex. phpmyadmin)
hehe,=)
jo, klart jag kan se storleken i något admin gränssnitt.
Men vad jag har är en webtjänst (som drivs med php) där varje användare har en viss mängd data sparat i databasen (mysql).
Jag skulle vilja presentera för varje person hur mycket plats han tar upp i den webtjänsten.
Varje användare har till och med en egen databas.
Så frågan är - går det att fråga mysql med något trevligt kommando om hur mycket plats en hel databas eller table tar upp?
Mvh
-- Rincewind
gissar att du kör på linux, så du borde väl kunna göra ett program som kontrollerar storleken på filerna i aktuell mapp och sparar dem i en textfil i samma mapp?
Oj,
fungerar suveränt..
Tackar kjell för det suveräna svaret!
Men om man vill få fram storleken på hela databasen då?
I mitt fall har jag en fullt normaliserad databas vilket innebär att det är över 30 tabeller.
Lite jobbigt att fråga varje tabell hur stor den är.=)
Någon som vet hur man får fram datat på hur stor hela databasen är?
Tacksam för det suveräna svaret!=)
Mvh
-- Rincewind
Här är ett litet php script som räknar ihop hur stor hela valda tabellen är...
$data_length=0;
$index_length=0;
$sql = "SHOW TABLE STATUS";
$result = mysql_query($sql) or die("Invalid query: " . mysql_error());
while($r=mysql_fetch_array($result))
{
$data_length += $r['Data_length'];
$index_length += $r['Index_length'];
}
echo "Data_length: ".number_format($data_length,0,3,',')." bytes<br>";
echo "Index_length: ".number_format($index_length,0,3,',')." bytes<br>";
Oki tackar munktell=)
Men fortfarande en while sats. Dvs man räknar ihop varje svar.
En fråga som ger flera svar som man sedan räknar ihop..
Går det inte att fråga MySQL med en fråga som ger ETT svar som bara säger hur stor hela databasen är?.
Visst fungerar ditt svar, men anledningen varför jag inte vill köra en förfrågan som räknar ihop det hela är för att jag tycker det blir slött (iallafall slöare än att få ett svar).
Denna fråga kommer att köras varje gång någon klickar på min sida.
Tacksam för svar.
Mvh
-- Rincewind