**Describe the bug**
If you would change database with ```USE database``` command via mysql protocol and have auto completion enabled, you would get an error.

**How to reproduce**
Clickhouse 20.13.1.5517
mysql client 8.0
```
mysql --host 127.0.0.1 --port 9004 --user default

Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 4
Server version: 20.13.1.5517-ClickHouse 0

Copyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> SHOW TABLES;
23 rows in set (0.01 sec)
Read 23 rows, 776.00 B in 0.0084032 sec., 2737 rows/sec., 90.18 KiB/sec.

mysql> SHOW DATABASES;
+-----------+
| name      |
+-----------+
| default   |
| model     |
| system    |
| test      |
+-----------+
6 rows in set (0.00 sec)
Read 6 rows, 879.00 B in 0.002237 sec., 2682 rows/sec., 383.73 KiB/sec.

mysql> USE system
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> SELECT 1;
ERROR 2006 (HY000): MySQL server has gone away
No connection. Trying to reconnect...
Connection id:    5
Current database: system

ERROR 2006 (HY000): MySQL server has gone away
No connection. Trying to reconnect...
Connection id:    6
Current database: system

ERROR 2006 (HY000): MySQL server has gone away
```

If we would disable auto completion with -A cli arg.

```
mysql --host 127.0.0.1 --port 9004 --user default -A
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 11
Server version: 20.13.1.5517-ClickHouse 0

Copyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> USE system
Database changed, 1 warning
mysql> SELECT 1;
+------+
| 1    |
+------+
|    1 |
+------+
1 row in set (0.01 sec)
Read 1 rows, 1.00 B in 0.0013077 sec., 764 rows/sec., 764.70 B/sec.

mysql> SHOW TABLES;
75 rows in set (0.00 sec)
Read 75 rows, 2.61 KiB in 0.0053943 sec., 13903 rows/sec., 483.91 KiB/sec.

```
**Expected behavior**
It's possible to change databases with ```USE database``` command in mysql client works with autocomplete enabled.

**Error message and/or stacktrace**
```
2021.01.11 14:43:38.721310 [ 4371 ] {} <Debug> MySQLHandler: Received command: 4. Connection id: 21.
2021.01.11 14:43:38.721427 [ 4371 ] {} <Debug> MySQLHandler: Received command: 4. Connection id: 21.
2021.01.11 14:43:38.721590 [ 4371 ] {} <Error> MySQLHandler: DB::Exception: Cannot read all data. Bytes read: 0. Bytes expected: 3.

2021.01.11 14:43:36.306221 [ 4372 ] {} <Error> MySQLHandler: DB::Exception: Cannot read all data. Bytes read: 0. Bytes expected: 3.
2021.01.11 14:43:38.712040 [ 4372 ] {} <Error> MySQLHandler: DB::Exception: Cannot read all data. Bytes read: 0. Bytes expected: 3.
2021.01.11 14:43:38.721590 [ 4371 ] {} <Error> MySQLHandler: DB::Exception: Cannot read all data. Bytes read: 0. Bytes expected: 3.

```

**Additional context**
If you would pass database name in mysql args, you need to disable auto completion too.

```

 mysql --host 127.0.0.1 --port 9004 --user default --database default
 
 mysql> SELECT 1;
ERROR 2006 (HY000): MySQL server has gone away
No connection. Trying to reconnect...
Connection id:    35
Current database: default

ERROR 2006 (HY000): MySQL server has gone away
No connection. Trying to reconnect...
Connection id:    36
Current database: default

ERROR 2006 (HY000): MySQL server has gone away

mysql --host 127.0.0.1 --port 9004 --user default --database default -A

mysql> SELECT 1;
+------+
| 1    |
+------+
|    1 |
+------+
1 row in set (0.00 sec)
Read 1 rows, 1.00 B in 0.0012839 sec., 778 rows/sec., 778.88 B/sec.
```
: MySQLHandler(server_, socket_, ssl_enabled, connection_id_)
    , public_key(public_key_)
    , private_key(private_key_)
{}
void MySQLHandlerSSL::authPluginSSL()
{
    auth_plugin = std::make_unique<MySQLProtocol::Authentication::Sha256Password>(public_key, private_key, log);
}
void MySQLHandlerSSL::finishHandshakeSSL(
    size_t packet_size, char *buf, size_t pos, std::function<void(size_t)> read_bytes,
    MySQLProtocol::ConnectionPhase::HandshakeResponse & packet)
{
    read_bytes(packet_size); 
    SSLRequest ssl_request;
    ReadBufferFromMemory payload(buf, pos);
    payload.ignore(PACKET_HEADER_SIZE);
    ssl_request.readPayloadWithUnpacked(payload);
    connection_context.mysql.client_capabilities = ssl_request.capability_flags;
    connection_context.mysql.max_packet_size = ssl_request.max_packet_size ? ssl_request.max_packet_size : MAX_PACKET_LENGTH;
    secure_connection = true;
    ss = std::make_shared<SecureStreamSocket>(SecureStreamSocket::attach(socket(), SSLManager::instance().defaultServerContext()));
    in = std::make_shared<ReadBufferFromPocoSocket>(*ss);
    out = std::make_shared<WriteBufferFromPocoSocket>(*ss);
    connection_context.mysql.sequence_id = 2;
    packet_endpoint = std::make_shared<PacketEndpoint>(*in, *out, connection_context.mysql.sequence_id);
    packet_endpoint->receivePacket(packet); 
}
#endif
static bool isFederatedServerSetupSetCommand(const String & query)