## 2.3 Installing MySQL on Microsoft Windows

[2.3.1 MySQL Installation Layout on Microsoft Windows](windows-installation-layout.html)
[2.3.2 Choosing an Installation Package](windows-choosing-package.html)
[2.3.3 MySQL Installer for Windows](mysql-installer.html)
[2.3.4 Installing MySQL on Microsoft Windows Using a`noinstall` ZIP Archive](windows-install-archive.html)
[2.3.5 Troubleshooting a Microsoft Windows MySQL Server Installation](windows-troubleshooting.html)
[2.3.6 Windows Postinstallation Procedures](windows-postinstallation.html)
[2.3.7 Windows Platform Restrictions](windows-restrictions.html)

Important

 MySQL 8.0 Server requires the Microsoft Visual C++ 2019 Redistributable Package to run on Windows platforms. Users should make sure the package has been installed on the system before installing the server. The package is available at the [Microsoft Download Center](http://www.microsoft.com/en-us/download/default.aspx). Additionally, MySQL debug binaries require Visual Studio 2019 to be installed.

 MySQL is available for Microsoft Windows 64-bit operating systems only. For supported Windows platform information, see [https://www.mysql.com/support/supportedplatforms/database.html](https://www.mysql.com/support/supportedplatforms/database.html).

 There are different methods to install MySQL on Microsoft Windows.

### MySQL Installer Method

 The simplest and recommended method is to download MySQL Installer (for Windows) and let it install and configure a specific version of MySQL Server as follows:

1. Download MySQL Installer from [https://dev.mysql.com/downloads/installer/](https://dev.mysql.com/downloads/installer/) and execute it.

   Note

    Unlike the standard MySQL Installer, the smaller `web-community` version does not bundle any MySQL applications, but downloads only the MySQL products you choose to install.

2. Determine the setup type to use for the initial installation of MySQL products. For example:

   * Developer Default: Provides a setup type that includes the selected version of MySQL Server and other MySQL tools related to MySQL development, such as MySQL Workbench.

   * Server Only: Provides a setup for the selected version of MySQL Server without other products.

   * Custom: Enables you to select any version of MySQL Server and other MySQL products.

3. Install the server instance (and products) and then begin the server configuration by following the onscreen instructions. For more information about each individual step, see [Section 2.3.3.3.1, “MySQL Server Configuration with MySQL Installer”](mysql-installer-workflow.html#mysql-installer-workflow-server).

 MySQL is now installed. If you configured MySQL as a service, then Windows automatically starts the MySQL server every time you restart the system. Also, this process installs the MySQL Installer application on the local host, which you can use later to upgrade or reconfigure MySQL server.

Note

 If you installed MySQL Workbench on your system, consider using it to check your new MySQL server connection. By default, the program automatically start after installing MySQL.

### Additional Installation Information

 It is possible to run MySQL as a standard application or as a Windows service. By using a service, you can monitor and control the operation of the server through the standard Windows service management tools. For more information, see [Section 2.3.4.8, “Starting MySQL as a Windows Service”](windows-start-service.html).

 To accommodate the [`RESTART`](restart.html) statement, the MySQL server forks when run as a service or standalone, to enable a monitor process to supervise the server process. In this case, there are two [**mysqld**](mysqld.html) processes. If [`RESTART`](restart.html) capability is not required, the server can be started with the [`--no-monitor`](server-options.html#option_mysqld_no-monitor) option. See [Section 13.7.8.8, “RESTART Statement”](restart.html).

 Generally, you should install MySQL on Windows using an account that has administrator rights. Otherwise, you may encounter problems with certain operations such as editing the `PATH` environment variable or accessing the **Service Control Manager**. When installed, MySQL does not need to be executed using a user with Administrator privileges.

 For a list of limitations on the use of MySQL on the Windows platform, see [Section 2.3.7, “Windows Platform Restrictions”](windows-restrictions.html).

 In addition to the MySQL Server package, you may need or want additional components to use MySQL with your application or development environment. These include, but are not limited to:

* To connect to the MySQL server using ODBC, you must have a Connector/ODBC driver. For more information, including installation and configuration instructions, see [MySQL Connector/ODBC Developer Guide](https://dev.mysql.com/doc/connector-odbc/en/).

  Note

   MySQL Installer installs and configures Connector/ODBC for you.

* To use MySQL server with .NET applications, you must have the Connector/NET driver. For more information, including installation and configuration instructions, see [MySQL Connector/NET Developer Guide](https://dev.mysql.com/doc/connector-net/en/).

  Note

   MySQL Installer installs and configures MySQL Connector/NET for you.

 MySQL distributions for Windows can be downloaded from [https://dev.mysql.com/downloads/](https://dev.mysql.com/downloads/). See [Section 2.1.3, “How to Get MySQL”](getting-mysql.html).

 MySQL for Windows is available in several distribution formats, detailed here. Generally speaking, you should use MySQL Installer. It contains more features and MySQL products than the older MSI, is simpler to use than the compressed file, and you need no additional tools to get MySQL up and running. MySQL Installer automatically installs MySQL Server and additional MySQL products, creates an options file, starts the server, and enables you to create default user accounts. For more information on choosing a package, see [Section 2.3.2, “Choosing an Installation Package”](windows-choosing-package.html).

* A MySQL Installer distribution includes MySQL Server and additional MySQL products including MySQL Workbench, and MySQL for Visual Studio. MySQL Installer can also be used to upgrade these products in the future (see [https://dev.mysql.com/doc/mysql-compat-matrix/en/](https://dev.mysql.com/doc/mysql-compat-matrix/en/)).

   For instructions on installing MySQL using MySQL Installer, see [Section 2.3.3, “MySQL Installer for Windows”](mysql-installer.html).

* The standard binary distribution (packaged as a compressed file) contains all of the necessary files that you unpack into your chosen location. This package contains all of the files in the full Windows MSI Installer package, but does not include an installation program.

   For instructions on installing MySQL using the compressed file, see [Section 2.3.4, “Installing MySQL on Microsoft Windows Using a `noinstall` ZIP Archive”](windows-install-archive.html).

* The source distribution format contains all the code and support files for building the executables using the Visual Studio compiler system.

   For instructions on building MySQL from source on Windows, see [Section 2.9, “Installing MySQL from Source”](source-installation.html).

### MySQL on Windows Considerations

* **Large Table Support**

   If you need tables with a size larger than 4GB, install MySQL on an NTFS or newer file system. Do not forget to use `MAX_ROWS` and `AVG_ROW_LENGTH` when you create tables. See [Section 13.1.20, “CREATE TABLE Statement”](create-table.html).

* **MySQL and Virus Checking Software**

   Virus-scanning software such as Norton/Symantec Anti-Virus on directories containing MySQL data and temporary tables can cause issues, both in terms of the performance of MySQL and the virus-scanning software misidentifying the contents of the files as containing spam. This is due to the fingerprinting mechanism used by the virus-scanning software, and the way in which MySQL rapidly updates different files, which may be identified as a potential security risk.

   After installing MySQL Server, it is recommended that you disable virus scanning on the main directory ([`datadir`](server-system-variables.html#sysvar_datadir)) used to store your MySQL table data. There is usually a system built into the virus-scanning software to enable specific directories to be ignored.

   In addition, by default, MySQL creates temporary files in the standard Windows temporary directory. To prevent the temporary files also being scanned, configure a separate temporary directory for MySQL temporary files and add this directory to the virus scanning exclusion list. To do this, add a configuration option for the [`tmpdir`](server-options.html#option_mysqld_tmpdir) parameter to your `my.ini` configuration file. For more information, see [Section 2.3.4.2, “Creating an Option File”](windows-create-option-file.html).

