Вопрос № 50711: Здравствуйте,
Мне нужно узнать размер конкретной таблицы в СУБД MySQL. Ещё нужен размер всей базы данных. Собственно, вопрос: как это сделать?
Если непонятно о чём речь, взгляните на форум phpBB. Там в админской части есть следующая...
Вопрос № 50.711
Здравствуйте,
Мне нужно узнать размер конкретной таблицы в СУБД MySQL. Ещё нужен размер всей базы данных. Собственно, вопрос: как это сделать?
Если непонятно о чём речь, взгляните на форум phpBB. Там в админской части есть следующая надпись: Размер базы данных: 71Kb (цифра к примеру). Вот примерно такую вещь мне нужно реализовать.
К сожалению нет под рукой исходников phpBB, но подозреваю что в данном случае размер БД определяется файловой функцией:
int filesize ( string filename)
Ответ отправил: LastSoul (статус: 8-ой класс)
Ответ отправлен: 31.07.2006, 18:42 Оценка за ответ: 2 Комментарий оценки: А в качестве параметра filename я что возьму? Файл с расширением MYI или FRM? :) Мне нужен абсолютно чёткий и точный ответ без подозрений.
Отвечает: Игорь Елизаров
Здравствуйте, Марк Крейн!
посмотреть объем, занимаемый таблицей MSSQL можно с помощью служебной процедуры
sp_spaceused имяТаблицы
если имя таблицы не указано, выдается справка по объему текущей базы.
если имя таблицы указано, то выдается информация
по таблице
- наименование
- число записей
- зарезервированный объем
- занятый объем
- объем индексных файлов
- незанятый объем
пример:
sp_spaceused budget
С уважением, Игорь
Ответ отправил: Игорь Елизаров (статус: 5-ый класс)
Ответ отправлен: 31.07.2006, 21:11 Оценка за ответ: 1 Комментарий оценки: Я же в вопросе указал используемую СУБД: MySQL! При чём тут Microsoft SQL Server? Ответ в данном случае совершенно не по теме.
Отвечает: dianacode
Доброе время суток, Марк Крейн
а что Вам мешает сделать так:
use my_database;
show table status;
лезем сюда и смотрим - http://en.mysql.ru/doc/refman/5.0/en/show-table-status.html
суммируем поле Data_length в цикле и получаем искомое
могу пример на perl предложить
с уважением, удачи
--------- There is more than one way to do it
Ответ отправила: dianacode (статус: 1-ый класс)
Ответ отправлен: 01.08.2006, 09:53