Bug #68906 mysqlfrm does not pass --user argument properly
Submitted: 9 Apr 2013 22:55 Modified: 12 Jun 2013 7:14
Reporter: Todd Farmer (OCA) Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Utilities Severity:S3 (Non-critical)
Version:1.3.0 OS:Windows
Assigned to: CPU Architecture:Any

[9 Apr 2013 22:55] Todd Farmer
Description:
When --user is specified for mysqlfrm, it's my expectation that this is the same user account that should be passed to mysqld in the bootstrap process.  That seems to not be the case:

C:\Program Files\MySQL\MySQL Utilities>mysqlfrm --basedir=D:\mysql-advanced-5.6.
10-win32 D:\mysql-advanced-5.6.10-win32\data\mysql\user.frm --port=3004 --user=t
ofarmer -vvv
# Checking read access to .frm files
# Creating a temporary datadir = c:\docume~1\tofarmer\locals~1\temp\tmpf2wk_d
# Starting the spawned server on port 3004 ...
# Cloning the MySQL server located at D:\mysql-advanced-5.6.10-win32.
# Configuring new instance...
# Locating mysql tools...
# Location of files:
#                       mysqld: D:\mysql-advanced-5.6.10-win32\bin\mysqld.exe
#                   mysqladmin: D:\mysql-advanced-5.6.10-win32\bin\mysqladmin.ex
e
#      mysql_system_tables.sql: D:\mysql-advanced-5.6.10-win32\share\mysql_syste
m_tables.sql
# mysql_system_tables_data.sql: D:\mysql-advanced-5.6.10-win32\share\mysql_syste
m_tables_data.sql
# mysql_test_data_timezone.sql: D:\mysql-advanced-5.6.10-win32\share\mysql_test_
data_timezone.sql
#         fill_help_tables.sql: D:\mysql-advanced-5.6.10-win32\share\fill_help_t
ables.sql
# Setting up empty database and mysql tables...
2013-04-09 14:14:53 0 [Warning] TIMESTAMP with implicit DEFAULT value is depreca
ted. Please use --explicit_defaults_for_timestamp server option (see documentati
on for more details).
# Starting new instance of the server...
# Startup command for new server:
D:\mysql-advanced-5.6.10-win32\bin\mysqld.exe --no-defaults  --user=root --datad
ir=c:\docume~1\tofarmer\locals~1\temp\tmpf2wk_d --tmpdir=c:\docume~1\tofarmer\lo
cals~1\temp\tmpf2wk_d  --pid-file=c:\docume~1\tofarmer\locals~1\temp\tmpf2wk_d\c
lone.pid --port=3004 --server-id=101 --basedir=D:\mysql-advanced-5.6.10-win32 --
socket=c:\docume~1\tofarmer\locals~1\temp\tmpf2wk_d/mysql.sock
# Testing connection to new instance...
2013-04-09 14:15:12 0 [Warning] TIMESTAMP with implicit DEFAULT value is depreca
ted. Please use --explicit_defaults_for_timestamp server option (see documentati
on for more details).
# trying again...
# trying again...
# trying again...
# trying again...
# trying again...
# trying again...
# trying again...
# trying again...
# trying again...
# trying again...
ERROR: Unable to communicate with new instance.

C:\Program Files\MySQL\MySQL Utilities>

How to repeat:
See above.

Suggested fix:
Ensure --user argument passed to mysqlfrm is used in starting mysqld.
[12 Jun 2013 7:14] Philip Olson
Fixed as of the upcoming MySQL Utilities 1.3.2 release, and here's the changelog entry:

The "mysqlfrm" utility now respects the "--user" option.

Thank you for the bug report.