在启用MySQL多实例中,很多环境会选择使用mysqld_multi管理多实例,但不幸的是从MySQL 5.6 后,
mysqld_mutli不能把MySQL关掉了。
对于这个问题的处理办法,首先确认:
mysqladmin -h127.0.0.1 -P3307 -umdev -p shutdown
or
mysqladmin -S /tmp/mysql3307.sock -umdev -p shutdown
工作没问题。
创建用户:
create user ‘mdev’@’localhost’ identified by ‘mdev4admin’;
grant shutdown on *.* to ‘mdev’@’localhost’;
很幸运mysqld_multi是一个Perl脚本,找原因也方便,有兴趣参考后面的文档。
处理办法:
修改mysqld_mutli 把
my $com= join ' ', 'my_print_defaults ', @defaults_options, $group;
替换为:
my $com= join ' ', 'my_print_defaults -s', @defaults_options, $group;
调用mysqld_multi传入password
mysqld_multi stop 3307 --password=mdev4admin