use mysql client which does not support authentication protocol can connect to tiproxy
まだ誰も着手していません。
評価
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 初心者へのやさしさ
- 30/100
- issue の種類
- バグ
- 明瞭さ
- 説明が足りない
- 活発さ
- 停滞
- 技術スタック
- go, mysql
調査の方向性
backend/authenticator.go:148 の警告と、backend/backend_conn_mgr.go:229 のバックエンド接続パスから始めます。MySQL 5.0.96 および 5.1.72 クライアントを TiProxy に対して使用して動作を再現し、その後、TiDB への直接接続と比較します。報告されたクライアント互換性の動作を理解し、実証したクエリに対して接続が引き続き使用可能であり、既存のテストを置くべき場所にリグレッションカバレッジがあることが完了の条件です。
索引モデルが issue の本文から書いたものです。
説明
Bug Report
Please answer these questions before submitting your issue. Thanks!
1. Minimal reproduce step (Required)
# connect tidb directly
root@dbdeployer-0:/tools# /root/opt/mysql/5.0.96/bin/mysql -u sha2 -h tc-tidb.testbed-endless-client-5lgf5 -P 4000 -psha --default-character-set utf8
ERROR 1251 (08004): Client does not support authentication protocol requested by server; consider upgrading MySQL client
root@dbdeployer-0:/tools# /root/opt/mysql/5.1.72/bin/mysql -u sha2 -h tc-tidb.testbed-endless-client-5lgf5 -P 4000 -psha --default-character-set utf8
ERROR 1251 (08004): Client does not support authentication protocol requested by server; consider upgrading MySQL client
# connect to tiproxy
root@dbdeployer-0:/tools# /root/opt/mysql/5.1.72/bin/mysql -u sha2 -h tc-tiproxy.testbed-endless-client-5lgf5 -P 6000 -psha --default-character-set utf8
root@dbdeployer-0:/tools# /root/opt/mysql/5.0.96/bin/mysql -u sha2 -h tc-tiproxy.testbed-endless-client-5lgf5 -P 6000 -psha --default-character-set utf8
2. What did you expect to see? (Required)
3. What did you see instead (Required)
root@dbdeployer-0:/tools# /root/opt/mysql/5.0.96/bin/mysql -u sha2 -h tc-tidb.testbed-endless-client-5lgf5 -P 4000 -psha --default-character-set utf8
ERROR 1251 (08004): Client does not support authentication protocol requested by server; consider upgrading MySQL client
root@dbdeployer-0:/tools# /root/opt/mysql/5.1.72/bin/mysql -u sha2 -h tc-tidb.testbed-endless-client-5lgf5 -P 4000 -psha --default-character-set utf8
ERROR 1251 (08004): Client does not support authentication protocol requested by server; consider upgrading MySQL client
root@dbdeployer-0:/tools# /root/opt/mysql/5.1.72/bin/mysql -u sha2 -h tc-tiproxy.testbed-endless-client-5lgf5 -P 6000 -psha --default-character-set utf8
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 100
Server version: 5.7.25-TiDB-v7.3.0-alpha
Copyright (c) 2000, 2013, 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> select tidb_version();
ERROR 2006 (HY000): MySQL server has gone away
No connection. Trying to reconnect...
Connection id: 100
Current database: *** NONE ***
ERROR 2013 (HY000): Lost connection to MySQL server during query
mysql> exit
Bye
root@dbdeployer-0:/tools# /root/opt/mysql/5.0.96/bin/mysql -u sha2 -h tc-tiproxy.testbed-endless-client-5lgf5 -P 6000 -psha --default-character-set utf8
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 100
Server version: 5.7.25-TiDB-v7.3.0-alpha
Copyright (c) 2000, 2011, 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> select tidb_version();
ERROR 2006 (HY000): MySQL server has gone away
No connection. Trying to reconnect...
Connection id: 100
Current database: *** NONE ***
ERROR 2013 (HY000): Lost connection to MySQL server during query
mysql> exit
Bye
root@dbdeployer-0:/tools# /root/opt/mysql/5.0.96/bin/mysql -u sha2 -h tc-tiproxy.testbed-endless-client-5lgf5 -P 6000 -psha --default-character-set utf8
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 100
Server version: 5.7.25-TiDB-v7.3.0-alpha
Copyright (c) 2000, 2011, 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> \s
--------------
/root/opt/mysql/5.0.96/bin/mysql Ver 14.12 Distrib 5.0.96, for unknown-linux-gnu (x86_64) using readline 5.1
Connection id: 100
SSL: Not in use
Current pager: stdout
Using outfile: ''
Using delimiter: ;
Server version: 5.7.25-TiDB-v7.3.0-alpha
Protocol version: 10
Connection: tc-tiproxy.testbed-endless-client-5lgf5 via TCP/IP
Client characterset: utf8
Server characterset: utf8
TCP port: 6000
--------------
[2023/07/17 08:38:10.524 +00:00] [INFO] [main.proxy] [proxy/proxy.go:170] [new connection] [connID=374] [client_addr=10.233.105.34:46090]
[2023/07/17 08:38:10.524 +00:00] [WARN] [main.proxy.conn.be.authenticator] [backend/authenticator.go:148] [frontend may not support plugin auth] [connID=374] [client_addr=10.233.105.34:46090] [capability=CLIENT_LONG_PASSWORD|CLIENT_LONG_FLAG|CLIENT_LOCAL_FILES|CLIENT_PROTOCOL_41|CLIENT_INTERACTIVE|CLIENT_TRANSACTIONS|CLIENT_SECURE_CONNECTION|CLIENT_MULTI_STATEMENTS|CLIENT_MULTI_RESULTS]
[2023/07/17 08:38:10.526 +00:00] [INFO] [main.proxy.conn.be] [backend/backend_conn_mgr.go:229] [connected to backend] [connID=374] [client_addr=10.233.105.34:46090] [ns=default] [backend_addr=tc-tidb-0.tc-tidb-peer.testbed-endless-client-5lgf5.svc:4000]
[2023/07/17 08:38:10.568 +00:00] [INFO] [main.proxy] [proxy/proxy.go:181] [connection closed] [connID=374] [client_addr=10.233.105.34:46090]
[2023/07/17 08:38:24.628 +00:00] [INFO] [main.proxy] [proxy/proxy.go:170] [new connection] [connID=375] [client_addr=10.233.105.34:46146]
[2023/07/17 08:38:24.629 +00:00] [WARN] [main.proxy.conn.be.authenticator] [backend/authenticator.go:148] [frontend may not support plugin auth] [connID=375] [client_addr=10.233.105.34:46146] [capability=CLIENT_LONG_PASSWORD|CLIENT_LONG_FLAG|CLIENT_LOCAL_FILES|CLIENT_PROTOCOL_41|CLIENT_INTERACTIVE|CLIENT_TRANSACTIONS|CLIENT_SECURE_CONNECTION|CLIENT_MULTI_STATEMENTS|CLIENT_MULTI_RESULTS]
[2023/07/17 08:38:24.631 +00:00] [INFO] [main.proxy.conn.be] [backend/backend_conn_mgr.go:229] [connected to backend] [connID=375] [client_addr=10.233.105.34:46146] [ns=default] [backend_addr=tc-tidb-0.tc-tidb-peer.testbed-endless-client-5lgf5.svc:4000]
[2023/07/17 08:38:24.658 +00:00] [INFO] [main.proxy] [proxy/proxy.go:181] [connection closed] [connID=375] [client_addr=10.233.105.34:46146]
4. What is your version? (Required)
- 主要言語
- Go
- スター
- 73
- フォーク
- 41
- 平均マージ
- 21時間 3分
- マージ済み PR(30日)
- 21
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
pingcap/tiproxy のほかの issue
-
type/enhancement
難易度 5/5 1週間以上 初心者へのやさしさ 35/100
-
severity/minor type/bug
難易度 3/5 1〜2日 初心者へのやさしさ 55/100
-
type/bug
難易度 3/5 1〜2日 初心者へのやさしさ 64/100
-
enhancement
難易度 5/5 1週間以上 初心者へのやさしさ 38/100
-
難易度 4/5 3〜5日 初心者へのやさしさ 35/100
pingcap/tiproxy の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
-
bug group: validation priority: low
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
codecheckers/chekhov#51 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100