Troubleshoot MySQL

Here’s how to troubleshoot problems you might encounter using Oracle MySQL in your Google Workspace setup.

Network connection errors  |   Setup errors  |   Full disk  |  Password issues  |  Nodes offline

Network connection errors

Google Workspace support can’t help you with issues concerning your network setup.

Errors that mention MySQL on the node or platform service host logs, such as "Connect Timeout expired" errors, might indicate either a full MySQL disk or a network connection issue. The action you take depends on whether or not the errors occur intermittently.

Expand section  |  Collapse all & go to topCollapse all & go to topCollapse all & go to top

Errors occur intermittently

The errors could be related to a full MySQL disk:

  1. Ensure that you meet the system requirements and that the MySQL server hardware is at least as described (specifically, enough RAM, CPU, and storage).
  2. For the MySQL server, ensure that:
    1. You installed MySQL using the installer provided by Google. 
    2. There is no other MySQL instance on the server.
    3. There is no antivirus or antimalware software installed.
    4. If you installed a firewall, you allowed ingress traffic on port 3306.

For more information about freeing up space in a full disk, go to Troubleshoot full MySQL disk.

Errors occur consistently

The errors could indicate a network issue:

  1. Make sure that:
    • The MySQL server meets the system requirements. For details, go to Hardware requirements.
    • You installed the MySQL software using the installer provided by Google. For details, go to Download the installers.
    • You completed all the steps in Configure database settings.
    • All servers in the Google Workspace Migrate cluster are on the same network with no firewalls or filters between them.
    • No other software is installed on the Windows Server used by MySQL.
    • You haven't modified the default Windows Firewall settings.
  2. Connect remotely to the server that can't reach the MySQL server, and open a PowerShell window as administrator.
  3. To install the Telnet Client, enter the following command:

    Install-WindowsFeature -name Telnet-Client

  4. Reboot the MySQL server and the server that can't connect and try again. If you still have issues, continue to the next step.
  5. To run a telnet test, enter the following command:

    telnet MySQL-server-ip-address 3306

  6. Assess the result of your telnet test. If you:
    • Don’t get an error or if, after a few seconds, you get a Connection to host lost message, there's probably no network issue. Try reproducing the error again by opening the Google Workspace Migrate platform and repeating the action that previously failed.
    • Can connect using telnet but you can’t connect using Google Workspace Migrate (from the same node or the platform), a local firewall might be blocking outgoing connections. Check the firewall settings on the local server.
    • Get an error, such as Could not open connection to the host, on port 3306: Connect failed, follow the steps in the next table to troubleshoot.
Enter telnet MySQL-server-ip-address 3306 on … Outcome & steps to resolve
Another node server or the platform server

If the command is successful on another server, it is unlikely that the issue is with the MySQL server. Check the network setup of the server where you ran the failed telnet command.

Multiple servers

If you get an error, the issue is either network-wide or with the MySQL server. Try the following steps:

  1. Connect to the MySQL server using Remote Desktop.
  2. In a PowerShell window, run a telnet test by entering the following command:

    telnet MySQL-server-ip-address 3306

  3. If you get an error when you enter the command from the MySQL server, proceed to Troubleshoot full MySQL disc (below).
  4. If you don’t get an error when you enter the command from the MySQL server, the problem is most likely caused by a network issue. Verify that there are no firewalls between the servers and that the servers are on the same VLAN.
MySQL server

If you get an error, there's an issue with the MySQL server.

  1. In a PowerShell window, connect to the localhost by entering the following command:

    telnet localhost 3306

  2. If you don't get an error, ensure that:
    1. MySQL was installed using the Google-provided installer
    2. The configuration hasn't been modified
  3. If there are issues, correct them and restart the server.

MySQL setup errors

If you get Key/value data source unavailable: Failed to read databases: An error occurred while connecting to MySQL, troubleshoot using the following steps

Expand section  |  Collapse all & go to topCollapse all & go to topCollapse all & go to top

Troubleshoot setup error
  1. Sign in to MySQL through Remote Desktop Protocol (RDP).
  2. To connect to MySQL, enter the following command:

    C:\MySQL\bin\mysql.exe -h 127.0.0.1 -u root -pRootPassword

  3. Enter the following command:

    SELECT User, Host, CONCAT(User, ‘@’, Host) AS Username FROM mysql.user;

  4. If the output doesn't include the user, go to Create the user and Assign user privileges.
  5. If you get Error 1142: SELECT command denied to user root@127.0.0.1 for table user, go to Restore root user privileges.
Create the user
  1. Sign in to MySQL through RDP.
  2. Open a command prompt and go to C:\MySQL\bin.
  3. Enter the following command and replace migrateuser_pwd with the user password and root_pwd with the root password:

    MySQL\bin\mysql.exe -e "CREATE USER 'migrate'@'%' IDENTIFIED BY 'migrateuser_pwd';" -u root -proot_pwd -h 127.0.0.1

    MySQL\bin\mysql.exe -e "GRANT ALL PRIVILEGES ON *.* TO 'migrate'@'%';" -u root -proot_pwd MySQL\bin\mysql.exe -e "flush privileges;" -u migrate -pmigrateuser_pwd

    MySQL\bin\mysql.exe -e "SET GLOBAL TRANSACTION ISOLATION LEVEL READ COMMITTED;" -u migrate -pmigrateuser_pwd

    MySQL\bin\mysql.exe -e "SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED;" -u migrate -pmigrateuser_pwd

  4. Go to Google Workspace Migrateand thenDatabase settings and then re-enter the migrate password for MySQL.
  5. If you get Key/value data source unavailable: Failed to read databases: An error occurred, go to System trayand thenGoogle Workspace Migrate<and thenEdit host settings and then re-enter the migrate password for MySQL.
Assign user privileges

You must be signed in as a super administrator for this task.

  1. Open a command prompt and go to C:\MySQL\bin.
  2. Enter the following command and replace migrateuser_pwd with the user password and root_pwd with the root password:

    MySQL\bin\mysql.exe -e "GRANT ALL PRIVILEGES ON *.* TO 'migrate'@'%';" -u root -proot_pwd

    MySQL\bin\mysql.exe -e "flush privileges;" -u migrate -pmigrateuser_pwd

    MySQL\bin\mysql.exe -e "SET GLOBAL TRANSACTION ISOLATION LEVEL READ COMMITTED;" -u migrate -pmigrateuser_pwd

    MySQL\bin\mysql.exe -e "SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED;" -u migrate -pmigrateuser_pwd

Restore root user privileges
  1. Sign in to MySQL through RDP.
  2. Open a command prompt as an administrator.
  3. To stop MySQL, enter the following command:

    for /f %a in ('net start ^| find /I "mysql"') do @net stop %a

  4. To start MySQL in a mode that allows you to reset permissions, use Run as Administrator to open a command prompt and enter the following command:

    C:\MySQL\bin\mysqld --console --skip-grant-tables --shared-memory

    Leave the window open while the program runs.

  5. Open another command prompt and start MySQL by entering the following command:

    C:\MySQL\bin\mysql

  6. To grant privileges to the root@localhost.user, enter the following command:

    Sql UPDATE mysql.user SET Grant_priv='Y', Super_priv='Y' WHERE User='root';

    FLUSH PRIVILEGES;

    GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION;

    FLUSH PRIVILEGES;

  7. In the first command prompt, press Ctrl-C to stop MySQL and then enter the following command to start MySQL:

    for /f %a in ('net start ^| find /I "mysql" ') do @net start %a

  8. Close both command prompts.
  9. To connect to MySQL and verify that your updates work, enter the following command:

    for /f %a in ('net start ^| find /I "mysql" ') do @net start %a

  10. Enter the following command:

    SELECT User, Host, CONCAT(User, '@', Host) AS Username FROM mysql.user;

  11. If the output does not include the user, go to Create the user.
  12. If the output includes the user, go to Assign user privileges.

Troubleshoot full MySQL disk

If you have a full disk, you might get these signs:

  • A bridge or partition appears stalled.
  • A bridge completes but no items are detected.
  • An A RelationalDataLocation or (Errcode: 28 - No space left on device) message is in the HAR file.
  • The following errors or similar are in the platform service host logs:
    • The table 'bridgeexecutionpartitionmappings' is full.
    • The table 'appbridgeidentity' is full.

    To find the service host logs, go to Check the service host logs.

If the disk is full, try these fixes to free up space:

  • Delete any bridges or projects that you no longer need.
  • Use Google Compute Engine to increase space. For details, go to Add a persistent disk to your VM.
  • Move the MySQL data files to a larger disk. For details, consult your MySQL documentation.
  • Delete binary log files. For details, go to Purge binary logs.

Password issues

Expand section  |  Collapse all & go to topCollapse all & go to topCollapse all & go to top

Fix expired MySQL password

You might see a blank screen when you sign in to the platform and this error in the service host logs:

[MySqlException; HRESULT -2147467259] : Your password has expired. To log in you must change it using a client that supports expired passwords.

This error occurs because MySQL passwords expire by default after approximately a year. To fix the issue: 

  1. If you don't have the MySQL root password, complete Reset MySQL root password (on this page) first.
  2. Sign in to the MySQL machine and open a command prompt.
  3. To connect to MySQL, enter the following command:

    C:\MySQL\bin\mysql.exe -h 127.0.0.1 -u root -pRootPassword

    Substitute the MySQL root password in place of RootPassword. There is no space between -p and the password.

  4. To set the password to never expire, enter the following command:

    ALTER USER USER() IDENTIFIED BY 'RootPassword';
    ALTER USER 'root'@'127.0.0.1' PASSWORD EXPIRE NEVER;

    ALTER USER 'migrate'@'%' PASSWORD EXPIRE NEVER;
    FLUSH PRIVILEGES;

  5. On the platform server, restart the Google Workspace Migrate service and connect normally.
Reset MySQL migrate password

Google Workspace Migrate uses the migrate password to communicate with MySQL. Follow the steps below if you need to reset this password.

Step 1: Reset password

  1. If you don’t have the MySQL root password, complete Reset MySQL root password (later on this page) first.
  2. Sign in to the MySQL machine, and open a command prompt.
  3. To connect to MySQL, enter the following command:

    C:\MySQL\bin\mysql.exe -h 127.0.0.1 -u root -pRootPassword

    Substitute the MySQL root password in place of RootPassword. There is no space between -p and the password.

  4. To update the password for the user, enter the following command:

    ALTER USER 'migrate'@'%' IDENTIFIED BY 'NewUserPassword'; FLUSH PRIVILEGES;

    Substitute the new user password in place of NewUserPassword.

Step 2: Update the platform

Choose an option:

I can access the Google Workspace Migrate platform:

  1. In the Google Workspace Migrate platform, at the top, click Settings and thenDatabase settings.
  2. Enter the new password for MySQL and the Apache CouchDB software.

    Both passwords are required. If you don’t have the CouchDB password, go to I can’t access the Google Workspace Migrate platform (below).

  3. Click Continue.

I can’t access the Google Workspace Migrate platform:

  1. Sign in to the machine that's running the platform. 
  2. On the taskbar, right-click Google Workspace Migrate and select Edit host settings.
  3. For MySQL settings, click Password and enter the new password.
  4. Click Save & Closeand thenOK.
  5. On the taskbar, right-click Google Workspace Migrate and select Stop Google Workspace Migrate service. Then, restart the service. 

Step 3: Reassociate the nodes

You need to complete this step to propagate the new database settings to the nodes.

  1. In the Google Workspace Migrate platform, at the top, click Servers.
  2. Select all the nodes and click Delete .
  3. Add the nodes either using a CSV file or enter them manually.

    For details, go to Add the node servers.

Reset MySQL root password

In the steps below, substitute your new MySQL root password in place of NewRootPassword.

  1. Sign in to the MySQL machine.
  2. Open an elevated command prompt, and go to C:\MySQL\bin.
  3. To stop the MySQL service, enter the following command:

    for /f %a in ('net start ^| find /I "mysql"') do @net stop %a

  4. To prepare the command file that sets the new password, enter the following command:

    echo|set /p="ALTER USER 'root'@'127.0.0.1' IDENTIFIED BY 'NewRootPassword';" > password-reset-init.txt

  5. Record the new password in a secure location.
  6. To reset the password, enter the following command:

    mysqld --defaults-file="C:\MySQL\my.ini" --init-file="C:\MySQL\bin\password-reset-init.txt" --console

  7. When logging stops, press Ctrl+Pause or Ctrl+Break to end the command.
  8. To delete the command file, enter the following command:

    del password-reset-init.txt

  9. To start MySQL again, enter the following command:

    for /f %a in ('net start ^| find /I "mysql"') do @net start %a

  10. Sign in to the database using the root user and, to test the new password, enter the following command:

    C:\MySQL\bin\mysql.exe -h 127.0.0.1 -u root -p

  11. Enter the new password.

    If the new password is unsuccessful, repeat the steps to reset the password.

Nodes offline & won’t start

If your nodes fail to start after the MySQL password expires, complete the following steps:

  1. Sign in to the node machine.
  2. Delete or rename C:\ProgramData\AppBridge\DataSourceSettings.json.
  3. Complete these steps to reassociate the node servers:
    1. In the Google Workspace Migrate platform, in the top-right corner, click Servers.
    2. Select all the nodes and click Delete .
    3. Add the nodes either using a CSV file or enter them manually.

      For details, go to Add the node servers.

Related topics


Google, Google Workspace, and related marks and logos are trademarks of Google LLC. All other company and product names are trademarks of the companies with which they are associated.

Search
Clear search
Close search
Google apps
Main menu
6516478483899193668
true
Search Help Center
false
true
true
true
false
false
false
false