Задать вопрос
Ответы пользователя по тегу MySQL
  • Как получить с 11-ой по 20-ую строчки?

    SELECT * FROM table LIMIT 10,10;
    Ответ написан
    Комментировать
  • Почему сайт с простейшими sql запросами "валит" VPS уже при 50 активных посетителей?

    Сам факт, что "обычный хостинг" у вас держит нагрузку лучше VPS, указывает, что на VPS что-то не так. Во-первых, что за MySQL у вас стоит? Попробуйте MariaDB, потюнингуйте ее. Попробуйте выделить ей как можно меньше ОЗУ (гуглите "mysql low memory", смотрите пример my-small.cnf). Какой движок хранения вы используете, InnoDB/MyISAM? Если не Inno, попробуйте с ним, а если он не актуален, отключите.
    У вас может быть включен general_log в MySQL - это лог всех запросов к СУБД. Отключайте, он очень напрягает машинку, особенно если IO тормозит!
    Ну и для начала, задумайтесь о создании кеша средствами софта, чтобы постоянно в СУБД не ходить.
    Ответ написан
    Комментировать
  • события для данных в базе, какие есть способы?

    А кто добавляет задачи? Если внешний код — вообще красиво, добавляем в него и свой кусочек, и при делании чего-то с базой просто спрашиваем у БД, что там напланировано еще сделать, затем у at запрашиваем текущий список запланированного к выполнению, сравниваем полученные данные, и выдаем нужные команды, которые приведут список at-заданий к тому виду, как оно вам нужно.

    И тогда получаем разделение — и mysql «дергается» (хотя, какое это дергание?) только по факту изменений в нем, и планированием занимается стандартная утилита (уж явно она это сделает не хуже самописного демона).

    Ну а вот если событие «изменение базы» проходит тайно от нас, остается в цикле раз в минуту делать опрос (чаще не нужно, Вы же храните события с минутной точностью) и, если список в БД поменялся на фоне прошлого раза, опрашиваем at, и дальше по приведенному плану. Менее изящно, но вполне работоспособно.
    Ответ написан
    Комментировать