Bug #17953 Use my.cnf to enable the IM instead of having to hack the init.script
Submitted: 6 Mar 2006 8:29 Modified: 11 Apr 2006 17:51
Reporter: Lenz Grimmer Email Updates:
Status: Closed Impact on me:
None 
Category:Instance Manager Severity:S3 (Non-critical)
Version:5.1 OS:Unix
Assigned to: Alexander Nozdrin CPU Architecture:Any

[6 Mar 2006 8:29] Lenz Grimmer
Description:
Currently, one has to modify the mysql.server init script and change "use_mysqld_safe" to "0" to enable the usage of the Instance Manager. This script is being installed as /etc/init.d/mysql for the Linux RPM builds.

Having to edit the startup script is a bit suboptimal, as the init script is not marked as a configuration file and will be replaced everytime the MySQL RPM is being updated, which will result that one has to edit the script again after each update.

How to repeat:
Enable the IM in /etc/init.d/mysql and perform an update. Observe that the mysqld_safe wrapper script will be enabled again, as /etc/init.d/mysql is not a configuration file and will be replaced during the upate.

Suggested fix:
Instead of having to mess with the init script, please consider adding an option to /etc/my.cnf that will enable the IM, if set. Example: "use-manager=yes". As my.cnf is the canonical configuration file for MySQL, this is the place this option belongs to. The init script should not be used to change the configuration.
[6 Mar 2006 8:38] Valeriy Kravchuk
Isn't it a feature request?
[6 Mar 2006 8:49] Lenz Grimmer
No, I actually consider it a bug - you should not have to edit the init script to change a configuration option (changing between the IM and mysqld_safe). If one wants to edit the configuration, it should be done in my.cnf, not in other scripts.
[27 Mar 2006 14:54] Konstantin Osipov
Lenz,
this wasn't designed to be a configurable option. The instance manager is not an option, it's a replacement for mysqld_safe. It's mysqld_safe compatible only to ease the transition.
I'm not seeing it fixed in foreseeable future.
[2 Apr 2006 19:10] Beat Vontobel
I completely agree with Lenz, however at least in 5.0.19 this seems to be solved already. Just add use-manager to /etc/my.cnf and the init.d script will parse this setting and use the instance manager. I checked the code of the script and found the according lines, and for me it works (or did I get something wrong?).
[3 Apr 2006 20:01] Lenz Grimmer
Good spotting, Beat! You are in fact correct - adding the following to /etc/my.cnf will use the instance manager by default, without the need to edit /etc/init.d/mysql directly:

[mysql.server]
use-manager

So this bug has been resolved already, but it was not properly documented.
Could this please be added to the Instance Manager Documentation?
[11 Apr 2006 17:51] Mike Hillyer
Documented, noted feature as effective 5.0.19.