Mam zainstalowany serwer MySQL w wersji 5.1.54 w systemie Windows 7 Enterprise i mam niespójne wartości zmiennej max_allowed_packet. Zmieniłem zmienną w my.ini:
max_allowed_packet=1024M
Kiedy uruchamiam mysql --help, na końcu wyjścia znajduje się lista zmiennych i ich wartości. Wartość max_allowed_packet jest wymieniona jako:
max_allowed_packet 16777216
Gdy zamiast tego uruchamiam mysqldump --help, wyświetla on wartość max_allowed_packet jako:
max_allowed_packet 25165824
Jednak po zalogowaniu się przy użyciu pliku wykonywalnego mysql otrzymuję to:
mysql> SHOW VARIABLES LIKE 'max_allowed_packet';
+--------------------+------------+
| Variable_name | Value |
+--------------------+------------+
| max_allowed_packet | 1073741824 |
+--------------------+------------+
1 row in set (0.00 sec)
Ten sam serwer wyświetla trzy różne wartości tej zmiennej. Zarówno mysql --help, jak i mysqldump --help wyświetlają kolejność czytania ich konfiguracji i są one równe.
C:\mysql --help
...
Default options are read from the following files in the given order:
C:\Windows\my.ini C:\Windows\my.cnf C:\my.ini C:\my.cnf C:\Program Files\MySQL\MySQL Server 5.1\my.ini C:\Program Files\MySQL\MySQL Server 5.1\my.cnf
C:\mysqldump --help
...
Default options are read from the following files in the given order:
C:\Windows\my.ini C:\Windows\my.cnf C:\my.ini C:\my.cnf C:\Program Files\MySQL\MySQL Server 5.1\my.ini C:\Program Files\MySQL\MySQL Server 5.1\my.cnf
Tylko C: Program Files MySQL MySQL Server 5.1 My.ini istnieje na liście plików konfiguracyjnych i rzeczywiście zawiera ustawienie 1024M.
Jakieś pomysły na wyjaśnienie tego zachowania?