This section covers the installation of MySQL binary distributions
      that are provided for various platforms in the form of compressed
      tar files (files with a
      .tar.gz extension). See
      Section 2.1.2.5, “MySQL Binaries Compiled by MySQL AB”, for a detailed list.
    
To obtain MySQL, see Section 2.1.3, “How to Get MySQL”.
      MySQL tar file binary distributions have names
      of the form
      mysql-,
      where VERSION-OS.tar.gzVERSION5.0.23), and
      OS indicates the type of operating
      system for which the distribution is intended (for example,
      pc-linux-i686).
    
In addition to these generic packages, we also offer binaries in platform-specific package formats for selected platforms. See Section 2.2, “Standard MySQL Installation Using a Binary Distribution”, for more information on how to install these.
You need the following tools to install a MySQL tar file binary distribution:
          GNU gunzip to uncompress the distribution.
        
A reasonable tar to unpack the distribution. GNU tar is known to work. Some operating systems come with a pre-installed version of tar that is known to have problems. For example, Mac OS X tar and Sun tar are known to have problems with long filenames. On Mac OS X, you can use the pre-installed gnutar program. On other systems with a deficient tar, you should install GNU tar first.
If you run into problems and need to file a bug report, please use the instructions in Section 1.8, “How to Report Bugs or Problems”.
The basic commands that you must execute to install and use a MySQL binary distribution are:
shell>groupadd mysqlshell>useradd -g mysql mysqlshell>cd /usr/localshell>gunzip <shell>/path/to/mysql-VERSION-OS.tar.gz | tar xvf -ln -sshell>full-path-to-mysql-VERSION-OSmysqlcd mysqlshell>scripts/mysql_install_db --user=mysqlshell>chown -R root .shell>chown -R mysql datashell>chgrp -R mysql .shell>bin/mysqld_safe --user=mysql &
Note: This procedure does not set up any passwords for MySQL accounts. After following the procedure, proceed to Section 2.10, “Post-Installation Setup and Testing”.
A more detailed version of the preceding description for installing a binary distribution follows:
Add a login user and group for mysqld to run as:
shell>groupadd mysqlshell>useradd -g mysql mysql
          These commands add the mysql group and the
          mysql user. The syntax for
          useradd and groupadd may
          differ slightly on different versions of Unix, or they may
          have different names such as adduser and
          addgroup.
        
          You might want to call the user and group something else
          instead of mysql. If so, substitute the
          appropriate name in the following steps.
        
          Pick the directory under which you want to unpack the
          distribution and change location into it. In the following
          example, we unpack the distribution under
          /usr/local. (The instructions, therefore,
          assume that you have permission to create files and
          directories in /usr/local. If that
          directory is protected, you must perform the installation as
          root.)
        
shell> cd /usr/local
Obtain a distribution file using the instructions in Section 2.1.3, “How to Get MySQL”. For a given release, binary distributions for all platforms are built from the same MySQL source distribution.
Unpack the distribution, which creates the installation directory. Then create a symbolic link to that directory:
shell>gunzip <shell>/path/to/mysql-VERSION-OS.tar.gz | tar xvf -ln -sfull-path-to-mysql-VERSION-OSmysql
          The tar command creates a directory named
          mysql-.
          The VERSION-OSln command makes a symbolic link to
          that directory. This lets you refer more easily to the
          installation directory as
          /usr/local/mysql.
        
          With GNU tar, no separate invocation of
          gunzip is necessary. You can replace the
          first line with the following alternative command to
          uncompress and extract the distribution:
        
shell> tar zxvf /path/to/mysql-VERSION-OS.tar.gz
Change location into the installation directory:
shell> cd mysql
          You will find several files and subdirectories in the
          mysql directory. The most important for
          installation purposes are the bin and
          scripts subdirectories:
        
              The bin directory contains client
              programs and the server. You should add the full pathname
              of this directory to your PATH
              environment variable so that your shell finds the MySQL
              programs properly. See
              Appendix F, Environment Variables.
            
              The scripts directory contains the
              mysql_install_db script used to
              initialize the mysql database
              containing the grant tables that store the server access
              permissions.
            
If you have not installed MySQL before, you must create the MySQL grant tables:
shell> scripts/mysql_install_db --user=mysql
          If you run the command as root, you must
          use the --user option as shown. The value of
          the option should be the name of the login account that you
          created in the first step to use for running the server. If
          you run the command while logged in as that user, you can omit
          the --user option.
        
After creating or updating the grant tables, you need to restart the server manually.
          Change the ownership of program binaries to
          root and ownership of the data directory to
          the user that you run mysqld as. Assuming
          that you are located in the installation directory
          (/usr/local/mysql), the commands look
          like this:
        
shell>chown -R root .shell>chown -R mysql datashell>chgrp -R mysql .
          The first command changes the owner attribute of the files to
          the root user. The second changes the owner
          attribute of the data directory to the
          mysql user. The third changes the group
          attribute to the mysql group.
        
          If you want MySQL to start automatically when you boot your
          machine, you can copy
          support-files/mysql.server to the location
          where your system has its startup files. More information can
          be found in the support-files/mysql.server
          script itself and in Section 2.10.2.2, “Starting and Stopping MySQL Automatically”.
        
          
          
          
          You can set up new accounts using the
          bin/mysql_setpermission script if you
          install the DBI and
          DBD::mysql Perl modules. For instructions,
          see Section 2.14, “Perl Installation Notes”.
        
          If you would like to use mysqlaccess and
          have the MySQL distribution in some non-standard location, you
          must change the location where mysqlaccess
          expects to find the mysql client. Edit the
          bin/mysqlaccess script at approximately
          line 18. Search for a line that looks like this:
        
$MYSQL = '/usr/local/bin/mysql'; # path to mysql executable
          Change the path to reflect the location where
          mysql actually is stored on your system. If
          you do not do this, a Broken pipe error
          will occur when you run mysqlaccess.
        
After everything has been unpacked and installed, you should test your distribution. To start the MySQL server, use the following command:
shell> bin/mysqld_safe --user=mysql &
      If that command fails immediately and prints mysqld
      ended, you can find some information in the
      host_name.err
More information about mysqld_safe is given in Section 5.4.1, “mysqld_safe — MySQL Server Startup Script”.
Note: The accounts that are listed in the MySQL grant tables initially have no passwords. After starting the server, you should set up passwords for them using the instructions in Section 2.10, “Post-Installation Setup and Testing”.