Fix logic error in MySQLDataSourceChecker (#25936)

diff --git a/kernel/data-pipeline/dialect/mysql/src/main/java/org/apache/shardingsphere/data/pipeline/mysql/check/datasource/MySQLDataSourceChecker.java b/kernel/data-pipeline/dialect/mysql/src/main/java/org/apache/shardingsphere/data/pipeline/mysql/check/datasource/MySQLDataSourceChecker.java
index a1c7d85..0150fdc 100644
--- a/kernel/data-pipeline/dialect/mysql/src/main/java/org/apache/shardingsphere/data/pipeline/mysql/check/datasource/MySQLDataSourceChecker.java
+++ b/kernel/data-pipeline/dialect/mysql/src/main/java/org/apache/shardingsphere/data/pipeline/mysql/check/datasource/MySQLDataSourceChecker.java
@@ -100,12 +100,13 @@
                 preparedStatement.setString(parameterIndex++, entry.getKey());
             }
             try (ResultSet resultSet = preparedStatement.executeQuery()) {
-                resultSet.next();
-                String key = resultSet.getString(1).toUpperCase();
-                String toBeCheckedValue = REQUIRED_VARIABLES.get(key);
-                String actualValue = resultSet.getString(2);
-                ShardingSpherePreconditions.checkState(toBeCheckedValue.equalsIgnoreCase(actualValue),
-                        () -> new PrepareJobWithInvalidSourceDataSourceException(key, toBeCheckedValue, actualValue));
+                while (resultSet.next()) {
+                    String key = resultSet.getString(1).toUpperCase();
+                    String expectedValue = REQUIRED_VARIABLES.get(key);
+                    String actualValue = resultSet.getString(2);
+                    ShardingSpherePreconditions.checkState(expectedValue.equalsIgnoreCase(actualValue),
+                            () -> new PrepareJobWithInvalidSourceDataSourceException(key, expectedValue, actualValue));
+                }
             }
         } catch (final SQLException ex) {
             throw new PrepareJobWithCheckPrivilegeFailedException(ex);
diff --git a/kernel/data-pipeline/dialect/mysql/src/test/java/org/apache/shardingsphere/data/pipeline/mysql/check/datasource/MySQLDataSourceCheckerTest.java b/kernel/data-pipeline/dialect/mysql/src/test/java/org/apache/shardingsphere/data/pipeline/mysql/check/datasource/MySQLDataSourceCheckerTest.java
index b930782..0c85a27 100644
--- a/kernel/data-pipeline/dialect/mysql/src/test/java/org/apache/shardingsphere/data/pipeline/mysql/check/datasource/MySQLDataSourceCheckerTest.java
+++ b/kernel/data-pipeline/dialect/mysql/src/test/java/org/apache/shardingsphere/data/pipeline/mysql/check/datasource/MySQLDataSourceCheckerTest.java
@@ -33,6 +33,7 @@
 import java.util.Collection;
 import java.util.Collections;
 
+import static org.junit.jupiter.api.Assertions.assertDoesNotThrow;
 import static org.junit.jupiter.api.Assertions.assertThrows;
 import static org.mockito.ArgumentMatchers.anyString;
 import static org.mockito.Mockito.RETURNS_DEEP_STUBS;
@@ -89,18 +90,18 @@
     
     @Test
     void assertCheckVariableSuccess() throws SQLException {
-        when(resultSet.next()).thenReturn(true, true);
+        when(resultSet.next()).thenReturn(true, true, true, false);
         when(resultSet.getString(1)).thenReturn("LOG_BIN", "BINLOG_FORMAT", "BINLOG_ROW_IMAGE");
         when(resultSet.getString(2)).thenReturn("ON", "ROW", "FULL");
-        new MySQLDataSourceChecker().checkVariable(dataSources);
+        assertDoesNotThrow(() -> new MySQLDataSourceChecker().checkVariable(dataSources));
         verify(preparedStatement, times(1)).executeQuery();
     }
     
     @Test
     void assertCheckVariableWithWrongVariable() throws SQLException {
-        when(resultSet.next()).thenReturn(true, true);
-        when(resultSet.getString(1)).thenReturn("LOG_BIN", "BINLOG_FORMAT");
-        when(resultSet.getString(2)).thenReturn("OFF", "ROW");
+        when(resultSet.next()).thenReturn(true, true, false);
+        when(resultSet.getString(1)).thenReturn("BINLOG_FORMAT", "LOG_BIN");
+        when(resultSet.getString(2)).thenReturn("ROW", "OFF");
         assertThrows(PrepareJobWithInvalidSourceDataSourceException.class, () -> new MySQLDataSourceChecker().checkVariable(dataSources));
     }