Documentation Home
MySQL 8.0 Reference Manual
Related Documentation Download this Manual
PDF (US Ltr) - 42.4Mb
PDF (A4) - 42.5Mb
Man Pages (TGZ) - 271.6Kb
Man Pages (Zip) - 382.9Kb
Info (Gzip) - 4.2Mb
Info (Zip) - 4.2Mb
Excerpts from this Manual

MySQL 8.0 Reference Manual  /  Installing and Upgrading MySQL  /  Installing MySQL on FreeBSD

2.8 Installing MySQL on FreeBSD

This section provides information about installing MySQL on variants of FreeBSD Unix.

You can install MySQL on FreeBSD by using the binary distribution provided by Oracle. For more information, see Section 2.2, “Installing MySQL on Unix/Linux Using Generic Binaries”.

The easiest (and preferred) way to install MySQL is to use the mysql-server and mysql-client ports available at Using these ports gives you the following benefits:

  • A working MySQL with all optimizations enabled that are known to work on your version of FreeBSD.

  • Automatic configuration and build.

  • Startup scripts installed in /usr/local/etc/rc.d.

  • The ability to use pkg_info -L to see which files are installed.

  • The ability to use pkg_delete to remove MySQL if you no longer want it on your machine.

The MySQL build process requires GNU make (gmake) to work. If GNU make is not available, you must install it first before compiling MySQL.


Prerequisite libraries as per ldd mysqld: libthr, libcrypt, libkrb5, libm, librt, libexecinfo, libunwind, and libssl.

To install using the ports system:

# cd /usr/ports/databases/mysql80-server
# make
# cd /usr/ports/databases/mysql80-client
# make

The standard port installation places the server into /usr/local/libexec/mysqld, with the startup script for the MySQL server placed in /usr/local/etc/rc.d/mysql-server.

Some additional notes on the BSD implementation:

  • To remove MySQL after installation using the ports system:

    # cd /usr/ports/databases/mysql80-server
    # make deinstall
    # cd /usr/ports/databases/mysql80-client
    # make deinstall
  • If you get problems with the current date in MySQL, setting the TZ variable should help. See Section 4.9, “Environment Variables”.