Basically I can't get Unicenta opos to connect to a fresh install of mysql server on Debian 11. I have set up a user and granted privileges in mysql, created a new database named MAINDB and for some reason Unicenta won't make it connect....
Both the mysql-server and Unicenta run on the same machine.
a bit more info :
mysql> status
--------------
mysql Ver 14.14 Distrib 5.7.36, for Linux (x86_64) using EditLine wrapper
Connection id: 19
Current database:
Current user: root@localhost
SSL: Not in use
Current pager: stdout
Using outfile: ''
Using delimiter: ;
Server version: 5.7.36 MySQL Community Server (GPL)
Protocol version: 10
Connection: Localhost via UNIX socket
Server characterset: latin1
Db characterset: latin1
Client characterset: utf8
Conn. characterset: utf8
UNIX socket: /var/run/mysqld/mysqld.sock
Uptime: 1 hour 34 min 44 sec
Threads: 1 Questions: 105 Slow queries: 0 Opens: 143 Flush tables: 1 Open tables: 136 Queries per second avg: 0.018
Unicenta settings :
Error Dialog :
More info from error message dialog box :
com.openbravo.basic.BasicException: Unable to connect to your Database Server!
Please check User and Password credentials are correct
The User must exist on your Database Server
com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure
The last packet successfully received from the server was 60 milliseconds ago. The last packet sent successfully to the server was 55 milliseconds ago.
javax.net.ssl.SSLHandshakeException: No appropriate protocol (protocol is disabled or cipher suites are inappropriate)
OS info (hostnamectl): Operating System: Debian GNU/Linux 11 (bullseye) Kernel: Linux 5.10.0-8-amd64 Architecture: x86-64
I had run the
GRANT ALL PRIVILEGES * . * ON 'unipos'@'localhost';
and
FLUSH PRIVILEGES;
after creating the 'unipos' user in mysql.
mysql> SHOW GRANTS FOR unipos;
ERROR 1141 (42000): There is no such grant defined for user 'unipos' on host '%'
mysql> select host from mysql.user
-> ;
+-----------+
| host |
+-----------+
| localhost |
| localhost |
| localhost |
| localhost |
+-----------+
4 rows in set (0.00 sec)
The below is from mysql's error log file in /var/log/mysql/error.log
Version: '5.7.36' socket: '/var/run/mysqld/mysqld.sock' port: 3306 MySQL Community Server (GPL)
2021-11-09T16:39:31.970790Z 2 [Note] Bad handshake
2021-11-09T16:39:31.981642Z 3 [Note] Bad handshake
I am guessing, there is a compatibility issue between the versions of Unicenta and mysql, however, I can't find any information on it. It is worth mentioning, that if I change the user credentials to the 'root' user in Unicenta setup screen nothing changes.
I can also connect to the database using the mysql command client with the 'unipos' user credentials :
jr91@Luke-deb:~$ mysql -h localhost -u unipos -p MAINDB
Enter password:
Welcome to the MySQL monitor.
Commands end with ; or \g.
Your MySQL connection id is 53 Server version: 5.7.36 MySQL Community Server (GPL)
Any ideas ?
From what I have found I know that Unicenta works well with mysql 5.7.33, but this is not supported by Debian 11 (bullseye), not sure if that can cause the problem....