sql >> Databasteknik >  >> RDS >> Mysql

MySQL, fel 126:Fel nyckelfil för tabellen

Det verkar som om din fråga returnerar en stor mellanliggande resultatuppsättning som kräver skapandet av en temporär tabell och att den konfigurerade platsen för mysql temporarydisk-tabeller (/tmp) inte är tillräckligt stor för den resulterande temporära tabellen.

Du kan försöka öka tmpfs-partitionsstorleken genom att montera om den:

mount -t tmpfs -o remount,size=1G tmpfs /tmp

Du kan göra denna ändring permanent genom att redigera /etc/fstab

Om du inte kan göra detta kan du försöka ändra platsen för disktemporära tabeller genom att redigera "tmpdir"-posten i din my.cnf-fil (eller addit om den inte redan finns där). Kom ihåg att katalogen du väljer ska vara skrivbar av mysql-användaren

Du kan också försöka förhindra skapandet av en temporär tabell på disken genom att öka värdena för mysql-konfigurationsalternativen:

tmp_table_size
max_heap_table_size

till större värden. Du måste öka båda parametrarna ovan

Exempel:

set global tmp_table_size = 1G;
set global max_heap_table_size = 1G;


  1. Visa SQLite-data i RecyclerView

  2. hur duplicerar jag mina sql-resultat?

  3. Hur man tar bort objekt från SQLite-databasen med SQLiteOpenHelper-klassen

  4. Välj varje månad även om månaden inte finns i mysql-tabellen