-
MySQL określa, czy zapytanie jest „dużym wyborem”, na podstawie wartości „max_join_size”. Jeśli zapytanie prawdopodobnie będzie musiało zbadać więcej niż tę liczbę wierszy, uzna to za „duży wybór”. Użyj „pokaż zmienne”, aby wyświetlić wartość maksymalnego rozmiaru połączenia.
-
Uważam, że indeksowanie, a zwłaszcza klauzula dotycząca towaru, zapobiegnie wystąpieniu tego problemu.
-
SQL_BIG_SELECTS służy do zapobiegania przypadkowemu wykonywaniu przez użytkowników nadmiernie dużych zapytań. Można ustawić go na ON w mysql.cnf lub użyć opcji wiersza poleceń podczas uruchamiania.
-
Możesz ustawić SQL_BIG_SELECTS w my.cnf lub podczas uruchamiania serwera. Można go również ustawić na podstawie sesji za pomocą
SET SESSION SQL_BIG_SELECTS=1
. -
Nie, żebym mógł o tym myśleć. Po prostu sprawdziłbym twoje zapytanie, aby upewnić się, że naprawdę musisz go użyć. Nasze serwery mają to domyślnie włączone, a parametr max_join_size jest bardzo duży.