zyhui98 commented on issue #36966:
URL: 
https://github.com/apache/shardingsphere/issues/36966#issuecomment-3471443120

   > ## Problem Confirmation
   > The issue you're encountering is a protocol version mismatch when 
ShardingSphere-Proxy tries to be compatible with both MySQL 5 and MySQL 8 
simultaneously.
   > 
   > ## Root Cause Analysis
   > Core Issue: The query_cache_size system variable has been removed in MySQL 
8.0, but ShardingSphere-Proxy currently uses MySQL 5.7.22 protocol for 
communication by default.
   > 
   > From the source code analysis, the `MySQLProtocolDefaultVersionProvider` 
class returns version "5.7.22" by default. When connecting to MySQL 8, the 
Proxy attempts to query system variables that no longer exist in MySQL 8, 
causing connection failures.
   > 
   > ## Compatibility Statement
   > Theoretical Support: ShardingSphere is designed to support both MySQL 5 
and 8, but in practice, you need to consider:
   > 
   > * The protocol version used by Proxy determines communication with backend 
databases
   > * Different MySQL versions support different sets of system variables
   > * JDBC driver compatibility also affects connection success rate
   > 
   > ## Solution Recommendations
   > Option 1: Version Selection Strategy
   > 
   > * If primarily using MySQL 8, consider upgrading to a configuration that 
supports MySQL 8 protocol
   > * If you need to support both versions simultaneously, consider using a 
protocol version that offers better compatibility
   > 
   > Option 2: Architecture Adjustment
   > 
   > * Deploy separate Proxy instances for different MySQL versions
   > * Avoid having a single Proxy handle multi-version compatibility issues
   > 
   > Option 3: Driver Configuration
   > 
   > * Ensure you're using a JDBC driver version that supports MySQL 8
   > * Verify that your connection string configuration is correct
   
   sorry, I can't find 
database/protocol/dialect/mysql/src/main/resources/META-INF/services/org.apache.shardingsphere.database.protocol.constant.DatabaseProtocolDefaultVersionProvider
   
   my shardingsphere'version is 5.3.0


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to