Оптимизация БД для ускорения выполнения запросов - MySQL
Формулировка задачи:
Добрый день!
Имеется база на 1.000.000 записей. База статична, ничего в неё не пишем, только читаем. Запросы выполняются по 9-10 секунд!!!!!!!
Как можно оптимизировать или ускорить работу этого безобразия? Какая информация ещё нужна для того чтобы ответить на вопрос?
Структура:
Примеры запросов:
Листинг программы
- id INT(11)
- prefix CHAR(2)
- num_ber VARCHAR(20)
- full_name VARCHAR(180)
- name_1 VARCHAR(100)
- name_2 VARCHAR(100)
- name_3 VARCHAR(100)
- vol_1 FLOAT
- vol_2 FLOAT
- accuracy INT(1)
- post_name VARCHAR(100)
Листинг программы
- SELECT DISTINCT post_name FROM name_db WHERE post_name IS NOT NULL ORDER BY post_name
Листинг программы
- SELECT DISTINCT name_1 FROM name_db WHERE post_name = '$post_name' AND name_1 IS NOT NULL ORDER BY name_1
Листинг программы
- SELECT COUNT(num_ber) FROM name_db WHERE name_1 = '$name_1' AND num_ber IS NOT NULL
Решение задачи: «Оптимизация БД для ускорения выполнения запросов»
textual
Листинг программы
- ALTER TABLE `name_bd` ADD INDEX(`имя_поля`);
Объяснение кода листинга программы
- Команда ALTER TABLE - используется для изменения таблицы в базе данных.
name_bd
- название таблицы, которую необходимо оптимизировать.- ADD INDEX - добавляет индекс на указанное поле в таблице.
имя_поля
- название поля, на которое необходимо добавить индекс.(имя_поля)
- указание на то, что полеимя_поля
является индексируемым полем.имя_поля
- название поля, которое будет использоваться в качестве индекса.имя_поля
- название поля, которое будет использоваться в качестве индекса.имя_поля
- название поля, которое будет использоваться в качестве индекса.имя_поля
- название поля, которое будет использоваться в качестве индекса.имя_поля
- название поля, которое будет использоваться в качестве индекса.имя_поля
- название поля, которое будет использоваться в качестве индекса.имя_поля
- название поля, которое будет использоваться в качестве индекса.имя_поля
- название поля, которое будет использоваться в качестве индекса.имя_поля
- название поля, которое будет использоваться в качестве индекса.имя_поля
- название поля, которое будет использоваться в качестве индекса.имя_поля
- название поля, которое будет использоваться в качестве индекса.имя_поля
- название поля, которое будет использоваться в качестве индекса.имя_поля
- название поля, которое будет использоваться в качестве индекса.имя_поля
- название поля, которое будет использоваться в качестве индекса.имя_поля
- название поля, которое будет использоваться в качестве индекса.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д