Skip to content

Increase compatibility with MySQL 8.x #4902

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
TheWitness opened this issue Aug 21, 2022 · 13 comments
Closed

Increase compatibility with MySQL 8.x #4902

TheWitness opened this issue Aug 21, 2022 · 13 comments
Labels
enhancement General tag for an enhancement resolved A fixed issue
Milestone

Comments

@TheWitness
Copy link
Member

Feature Request

Is your feature request related to a problem? Please describe

We normally do not test on MySQL 8, but recently had a user report an issue with MySQL 8 and our audit database script. As such, we need to start documenting compatibility errors with MySQL 8.x and create a project to remediate.

Describe the solution you'd like

Evaluate the install and operation of Cacti when using MySQL 8

Additional context

MySQL has been altering/breaking things recently.

@TheWitness TheWitness added the enhancement General tag for an enhancement label Aug 21, 2022
@TheWitness
Copy link
Member Author

First issue, our recommendations no longer are valid.

@TheWitness
Copy link
Member Author

The procedure to create a user at the same time you are creating grants is not supported.

@TheWitness
Copy link
Member Author

TheWitness commented Aug 21, 2022

We are getting errors related to the password caching in MySQL 8.0.31 missing a Shared library. So, we need to set:

# required to make life easier on MySQL 8.x
default_authentication_plugin = mysql_native_password

Until this issue is fixed by Oracle. Here is the error we are getting:

SQLSTATE[HY000] [2059] Authentication plugin 'caching_sha2_password' cannot be loaded: /usr/lib64/mysql/plugin/caching_sha2_password.so: cannot open shared object file: No such file or directory

@TheWitness
Copy link
Member Author

The latest MySQL 8.x does not show the number of characters for various integer columns now, so audit_database.php fails.

@TheWitness
Copy link
Member Author

Looks like utf8mb4 was not good enough for Oracle leading to this install issue.

image

@TheWitness
Copy link
Member Author

The sql_mode option NO_AUTO_CREATE_USER is no longer supported.

@TheWitness
Copy link
Member Author

The following two options are no longer supported:

innodb_file_format = Barracuda
innodb_large_prefix = 1

@TheWitness
Copy link
Member Author

The recommendation for buffer pool instances is too high. Needs to be corrected.
image

@TheWitness
Copy link
Member Author

The default user/password of 'cactiuser'@'localhost' with a password of 'cactiuser' is no longer possible.

@TheWitness
Copy link
Member Author

Errors updating tables during upgrade with a mix of collations. Lovely.

image

@TheWitness
Copy link
Member Author

The issue above was cleared by dropping and re-creating the database with the proper default settings in /etc/my.cnf.

@TheWitness
Copy link
Member Author

More issues with Automation. Very odd.

image

@TheWitness
Copy link
Member Author

Okay, have a workaround for Automation.

TheWitness added a commit that referenced this issue Aug 24, 2022
Updated Support for MySQL 8.x
@TheWitness TheWitness added this to the v1.2.23 milestone Aug 24, 2022
@TheWitness TheWitness added the resolved A fixed issue label Aug 24, 2022
@github-actions github-actions bot locked and limited conversation to collaborators Nov 28, 2022
@netniV netniV changed the title Updated Support for MySQL 8.x Increase compatibility with MySQL 8.x Dec 31, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
enhancement General tag for an enhancement resolved A fixed issue
Projects
None yet
Development

No branches or pull requests

1 participant