Mysql
 sql >> Baza danych >  >> RDS >> Mysql

SERWER SQL — SQL_NO_CACHE i OPTION (RECOMPILE)

Jako programista i administrator baz danych, który często preferuje technologię, ale jeśli prowadzimy dużą organizację, musimy być bardziej przychylnie nastawieni do wszystkich technologii. Jeden z moich dużych klientów bankowych korzysta z wielu baz danych do wykonywania różnych transakcji. Korzystają również z wielu różnych rozwiązań do buforowania dla swojej działalności, a także z najwyższej klasy sprzętu. Odbyłem bardzo ciekawą rozmowę z moim klientem na temat tego, jak pobierać zapytania, a nie z pamięci podręcznej dla MySQL i SQL Server, omawialiśmy SQL_NO_CACHE i OPTION (RECOMPILE). Omówiliśmy podczas Kompleksowej kontroli stanu wydajności bazy danych .

Zobaczmy dzisiaj dwa różne przykłady dla MySQL i SQL Server. Obie relacyjne bazy danych wykorzystują zalety pamięci podręcznej, aby zwrócić nam dane. Zobaczmy, jak możemy napisać zapytanie, w którym nie będziemy używać wyników z pamięci podręcznej, ale bezpośrednio pobieramy nasze dane z dysku SQL Server, a nie z pamięci podręcznej.

Zapytanie SQL Server – OPCJA (RECOMPILE)

SELECT Columnname
FROM TableName
OPTION(RECOMPILE)

Zapytanie MySQL SQL_NO_CACHE

SELECT SQL_NO_CACHE Columnname
FROM TableName
OPTION(RECOMPILE)

Kiedy używasz SQL_NO_CACHE i OPTION (RECOMPILE), relacyjne bazy danych (odpowiednio MySQL i SQL Server) bezpośrednio pobierają dane z dysku, a nie to, co jest przechowywane w pamięci podręcznej.

Oto kilka odpowiednich postów na blogu na ten sam temat, które mogą Cię zainteresować.

  • SQL SERVER — Lista planu zapytań, rozmiar pamięci podręcznej, liczba tekstu i wykonań
  • SQL SERVER – znajdowanie najstarszego planu zapytań z pamięci podręcznej
  • SQL SERVER — zaplanuj pamięć podręczną i pamięć podręczną danych w pamięci
  • SQL SERVER – procedura składowana – czyszczenie pamięci podręcznej i czyszczenie bufora
  • SQL SERVER – usuń wszystkie plany z pamięci podręcznej zapytań, które nie były używane w określonym okresie
  • SQL SERVER – Skrypt do pobrania skompilowanego planu z parametrami z pamięci podręcznej
  • SQL SERVER — pamięć podręczna planu — pobieranie i usuwanie — prosty skrypt
  • SQL SERVER – 2017 – Skrypt do czyszczenia pamięci podręcznej procedur na poziomie bazy danych

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Czy możliwe jest grupowanie według wielu kolumn przy użyciu MySQL?

  2. Czy przechowywanie nazw użytkowników i haseł w bazie danych jest bezpieczne?

  3. Doctrine Query Language pobierz maks./najnowszy wiersz na grupę

  4. Lista procedur/funkcji składowanych Wiersz poleceń Mysql

  5. Dlaczego otrzymuję Nie można przekazać parametru 2 przez błąd odniesienia, gdy używam bindParam ze stałą wartością?