import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; import java.sql.SQLException; class MySQLCJ8Issue { public static void main(String[] args) { try { Class.forName("com.mysql.cj.jdbc.Driver").newInstance(); Connection c = DriverManager.getConnection( "jdbc:mysql://localhost:3306/mysql?sslMode=DISABLED&cacheResultSetMetadata=true&user=root&password=test" ); Statement s = c.createStatement(); s.executeQuery("set autocommit = 0"); //s.executeQuery("set character_set_client = 'utf8'"); //s.execute("set autocommit = 0"); // this is fine } catch (Throwable ex) { ex.printStackTrace(); } } }