Skip to content

Use <database> causing multiple issues if DB does not exist #876

Open
@bitonp

Description

@bitonp

If I connect through the mysql command line to proxsql, and then issue:
mysql>use tst;
and db tst does not exist I get the following errors:

  1. In the mysql cli (correctly probably):
    mysql> use tst;
    Database changed, 2 warnings
  2. In the output from proxysql:
    2017-01-12 14:54:51 mysql_connection.cpp:599:handler(): [ERROR] Failed to mysql_real_connect() on 127.0.0.1:3306 , FD (Conn:35 , MyDS:35) , 1049: Unknown database 'tst'.
2017-01-12 14:54:51 mysql_connection.cpp:599:handler(): [ERROR] Failed to mysql_real_connect() on 127.0.0.1:3306 , FD (Conn:35 , MyDS:35) , 1049: Unknown database 'tst'.
2017-01-12 14:54:51 mysql_connection.cpp:599:handler(): [ERROR] Failed to mysql_real_connect() on 127.0.0.1:3306 , FD (Conn:35 , MyDS:35) , 1049: Unknown database 'tst'.
2017-01-12 14:54:51 mysql_connection.cpp:599:handler(): [ERROR] Failed to mysql_real_connect() on 127.0.0.1:3306 , FD (Conn:35 , MyDS:35) , 1049: Unknown database 'tst'.
2017-01-12 14:54:51 mysql_connection.cpp:599:handler(): [ERROR] Failed to mysql_real_connect() on 127.0.0.1:3306 , FD (Conn:35 , MyDS:35) , 1049: Unknown database 'tst'.
2017-01-12 14:54:51 mysql_connection.cpp:599:handler(): [ERROR] Failed to mysql_real_connect() on 127.0.0.1:3306 , FD (Conn:35 , MyDS:35) , 1049: Unknown database 'tst'.

This is due to proxysql doing a 'show tables' at the sane time, which is probably superfluous, and will slow any system down.

Secondly, and 'show databases' command also fails from this point, until a valid 'use DBname' is issued.
For example:

mysql>use tst;
Database changed, 2 warnings

proxysql output (as before):
2017-01-12 15:11:53 mysql_connection.cpp:599:handler(): [ERROR] Failed to mysql_real_connect() on 127.0.0.1:3306 , FD (Conn:35 , MyDS:35) , 1049: Unknown database 'tst'.
2017-01-12 15:11:53 mysql_connection.cpp:599:handler(): [ERROR] Failed to mysql_real_connect() on 127.0.0.1:3306 , FD (Conn:35 , MyDS:35) , 1049: Unknown database 'tst'.
2017-01-12 15:11:53 mysql_connection.cpp:599:handler(): [ERROR] Failed to mysql_real_connect() on 127.0.0.1:3306 , FD (Conn:35 , MyDS:35) , 1049: Unknown database 'tst'.
2017-01-12 15:11:53 mysql_connection.cpp:599:handler(): [ERROR] Failed to mysql_real_connect() on 127.0.0.1:3306 , FD (Conn:35 , MyDS:35) , 1049: Unknown database 'tst'.
2017-01-12 15:11:53 mysql_connection.cpp:599:handler(): [ERROR] Failed to mysql_real_connect() on 127.0.0.1:3306 , FD (Conn:35 , MyDS:35) , 1049: Unknown database 'tst'.
2017-01-12 15:11:53 mysql_connection.cpp:599:handler(): [ERROR] Failed to mysql_real_connect() on 127.0.0.1:3306 , FD (Conn:35 , MyDS:35) , 1049: Unknown database 'tst'.

2. mysql>show tables from mysql;
ERROR 1049 (#4200): Unknown database 'tst'

proxysql Output:
2017-01-12 15:12:13 mysql_connection.cpp:599:handler(): [ERROR] Failed to mysql_real_connect() on 127.0.0.1:3306 , FD (Conn:35 , MyDS:35) , 1049: Unknown database 'tst'.
2017-01-12 15:12:13 mysql_connection.cpp:599:handler(): [ERROR] Failed to mysql_real_connect() on 127.0.0.1:3306 , FD (Conn:35 , MyDS:35) , 1049: Unknown database 'tst'.
2017-01-12 15:12:13 mysql_connection.cpp:599:handler(): [ERROR] Failed to mysql_real_connect() on 127.0.0.1:3306 , FD (Conn:35 , MyDS:35) , 1049: Unknown database 'tst'.
2017-01-12 15:12:13 mysql_connection.cpp:599:handler(): [ERROR] Failed to mysql_real_connect() on 127.0.0.1:3306 , FD (Conn:35 , MyDS:35) , 1049: Unknown database 'tst'.
2017-01-12 15:12:13 mysql_connection.cpp:599:handler(): [ERROR] Failed to mysql_real_connect() on 127.0.0.1:3306 , FD (Conn:35 , MyDS:35) , 1049: Unknown database 'tst'.
2017-01-12 15:12:13 mysql_connection.cpp:599:handler(): [ERROR] Failed to mysql_real_connect() on 127.0.0.1:3306 , FD (Conn:35 , MyDS:35) , 1049: Unknown database 'tst'.

If you then issue a correct 'use mysql;' , then all reverts to normal.

Its unlikely he mods I have rrinning on my system are the cause of this... I have done very little.. but am wiling to be proved incorrect :-)

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions