Алексей Паутов - MySQL: руководство профессионала
- Название:MySQL: руководство профессионала
- Автор:
- Жанр:
- Издательство:неизвестно
- Год:неизвестен
- ISBN:нет данных
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Алексей Паутов - MySQL: руководство профессионала краткое содержание
Это не совсем книга. Просто по ходу работы и изучения пакета у меня накопилось немало заметок, которые я в конце концов собрал воедино и опубликовал с оглавлением и под единым названием. Данные заметки относятся к версиям 4 и 5 пакета MySQL. По ходу текста особо отмечены места, относящиеся к специфической версии пакета.
MySQL: руководство профессионала - читать онлайн бесплатно полную версию (весь текст целиком)
Интервал:
Закладка:
FILE_TYPE одно из значений UNDOFILE или DATAFILE.
TABLESPACE_NAME имя пространства таблиц, с которым файл связан.
В MySQL 5.1 значение столбца TABLESPACE_CATALOG всегда NULL.
TABLE_NAME имя дисковой таблицы данных, с которой файл связан, если есть.
Столбец LOGFILE_GROUP_NAME дает имя группы журнала, которой журнал или файл данных принадлежит.
Для журнала UNDO LOGFILE_GROUP_NUMBER содержит автосгенерированный номер ID группы журналов, к которой журнал принадлежит.
Для журнала данных MySQL Cluster или файла данных, значение столбца ENGINE всегда NDB или NDBCLUSTER.
Для журнала данных MySQL Cluster или файла данных, значение столбца FULLTEXT_KEYS всегда пусто.
Столбец FREE EXTENTS отображает число блоков, которые еще не использовались файлом. Столбец TOTAL EXTENTS показывает общее число блоков, распределенных файлу.
Различие между этими двумя столбцами: число блоков, используемых в настоящее время файлом:
SELECT TOTAL_EXTENTS – FREE_EXTENTS AS extents_used
FROM INFORMATION_SCHEMA.FILES
WHERE FILE_NAME = 'myfile.dat';
Вы можете аппроксимировать количество дискового пространства, находящегося в использовании файлом, умножая это различие на значение столбца EXTENT_SIZE, который дает размер блока для файла в байтах:
SELECT (TOTAL_EXTENTS – FREE_EXTENTS) * EXTENT_SIZE AS bytes_used
FROM INFORMATION_SCHEMA.FILES
WHERE FILE_NAME = 'myfile.dat';
Точно так же Вы можете оценивать количество места, которое остается доступным в данном файле, умножая FREE_EXTENTS на EXTENT_SIZE:
SELECT FREE_EXTENTS * EXTENT_SIZE AS bytes_free
FROM INFORMATION_SCHEMA.FILES
WHERE FILE_NAME = 'myfile.dat';
Важно: значения байт, произведенные предшествующими запросами только приближения, и их точность обратно пропорциональна значению EXTENT_SIZE. То есть, больший EXTENT_SIZE становится менее точным.
Также важно не забыть, что, если только блок используется, это не может быть освобождено снова без того, чтобы удалить файл данных, частью которого блок является. Это означает, что удаление из дисковой таблицы данных не освобождает дисковое пространство.
Размер блока может быть установлен в инструкции CREATE TABLESPACE.
Столбец INITIAL_SIZE показывает размер в байтах файла. Это то же самое значение, которое использовалось в предложении INITIAL_SIZE команд CREATE LOGFILE GROUP, ALTER LOGFILE GROUP, CREATE TABLESPACE или ALTER TABLESPACE использовавшихся, чтобы создать файл.
Для файлов MySQL 5.1 Cluster Disk Data значение столбца MAXIMUM_SIZE всегда такое же, как INITIAL_SIZE, а столбец AUTOEXTEND_SIZE всегда пуст.
Столбец CREATION_TIME показывает дату и время, когда файл был создан. LAST_UPDATE_TIME отображает дату и время, когда файл был последний раз изменен. LAST_ACCESSED обеспечивает дату и время, когда к файлу последний раз обращался сервер.
В настоящее время значения этих столбцов сообщены операционной системой и не обеспечены NDB. Там, где никакое значение не обеспечивается операционной системой, эти столбцы отображаются 0000-00-00 00:00:00.
Для файлов данных MySQL Cluster значение столбцов RECOVER_TIME и TRANSACTION_COUNTER всегда 0.
Для файлов данных MySQL 5.1 Cluster следующие столбцы всегда NULL:
VERSION
ROW_FORMAT
TABLE_ROWS
AVG_ROW_LENGTH
DATA_LENGTH
MAX_DATA_LENGTH
INDEX_LENGTH
DATA_FREE
CREATE_TIME
UPDATE_TIME
CHECK_TIME
CHECKSUM
Для файлов данных MySQL Cluster значение столбца STATUS всегда NORMAL.
Для файлов данных MySQL Cluster столбец EXTRA показывает, которому узлу данных принадлежит файл, поскольку каждый узел данных имеет собственную копию файла. Например, предположите, что Вы используете эту инструкцию относительно MySQL Cluster с четырьмя узлами данных:CREATE LOGFILE GROUP mygroup
ADD UNDOFILE 'new_undo.dat'
INITIAL_SIZE 2G ENGINE NDB;
После удачного выполнения инструкции CREATE LOGFILE GROUP Вы должны видеть результат, подобный показанному здесь для этого запроса к таблице FILES:
mysql> SELECT LOGFILE_GROUP_NAME, FILE_TYPE, EXTRA
– > FROM INFORMATION_SCHEMA.FILES
– > WHERE FILE_NAME = 'new_undo.dat';
+--------------------+-----------+----------------+
| LOGFILE_GROUP_NAME | FILE_TYPE | EXTRA |
+--------------------+-----------+----------------+
| mygroup | UNDO FILE | CLUSTER_NODE=3 |
| mygroup | UNDO FILE | CLUSTER_NODE=4 |
| mygroup | UNDO FILE | CLUSTER_NODE=5 |
| mygroup | UNDO FILE | CLUSTER_NODE=6 |
+--------------------+-----------+----------------+
4 rows in set (0.01 sec)
Таблица FILES ненормативная. Это было добавлено в MySQL 5.1.6.
Не имеется никаких команд SHOW, связанных с таблицей FILES.
9.22. Таблица INFORMATION_SCHEMA PROCESSLIST
Таблица PROCESSLIST обеспечивает информацию, относительно выполняемых сервером потоков.
INFORMATION_SCHEMA
Name
SHOW
Name
Remarks
ID
Id
MySQL extension
USER
User
MySQL extension
HOST
Host
MySQL extension
DB
db
MySQL extension
COMMAND
Command
MySQL extension
TIME
Time
MySQL extension
STATE
State
MySQL extension
INFO
Info
MySQL extension
Примечания:
Таблица PROCESSLIST ненормативная. Это было добавлено в MySQL 5.1.7.
Подобно выводу из соответствующей инструкции SHOW, таблица PROCESSLIST покажет информацию только относительно Ваших собственных потоков, если Вы не имеете привилегию PROCESS, тогда Вы будете видеть информацию относительно других потоков. Как анонимный пользователь Вы не можете видеть любые строки вообще.
Если инструкция SQL обращается INFORMATION_SCHEMA.PROCESSLIST, MySQL заполнит всю таблицу один раз, когда, операторное выполнение начинается, так что гарантируется непротиворечивость чтения в течение инструкции. Не имеется никакой непротиворечивости чтения для многооператорной транзакции.
Следующие инструкции эквивалентны:SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST
SHOW PROCESSLIST
9.23. Таблица INFORMATION_SCHEMA REFERENTIAL_CONSTRAINTS
Таблица REFERENTIAL_CONSTRAINTS обеспечивает информацию относительно внешних ключей.
Примечания:
Таблица REFERENTIAL_CONSTRAINTS была добавлена в MySQL 5.1.10.
TABLE_NAME имеет то же самое значение, что и TABLE_NAME в INFORMATION_SCHEMA.TABLE_CONSTRAINTS.
CONSTRAINT_SCHEMA и CONSTRAINT_NAME идентифицируют внешний ключ.
UNIQUE_CONSTRAINT_SCHEMA и UNIQUE_CONSTRAINT_NAME идентифицируют вызванный ключ.
Единственное допустимое значение в это время для MATCH_OPTION: NONE.
Возможные значения для UPDATE_RULE или DELETE_RULE: CASCADE, SET NULL, SET DEFAULT, RESTRICT, NO ACTION.
9.24. Таблицы INFORMATION_SCHEMA GLOBAL_STATUS и SESSION_STATUS
Таблицы GLOBAL_STATUS и SESSION_STATUS обеспечивают информацию относительно переменных состояния сервера. Их содержание соответствует информации, произведенной инструкциями SHOW GLOBAL STATUS и SHOW SESSION STATUS.
INFORMATION_SCHEMA
Name
SHOW
Name
Remarks
VARIABLE_NAMEVariable_nameVARIABLE_VALUEValue
Примечания:
Таблицы GLOBAL_STATUS и SESSION_STATUS были добавлены в MySQL 5.1.12.
Столбец VARIABLE_VALUE имеет тип BIGINT. Немногие переменные состояния, которые имеют значения нецелого числа, приведены к значениям BIGINT.
9.25. Таблицы INFORMATION_SCHEMA GLOBAL_VARIABLES и SESSION_VARIABLES
Таблицы GLOBAL_VARIABLES и SESSION_VARIABLES обеспечивают информацию относительно переменных состояния сервера. Их содержание соответствует информации, произведенной инструкциями SHOW GLOBAL VARIABLES и SHOW SESSION VARIABLES.
INFORMATION_SCHEMA
Name
SHOW
Name
Remarks
VARIABLE_NAMEVariable_nameVARIABLE_VALUEValue
Примечания:
Таблицы GLOBAL_VARIABLES и SESSION_VARIABLES были добавлены в MySQL 5.1.12.
9.26. Другие таблицы INFORMATION_SCHEMA
Авторы предполагают выполнять дополнительные таблицы в INFORMATION_SCHEMA. В частности, они подтверждают потребность в таблице PARAMETERS.
Читать дальшеИнтервал:
Закладка: