Mysql: модификация в my.cnf не вступает в силу

я обновил my.cnf файл моей базы данных со следующей строкой:max_connections=200. После этого я остановился и запустил службу mysql, чтобы изменения вступили в силу.

но почему-то это изменение не влияет на базу данных, потому что если я запускаю:

mysql> select @@max_connections

Это показывает, что максимальное количество соединений-100.

очевидно, что есть еще какое-то место, которое управляет этим значением. Где я могу его найти или что я сделал? не так?

Спасибо за ваш ответ.

5 ответов


убедитесь, что max_connections в разделе [mysqld]:

Ex:

[mysqld]
socket=/path/to/mysql.sock
datadir=/var/lib/mysql
max_connections=200

[client]
#mysql-client settings here..

попробуй mysqld --verbose --help чтобы увидеть, какой файл конфигурации фактически считывается mysqld и какие параметры и значения используются. Вывод будет выглядеть следующим образом:

mysqld  Ver 5.0.51a-24-log for debian-linux-gnu on x86_64 ((Debian))
Copyright (C) 2000 MySQL AB, by Monty and others
This software comes with ABSOLUTELY NO WARRANTY. This is free software,
and you are welcome to modify and redistribute it under the GPL license

Default options are read from the following files in the given order:
/etc/mysql/my.cnf ~/.my.cnf /usr/etc/my.cnf
The following groups are read: mysql_cluster mysqld server mysqld-5.0

Variables (--variable-name=value)
and boolean options {FALSE|TRUE}  Value (after reading options)
--------------------------------- -----------------------------
...

To see what values a running MySQL server is using, type
'mysqladmin variables' instead of 'mysqld --verbose --help'.


Это может иметь отношение к " как " сервер mysql выключается и перезапускается. В моей системе, если я использую службу демона mysqld для выключения mysql (например, Service mysqld stop), я получаю уведомление о завершении работы, но ps показывает, что mysql все еще работает. Используя аналогичный "перезапуск mysqld службы", некоторые изменения в my.файл CNF, но многие этого не делают.

другой метод выключения mysql-использовать mysqladmin-u user-pPass shutdown. Я заметил, когда я использовал этот метод, mysql был выключен полностью (не осталось за кадром в ps), и когда я перезапустил сервер mysql, все изменения в my.файл cnf был принят.


изменения в mysqld не обязательно отражаются в клиенте mysql! Я изменил назначение глобальной переменной в моем.cnf, перезапустил службу и запросил ее в клиенте mysql. Он вернул старое значение. Однако при запросе из скрипта значение было фактически изменено!


Если mysql запускается как Служба окон, проверьте параметр "путь к исполняемому файлу" в службе windows. (Услуги - > MYSQL56 - > свойства).

Если параметр --defaults-file передан, он может указывать на совершенно другое .ini-файл в месте, которое не отображается с "mysqld --verbose --help".

Если вы удалите параметр --defaults-file из параметров запуска службы, он будет проходить через список ini-файлов, перечисленных с mysqld --verbose --помогать.