4.1. Overview of Server-Side Programs
The MySQL server, mysqld, is the main program that does most of the work in a MySQL installation. The server is accompanied by several related scripts that perform setup operations when you install MySQL or that assist you in starting and stopping the server. This section provides an overview of the server and related programs. The following sections provide more detailed information about each of these programs.
Each MySQL program takes many different options. Most programs provide a --help option that you can use to get a description of the program's different options. For example, try mysqld --help.
You can override default option values for MySQL programs by specifying options on the command line or in an option file. Section 3.3, "Specifying Program Options."
The following list briefly describes the MySQL server and server-related programs:
The SQL daemon (that is, the MySQL server). To use client programs, mysqld must be running, because clients gain access to databases by connecting to the server. See Section 4.2, "mysqldThe MySQL Server."
A version of the server that includes additional features. See Section 4.3, "The mysqld-max Extended MySQL Server."
A server startup script. mysqld_safe attempts to start mysqld-max if it exists, and mysqld otherwise. See Section 4.4.1, "mysqld_safeMySQL Server Startup Script."
A server startup script. This script is used on systems that use System Vstyle run directories containing scripts that start system services for particular run levels. It invokes mysqld_safe to start the MySQL server. See Section 4.4.2, "mysql.serverMySQL Server Startup Script."
A server startup script that can start or stop multiple servers installed on the system. See Section 4.4.3, "mysqld_multiManage Multiple MySQL Servers." As of MySQL 5.0.3 (Unix-like systems) or 5.0.13 (Windows), an alternative to mysqld_multi is mysqlmanager, the MySQL Instance Manager. See Section 4.5, "mysqlmanagerThe MySQL Instance Manager."
This script creates the MySQL database and initializes the grant tables with default privileges. It is usually executed only once, when first installing MySQL on a system. See Section 2.9.2, "Unix Post-Installation Procedures."
This program is used after a MySQL upgrade operation. It updates the grant tables with any changes that have been made in newer versions of MySQL. See Section 4.6.1, "mysql_fix_privilege_tablesUpgrade MySQL System Tables."
Note: As of MySQL 5.0.19, this program has been superseded by mysql_upgrade.
This program is used after a MySQL upgrade operation. It checks tables for incompatibilities and repairs them if necessary, and updates the grant tables with any changes that have been made in newer versions of MySQL. See Section 4.6.2, "mysql_upgradeCheck Tables for MySQL Upgrade."
The MySQL Instance Manager, a program for monitoring and managing MySQL servers. See Section 4.5, "mysqlmanagerThe MySQL Instance Manager."
There are several other programs that are run on the server host:
This program makes a binary release of a compiled MySQL. This could be sent by FTP to /pub/mysql/upload/ on ftp.mysql.com for the convenience of other MySQL users.