mysql polecenie do wyświetlania aktualnych zmiennych konfiguracyjnych


122

Nie można znaleźć polecenia wyświetlającego bieżącą konfigurację mysql z poziomu bazy danych.

Wiem, że mógłbym spojrzeć na /etc/mysql/my.cnf, ale to nie jest to, czego potrzebuję.

Odpowiedzi:


222

To, czego szukasz, to:

SHOW VARIABLES;  

Możesz go dalej modyfikować jak każde zapytanie:

SHOW VARIABLES LIKE '%max%';  


2

Alternatywnie możesz również wysłać zapytanie do information_schemabazy danych i pobrać dane z global_variables(i global_statusoczywiście również). Takie podejście zapewnia te same informacje, ale daje możliwość zrobienia więcej z wynikami, ponieważ jest to zwykłe, stare zapytanie.

Na przykład możesz przekonwertować jednostki, aby były bardziej czytelne. Poniższe zapytanie zawiera bieżące ustawienie globalne innodb_log_buffer_sizew bajtach i megabajtach:

SELECT
  variable_name,
  variable_value AS innodb_log_buffer_size_bytes,
  ROUND(variable_value / (1024*1024)) AS innodb_log_buffer_size_mb
FROM information_schema.global_variables
WHERE variable_name LIKE  'innodb_log_buffer_size';

W rezultacie otrzymujesz:

+------------------------+------------------------------+---------------------------+
| variable_name          | innodb_log_buffer_size_bytes | innodb_log_buffer_size_mb |
+------------------------+------------------------------+---------------------------+
| INNODB_LOG_BUFFER_SIZE | 268435456                    |                       256 |
+------------------------+------------------------------+---------------------------+
1 row in set (0,00 sec)
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.