MySQL Installer provides a wizard-like tool to install and configure new MySQL products for Windows. Unlike the initial setup, which runs only once, MySQL Installer invokes the wizard each time you download or install a new product. For first-time installations, the steps of the initial setup proceed directly into the steps of the installation.
Full permissions are granted to the user executing MySQL Installer to all
generated files, such as
my.ini. This does
not apply to files and directories for specific products, such
as the MySQL server data directory in
%ProgramData% that is owned by
Products installed and configured on a host follow a general pattern that might require your input during the various steps. MySQL Installer loads all selected products together using the following workflow:
Product download. If you installed the full (not web) MySQL Installer package, all MSI files were loaded to the
Product Cachefolder during the initial setup and are not downloaded again. Otherwise, the status of each product changes from
Product installation. The status of each product in the list changes from
Ready to Installto
Complete. During the process, click Show Details to view the installation actions.
If you cancel the installation at this point, the products are installed, but the server (if installed) is not yet configured. To restart the server configuration, open MySQL Installer from the Start menu and click the Reconfigure link next to the appropriate server in the dashboard.
Product configuration. This step applies to MySQL server and samples in most cases. The status for each item in the list should indicate,
Ready to Configure. Click to begin the step-by-step configuration of all items in the list.
The configuration options presented during this step depend on which version of the database you selected to install. After the installation completes, you can reconfigure MySQL server from the MySQL Installer dashboard.
Installation compete. This step finalizes the installation and enables you to start some applications when the installation finishes.
You have two options to implement a high-availability solution when you install MySQL 5.7.17 or higher (64-bit) using MySQL Installer:
Standalone MySQL Server / Classic MySQL Replication (default)
Select this option to begin the initial configuration of a standalone MySQL server. You can configure multiple servers with classic MySQL Replication manually or use MySQL Shell 1.0.9 or higher to configure a production InnoDB cluster.Note
Existing instance ports (3310 to 3390) set for a sandbox InnoDB cluster that was created manually using MySQL Shell, will be deleted by MySQL Installer if you later run the sandbox InnoDB cluster test setup.
For a description of the server configuration options that apply to a standalone MySQL server on Windows, see Section 126.96.36.199.2, “Server Configuration with MySQL Installer”.
Sandbox InnoDB Cluster Test Setup (for testing only)
Select this option to create and configure sandbox InnoDB cluster instances locally for testing. You can configure a sandbox InnoDB cluster to have three, five, seven, or nine MySQL server instances. Use the Reconfigure quick action in the MySQL Installer toolbar to adjust the number of instances in the InnoDB cluster after the configuration has finished.
As the following figure shows, this step requires that you enter a password for the MySQL root account. The password strength is evaluated when you retype it.
The sandbox InnoDB cluster, named
sandboxCluster by default, is available on
selected ports. After the configuration executes, click the
Summary tab to view the specific ports that
apply to your cluster. Sandbox InnoDB cluster configuration
entries are stored in the
You can use MySQL Installer to install MySQL Shell 1.0.9 or later, if it is not installed. MySQL Shell enables you to manage the sandbox instances. To connect with the MySQL Shell on port 3310, execute the following command:
shell> mysqlsh root@localhost:3310
MySQL Installer also provides a wizard for configuring MySQL Router to connect to the test InnoDB cluster that was created in this step. For configuration details, see MySQL Router Configuration. To learn more about MySQL Router operations, see Routing for MySQL InnoDB cluster.
MySQL Installer handles the initial configuration of the MySQL server. For example:
It creates the configuration file (
my.ini) that is used to configure the MySQL server. The values written to this file are influenced by choices you make during the installation process. Some definitions are host dependent. For example, query_cache is enabled if the host has fewer than three cores.Note
Query cache was deprecated in MySQL 5.7 and removed in MySQL 8.0 (and later).
By default, a Windows service for the MySQL server is added.
Provides default installation and data paths for MySQL server. For instructions on how to change the default paths, see Section 188.8.131.52.3, “Setting Alternative Server Paths with MySQL Installer”.
It can optionally create MySQL server user accounts with configurable permissions based on general roles, such as DB Administrator, DB Designer, and Backup Admin. It optionally creates a Windows user named
MysqlSyswith limited privileges, which would then run the MySQL Server.
User accounts may also be added and configured in MySQL Workbench.
Checking Show Advanced Options allows additional Logging Options to be set. This includes defining custom file paths for the error log, general log, slow query log (including the configuration of seconds it requires to execute a query), and the binary log.
During the configuration process, clickto proceed to the next step or to return to the previous step. Click at the final step to apply the server configuration.
The sections that follow describe the server configuration options that apply to MySQL server on Windows. The server version you installed will determine which steps and options you can configure. Configuring MySQL server may include some or all of the following steps:
Server Configuration Type
Choose the MySQL server configuration type that describes your setup. This setting defines the amount of system resources (memory) that will be assigned to your MySQL server instance.
Development: A machine that will host many other applications, and typically this is your personal workstation. This option configures MySQL to use the least amount of memory.
Server: Several other applications will be running on this machine, such as a web server. This option configures MySQL to use a medium amount of memory.
Dedicated: A machine that is dedicated to running the MySQL server. Because no other major applications will run on this server, such as a web server, this option configures MySQL to use the majority of available memory.
Connectivity options control how the connection to MySQL is made. Options include:
TCP/IP: You may enable TCP/IP Networking here as otherwise only local host connections are allowed. Also define the Port Number and whether to open the firewall port for network access. If the port number is in use already, you will see the information icon () next to the default value and is disabled until you provide a new port number.
Named Pipe: Enable and define the pipe name, similar to using the
Shared Memory: Enable and then define the memory name, similar to using the
Check Show Advanced Options to set additional logging options in a later step. This includes defining custom file paths for the error log, general log, slow query log (including the configuration of seconds it requires to execute a query), and the binary log.
MySQL Enterprise Firewall (Commercial Edition only)
The Enable Enterprise Firewall check box is selected by default. For post-installation instructions, see Section 6.5.6, “MySQL Enterprise Firewall”.
The Authentication Method step is visible only during the installation or upgrade of MySQL 8.0.4 or higher. It introduces a choice between two server-side authentication options. The MySQL user accounts that you create in the next step will use the authentication method that you select in this step.
MySQL 8.0 connectors and community drivers that use
libmysqlclient 8.0 now support the
authentication plugin. However, if you are unable to update
your clients and applications to support this new
authentication method, you can configure the MySQL server to
mysql_native_password for legacy
authentication. For more information about the implications of
this change, see
caching_sha2_password as the Preferred Authentication Plugin.
If you are installing or upgrading to MySQL 8.0.4 or higher, select one of the following authentication methods:
Use Strong Password Encryption for Authentication (RECOMMENDED)
MySQL 8.0 supports a new authentication based on improved, stronger SHA256-based password methods. It is recommended that all new MySQL server installations use this method going forward.Important
caching_sha2_passwordauthentication plugin on the server requires new versions of connectors and clients, which add support for the new MySQL 8.0 default authentication.
Use Legacy Authentication Method (Retain MySQL 5.x Compatibility)
Using the old MySQL 5.x legacy authentication method should be considered only in the following cases:
Applications cannot be updated to use MySQL 8.0 connectors and drivers.
Recompilation of an existing application is not feasible.
An updated, language-specific connector or driver is not available yet.
Root Account Password
Assigning a root password is required and you will be asked for it when performing other MySQL Installer operations. Password strength is evaluated when you repeat the password in the box provided. For descriptive information regarding password requirements or status, move your mouse pointer over the information icon () when it appears.
MySQL User Accounts
Optionally, you can create additional MySQL user accounts with predefined user roles. Each predefined role, such as DB Admin, are configured with their own set of privileges. For example, the DB Admin role has more privileges than the DB Designer role. Click the Role drop-down list for a description of each role.Note
If the MySQL server is installed, then you must also enter the current root password.
On the Windows platform, MySQL server can run as a named service managed by the operating system and be configured to start up automatically when Windows starts. Alternatively, you can configure MySQL server to run as an executable program that requires manual configuration.
Configure MySQL server as a Windows service (Selected by default.)
When the default configuration option is selected, you can also select the following:
Start the MySQL Server at System Startup
When selected (default), the service startup type is set to Automatic; otherwise, the startup type is set to Manual.
Run Windows Service as
When Standard System Account is selected (default), the service logs on as Network Service.
The Custom User option must have privileges to log on to Microsoft Windows as a service. The button will be disabled until this user is configured with the required privileges.
A custom user is configured in Windows by searching for "local security policy" in the Start menu. In the Local Security Policy window, select Local Policies, User Rights Assignment, and then Log On As A Service to open the property dialog. Click to add the custom user and then click in each dialog to save the changes.
Deselect the Windows Service option
The Plugins and Extensions step is visible during a new installation of MySQL 5.7.12 (or higher) only. If you are upgrading from a previous MySQL version, then you need to open MySQL Installer again and select the Reconfigure MySQL server option.
Enable X Protocol / MySQL as a Document Store (Selected by default.)
When the X Protocol option is selected, MySQL Installer loads and starts the X Plugin. Without the X Plugin running, X Protocol clients cannot connect to the server.
Requires an unused port. The default port number is 33060.
Open Firewall port for network access
Open by default when the X Protocol is selected.
This step is available if the Show Advanced Configuration check box was selected during the Type and Networking step. To enable this step now, click to return to the Type and Networking step and select the check box.
Advanced configuration options are related to the following MySQL log files:
All configuration settings are applied to the MySQL server when you click Configuration Steps tab to follow the progress of each action; the icon for each toggles from white to green (with a check mark) on success. Otherwise, the process stops and displays an error message if an individual action times out. Click the Log tab to view the log.. Use the
When the installation is done and you click
MySQL group. Opening MySQL Installer loads the
where installed MySQL products are listed and other MySQL Installer
operations are available.
You can change the default installation path, the data path, or both when you install MySQL server. After you have installed the server, the paths cannot be altered without removing and reinstalling the server instance.
To change paths for MySQL server
Identify the MySQL server to change and display the Advanced Options link.
Navigate to the Select Products and Features step by doing one of the following:
If this is an initial setup, select the
Customsetup type and click .
If MySQL Installer is installed already, launch it from the Start menu and then clickfrom the dashboard.
Click Available Products list.to filter the list of products, locate the server instance to be installed in the
With the server instance selected, use the arrow to move the selected server to the Products/Features To Be Installed list.
Click the server to select it. When you select the server, the Advanced Options link appears. For details, see the figure that follows.
Click Advanced Options to open a dialog window with the path-setting options. After setting the path, click to continue with the configuration steps.
MySQL Installer provides you with a suite of tools for developing and managing business-critical applications on Windows. The suite consist of applications, connectors, documentation, and samples.
During the initial
setup, choose any predetermined setup type, except
Server only, to install the latest GA version
of the tools. Use the
Custom setup type to
install an individual tool or specific version. If MySQL Installer is
installed on the host already, use the Add
operation to select and install tools from the MySQL Installer dashboard.
MySQL Installer provides a configuration wizard that can bootstrap an installed instance of MySQL Router 2.1.3 or later to route traffic between MySQL applications and an InnoDB cluster. When configured, MySQL Router runs as a local Windows service. For detailed information about using MySQL Router with an InnoDB cluster, see Routing for MySQL InnoDB cluster.
To configure MySQL Router, do the following:
Set up InnoDB cluster. For instructions on how to configure a sandbox InnoDB cluster on the local host using MySQL Installer, see Section 184.108.40.206.1, “Group Replication”. InnoDB cluster requires MySQL Server 5.7.17 or higher.
For general InnoDB cluster information, see Chapter 21, InnoDB Cluster.
Using MySQL Installer, download and install the MySQL Router application. After the installation finishes, the configuration wizard prompts you for information. Select the Configure MySQL Router for InnoDB cluster check box to begin the configuration and provide the following configuration values:
Hostname: localhost by default.
Port: The port number of the primary server in the InnoDB cluster. The default is 3310.
Management User: An administrative user with root-level privileges.
Password: The password for the management user.
Classic MySQL protocol connections to InnoDB cluster
Read/Write: Set the first base port number to one that is unused (between 80 and 65532) and the wizard will select the remaining ports for you.
The figure that follows shows an example of the MySQL Router configuration screen, with the first base port number specified as 6446 and the remaining ports set by the wizard as 6447, 6448, and 6449.
Clickand then to apply the configuration. Click to close MySQL Installer or return to the MySQL Installer dashboard.