Mysql
 sql >> Datenbank >  >> RDS >> Mysql

MySQL - SQL_BIG_SELECTS

  1. MySQL bestimmt anhand des Werts von „max_join_size“, ob eine Abfrage eine „große Auswahl“ ist oder nicht. Wenn die Abfrage wahrscheinlich mehr als diese Anzahl von Zeilen untersuchen muss, wird sie dies als „große Auswahl“ betrachten. Verwenden Sie 'Variablen anzeigen', um den Wert der maximalen Join-Größe anzuzeigen.

  2. Ich glaube, dass die Indizierung und insbesondere eine gute Where-Klausel dieses Problem verhindern werden.

  3. SQL_BIG_SELECTS wird verwendet, um zu verhindern, dass Benutzer versehentlich übermäßig große Abfragen ausführen. Es ist in Ordnung, es in mysql.cnf auf ON zu setzen oder die Befehlszeilenoption beim Start zu verwenden.

  4. Sie können SQL_BIG_SELECTS in my.cnf oder beim Serverstart festlegen. Es kann auch auf Sitzungsbasis mit SET SESSION SQL_BIG_SELECTS=1 gesetzt werden .

  5. Nicht dass ich daran denken könnte. Ich würde nur Ihre Abfrage überprüfen, um sicherzustellen, dass Sie sie wirklich verwenden müssen. Auf unseren Servern ist es standardmäßig aktiviert und max_join_size ist sehr groß.