Bug #73210 mysqldump fails on shard_split because password is not used
Submitted: 6 Jul 2014 1:17 Modified: 13 Jan 2015 7:52
Reporter: Fernando Ipar (OCA) Email Updates:
Status: Duplicate Impact on me:
Category:MySQL Fabric Severity:S3 (Non-critical)
Version:1.4.3-1 OS:Any
Assigned to: Assigned Account CPU Architecture:Any

[6 Jul 2014 1:17] Fernando Ipar
Given these lines in fabric.cfg: 

user                            = fabric
password                        = f4bric

an attempt to split a shard fails with this error: 

vagrant@store ~]$ mysqlfabric sharding split_shard 1 salaries-3 --split_value=8000
Procedure :
{ uuid        = 901854ba-d2af-4a7e-a435-dd152e54cfdd,
  finished    = True,
  success     = False,
  return      = BackupError: ('Error while taking backup using MySQLDump\n, %s', "mysqldump: Got error: 1045: Access denied for user 'fabric'@'' (using password: NO) when trying to connect\n"),
  activities  = 

Other commands such as group promote or add_shard work ok

How to repeat:
Attempt to split a shard in a setup where the mysql user used to connect to servers has a password.
[30 Jul 2014 14:39] Mats Kindahl
Hi Fernando,

Thank you for the bug report.

The clients called from MySQL Fabric does not use the password in the "servers" section of the configuration file, but will use the password in the "client" section instead.

The reason for this is that the password should not be given on the command-line and be visible in, e.g., the ps(1) output, so instead the fabric.cfg file is used as if it was a .cnf file and passed using the --defaults-extra-file option to the command.

Could you try setting the password in the "client" section instead and see if it solves the problem?
[9 Oct 2014 19:24] Mats Kindahl
Hi Fernando.

I assume that the suggestion above solved the problem, so similar to BUG#73211 I interpret this bug as a feature request to merge the two sections into one and always use that for contacting the managed servers.
[9 Oct 2014 22:07] Fernando Ipar
Hello Mats, 

As with the other bug, I agree this is a good solution for my problem.