Use `connection._protocol._ended` state
maintain `connection.state` instead

@mickhansen I believe that problem was occurring because
“protocol_error” is a faulty state, not a valid one.
code coherence
Merge pull request #2453 from findhit/hotfix/mysql-connection-validate

dialects.mysql.connection-manager: Use `connection._protocol._ended` state on $validate