Sign up ×
Database Administrators Stack Exchange is a question and answer site for database professionals who wish to improve their database skills and learn from others in the community. It's 100% free, no registration required.

I have the following in my ~/.my.cnf


but this is not the password I use for every user@host/database I connect to. Is there some way to specify in the config different passwords for different things so I don't have to type them in?

share|improve this question
[User @DTest answered a question like this in May of this year][1] [1]:… – RolandoMySQLDBA Jul 15 '11 at 19:32

3 Answers 3

up vote 21 down vote accepted

As I answered here, you can add a section for each user/host/db you connect to using the syntax in your ~/.my.cnf:

[clienthost1]   # Note: client + host1

Once this is in your user's .my.cnf, you can utilize it by doing this on a command line:

$ mysql --defaults-group-suffix=host1
share|improve this answer
As promised, +1 !!! – RolandoMySQLDBA Aug 23 '11 at 15:42
Could you explain this --defaults-group-suffix? – Otheus Oct 8 at 14:09

Put clear passwords in text files is not recommended since mysql 5.6.6.

You can use mysql_config_editor to save passwords encrypted also to provide different passwords for different connections

share|improve this answer
Security by obscurity... – Federico Razzoli Jun 18 at 14:04
+1 for mentioning mysql_config_editor – RolandoMySQLDBA Jun 18 at 16:26

The other answer is correct. Unfortunately mysqladmin doesn't support --defaults-group-suffix (at least not the version I'm using).

Hence I resorted to using --defaults-file=HOST.cnf instead, which works for both mysql and mysqladmin (and mysqldump).

share|improve this answer
Adding this to my .bash_profile made it even easier: alias my-host='mysql --defaults-file=HOST.cnf' – spyle Oct 20 at 13:59

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.