sql >> Databasteknik >  >> RDS >> Mysql

Hur man manuellt bygger mysql-cache

MySQL-cache fungerar olika beroende på om du använder MyISAM-lagringsmotorn eller InnoDB-lagringsmotorn.

MyISAM cachar endast index, inte data. Du kan använda LOAD INDEX INTO CACHE för att ladda MyISAM-index i nyckelbuffertcachen. Men det finns inget motsvarande uttalande om du använder InnoDB.

InnoDB cachar både data och indexsidor. Det finns inget specialiserat kommando för att värma upp cachebuffertarna, men du kan köra några SQL-satser som gör fullständiga tabellsökningar och fullständiga indexsökningar för att ladda dem i buffertarna. Du bör kunna göra detta med ett skript på servern, utan att använda wget !

Jag håller med om svaret från @code_burgar:150 000 rader är tillräckligt litet för att du inte ska märka mycket prestationsstraff medan cachen värms upp.

Om du pratar om att värma upp Frågecache a> , det är en annan fråga. Du måste värma upp frågecachen med specifika SQL-frågor, eftersom den cachen behåller resultatuppsättningar som är associerade med dessa SQL-frågor ordagrant. Din wget lösningen är ineffektiv och duplicerar förmodligen mycket arbete. Du bör kunna prima frågecachen genom att köra ett skript på servern som exekverar varje fråga som du vill cache en gång .

Men du kan behöva göra en kodgranskning för att ta reda på vad dessa frågor är, och regelbundet uppdatera ditt cache-förladdningsskript om din kod ändras.



  1. Exekveringsprocess för Postgresql-funktioner

  2. Infoga sökvägen till en fil med \\ i mysql med java

  3. Återställ din WordPress-databas med WP-CLI

  4. SQL Server Hög tillgänglighet:Installera SQL Server-failover-klustrad instans del 2