Poster of Linux kernelThe best gift for a Linux geek


Section: MySQL Database System (1) Updated: 11/29/2010
Local index Up


mysql_config - get compile options for compiling clients  


mysql_config options



provides you with useful information for compiling your MySQL client and connecting it to MySQL.

mysql_config supports the following options.


Compiler flags to find include files and critical compiler flags and defines used when compiling the libmysqlclient library. The options returned are tied to the specific compiler that was used when the library was created and might clash with the settings for your own compiler. Use --include for more portable options that contain only include paths.


Compiler options to find MySQL include files.

--libmysqld-libs, --embedded

Libraries and options required to link with the MySQL embedded server.


Libraries and options required to link with the MySQL client library.


Libraries and options required to link with the thread-safe MySQL client library.


The default plugin directory path name, defined when configuring MySQL. This option was added in MySQL 5.1.24.


The default TCP/IP port number, defined when configuring MySQL.


The default Unix socket file, defined when configuring MySQL.


Version number for the MySQL distribution.

If you invoke mysql_config with no options, it displays a list of all options that it supports, and their values:

shell> mysql_config
Usage: /usr/local/mysql/bin/mysql_config [options]
  --cflags         [-I/usr/local/mysql/include/mysql -mcpu=pentiumpro]
  --include        [-I/usr/local/mysql/include/mysql]
  --libs           [-L/usr/local/mysql/lib/mysql -lmysqlclient -lz
                    -lcrypt -lnsl -lm -L/usr/lib -lssl -lcrypto]
  --libs_r         [-L/usr/local/mysql/lib/mysql -lmysqlclient_r
                    -lpthread -lz -lcrypt -lnsl -lm -lpthread]
  --socket         [/tmp/mysql.sock]
  --port           [3306]
  --version        [4.0.16]
  --libmysqld-libs [-L/usr/local/mysql/lib/mysql -lmysqld -lpthread -lz
                    -lcrypt -lnsl -lm -lpthread -lrt]

You can use mysql_config within a command line to include the value that it displays for a particular option. For example, to compile a MySQL client program, use mysql_config as follows:

shell> CFG=/usr/local/mysql/bin/mysql_config
shell> sh -c "gcc -o progname `$CFG --include` progname.c `$CFG --libs`"

When you use mysql_config this way, be sure to invoke it within backtick ("`") characters. That tells the shell to execute it and substitute its output into the surrounding command.  


Copyright © 1997, 2010, Oracle and/or its affiliates. All rights reserved.

This documentation is free software; you can redistribute it and/or modify it only under the terms of the GNU General Public License as published by the Free Software Foundation; version 2 of the License.

This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or see



For more information, please refer to the MySQL Reference Manual, which may already be installed locally and which is also available online at  


Oracle Corporation (




This document was created by man2html, using the manual pages.
Time: 21:24:10 GMT, April 16, 2011