
Semyon
02.02.2018
13:49:56
Добрый день!
Постоянно сыпет в лог:
2018-02-02 16:15:05 34426902528 [Note] InnoDB: page_cleaner: 1000ms intended loop took 4205ms. The settings might not be optimal. (flushed=749 and evicted=0, during the time.)
show global variables like 'innodb_page_cleaners';
+----------------------+-------+
| Variable_name | Value |
+----------------------+-------+
| innodb_page_cleaners | 16 |
+----------------------+-------+
1 row in set (0.00 sec)
Как бы узнать причину или же переключить лог только на error ?
10.2.12-MariaDB

Timur
02.02.2018
14:30:10
Народ, помогите составить full outer join на mysql.
Есть таблицы Menu, Meal и Menu_Meal (таблица для связи many-to-many)
Мне необходимо найти все блюда, которые НЕ входят в какие-либо меню, как показано на изображении.

lost
02.02.2018
14:33:31
в мускуле нет full outer join, делается в два запроса через UNION

Google

Timur
02.02.2018
14:41:12

lost
02.02.2018
14:42:32
я дал тебе достаточно инфы: два left join через union all

Timur
02.02.2018
14:45:19

lost
02.02.2018
14:57:32
Скорее ты что-то путаешь. У меня есть отношение Меню - Блюдо.
Я делаю
Meal left join Menu where Menu.Meal IS NULL и получаю что мне нужно.
Остался вопрос при чём здесь full outer join ?

Timur
02.02.2018
14:59:56

lost
02.02.2018
15:00:08
у тебя есть таблица со связью
поправочка
Menu_Meal.Meal

Timur
02.02.2018
15:02:40
Ты скорее всего думаешь, что мне просто нужно вывести список всех записей, который так или иначе не связаны с записями в другой таблице. Мне нужно, чтобы значения были сопоставлены в результирующем списке, т.е.
Блюдо 1 не входит в Меню 1
Блюдо 1 не входит в Меню 2
Блюдо 2 не входит в Меню 1
Блюдо 2 не входит в Меню 2
и т.д.

lost
02.02.2018
15:17:21
Это не full outer join...

Timur
02.02.2018
15:25:18

lost
02.02.2018
15:32:16
Это сущность в виде гномика...
Очень страшная

Google

Timur
02.02.2018
15:35:25

lost
02.02.2018
15:36:07
ага... а теперь посмотри как это выглядит в табличном виде...
а не на примере множеств
и убедись что это далеко не твой случай
SELECT
DISTINCT m.id, mm2.id
FROM Meal m
JOIN Meal_Menu mm ON m.id = mm.meal_id
JOIN Meal_Menu mm2 ON mm.id <> mm2.id;
вот что должно канать в твоём случае

Timur
02.02.2018
15:45:58

lost
02.02.2018
15:46:45
Как ты ставишь задачу- такой и результат :)
если бы я хотел пошутить - я бы не стал тратить на тебя своё время

Timur
02.02.2018
15:48:43
Комп виснет от твоего запроса, приходится прерывать запрос

lost
02.02.2018
15:50:02
видимо на твоём домашнем вордпрессике мускуль сказал ой...
а перед тем как запускать запросы нужно explain делать
может у тебя там ни одного индекса и 3 фуллскана с декартовым произведением строк

Timur
02.02.2018
15:52:07
Таблицы сгенерированы автоматически доктриной. Записей всего пару десятков. Ты просто дерьмовый запрос написал

lost
02.02.2018
15:55:27

Timur
02.02.2018
16:04:36
ну orm же точно 100% все предусмотрела и создала всё что нужно...
Давай глупости сейчас не говори, простейшие таблицы, всего пару десятков записей. Написал какой-то запрос, который нагружает процессор на 100% и никогда не заканчивается и пытаешься свалить все на криво построенные таблицы. Два часа впустую потратил время на выслушивание твоих дурацких колкостей и надменного сарказма типа "домашний вордпрессик". Не пиши ничего, пользы от твоих ответов 0. Вместо того, чтобы попытаться искренне помочь человеку, ты, как и половина всех сидящих тут, самоутверждаешься, показывая, как глуп твой оппонент, как глупо он ставит вопрос, какой он салага, нуб и быдлокодер. Надеюсь ты самоудовлетворился. Удачи тебе по жизни

Louis
02.02.2018
16:46:27
Пхпшники, есть годный профайлер для mysql?

Magic
02.02.2018
16:47:13

Louis
02.02.2018
16:47:43
ээ?
Ну типа sql server profiler

lost
02.02.2018
16:47:56
Он в самом mysql есть, если что

Google

Magic
02.02.2018
16:48:08
Как бы да

Louis
02.02.2018
17:03:40

Magic
02.02.2018
17:07:23
На клиенте?
я погуглил за вас
https://habrahabr.ru/post/70435/

Louis
02.02.2018
17:08:35

lost
02.02.2018
17:12:37
Любой профайлер на клиенте это будет надстройка над системным, иначе откуда инфу ещё брать

Anton
02.02.2018
17:26:09
Всем привет! Вопрос к проскиллованным ребятам, как @alexey_kopytov, никак не могу решить проблему без извращений.
Есть табличка с составным индексом "инт-дата". Так вот, если сделать запрос типа инт IN (1,2,3) AND дата > CURDATE(), то составной индекс берётся полностью. Если же данное перечисление является результатом запроса (например, через джойн), то вторая часть не только не берётся, но даже не попадает в index_condition, исключительно attached_condition! Вопрос, кто виноват и как эту сволочь заставить взять полный индекс не используя кучу скалярных подзапросов? Для наглядности проблемы сделал тестовые таблички:
https://pastebin.com/0rzHp0U2
Ни у кого никаких идей или я просто в чёрном списке группы??

Иван
02.02.2018
17:47:09
Слишком поздно думаю
Еще сегодня много вопросов задавали
Я тоже хотел спросит, но отложил

Lucky
02.02.2018
17:47:53
Сказывается вечер пятницы

Anton
02.02.2018
17:48:58
Ну, и вопрос неординарный, тут тоже не стоит сбрасывать со счетов(((( Кроме оборачивания таких конструкций в динамику (PREPARE/EXECUTE) пока ничего не придумал, но динамика - это тоже та ещё грусть.

Paul
03.02.2018
18:20:33
привет, подскажите, где прочитать как развернуть MySQL сервер на windows

Maxim
03.02.2018
19:10:18
Mysql.com
Но это не точно!

Vyacheslav
03.02.2018
19:23:28

Paul
03.02.2018
19:24:15
xampp
мне для python, не для php

Vyacheslav
03.02.2018
19:24:43

Paul
03.02.2018
19:25:20

Google

Vyacheslav
03.02.2018
19:25:36

Paul
03.02.2018
19:26:26

Vyacheslav
03.02.2018
19:27:09

Paul
03.02.2018
19:27:19