Any updates here? I am trying to deploy an instance of openemr with MySQL 8.0 in FreeBSD but I keep coming up with issues.
These are the issues and my workarounds so far. (Please note this is not inteneded to be used on a production server.
Mysql8 default authentication is caching_sha2_password which is not compatible with openemr. The error message from the web server may say something like: “The server requested authentication method unknown to the client [caching_sha2_password]”. Hence this line needs to be added to my.cnf under the [mysqld] section:
default-authentication-plugin = mysql_native_password
However, it still won’t work if root has already been created. Therefore a new root can be created with these two commands at the level of mysql. This is a really good tutorial https://lefred.be/content/how-to-grant-privileges-to-users-in-mysql-8-0/ :
root@localhost [mysql]> CREATE USER ‘root’@’’ identified with mysql_native_password by ‘secretstrongpassword’;
root@localhost [mysql]> GRANT alter,create,delete,drop,index,insert,select,update,trigger,alter routine, create routine, execute, create temporary tables on mysql.*
If the mysql server is not located in the localhost change the bind-address directive to ‘*’ (the default may read 127.0.0.1). This line needs to be added to my.cnf under the [mysqld] section:
bind-address = *
At one point this line was added to the my.conf file and it broke my server. I am not sure if it was openemr. After this my server did not restart. I got this message in the mysql8 error log: query_cache_size unknown variable. Removing the following line from the [mysqld] section fixed my problem:
query_cache_size = 256M
I am still working on this if anyone is interested. I am willing to continue but I need some guidance.
Comments are welcome. I will update this post as I move further.