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. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

There are multiple sections in MySQL configuration file:

  • [mysql]
  • [mysqld]
  • [myisamchk]
  • [mysqld_safe]
  • [mysqlhotcopy]
  • [mysqldump]
  • [client]

I found that same variables with different values have been defined under these sections.

  • What are the specific purpose behind defining these sections?
  • Is it necessary to define all?
  • How MySQL interprets these variables?
share|improve this question
up vote 1 down vote accepted

MySQL calls these section "Groups". The [mysqld] group contains the variables apply to the MySQL Server (the mysqld process). The [mysql] group contains the variables for the client program (mysql).

The [client] option group is read by all client programs (but not by mysqld), so "mysql", "mysqldump" etc...

None of these groups are mandatory but usually we set at least the [mysqld] because it's where we configure the server.

About how MySQL interprets these variables, MySQL Documentation says:

If an option group name is the same as a program name, options in the group apply specifically to that program.


share|improve this answer
Can you provide me the MySQL documentation link referring the your highlighted statement ? – ursitesion Apr 27 '14 at 14:45

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.