Java-এ MySQL কানেকশন সময় ClassNotFoundException: com.mysql.jdbc.Driver বা No suitable driver found এরর আসলে, MySQL কনেক্টর (JDBC ড্রাইভার) ক্লাসপাথে যোগ করতে হয়।
সমাধান: IDE-এ JAR যোগ করা
- MySQL Connector/J JAR ডাউনলোড করুন (mysql-connector-java-x.x.x.jar)
- IDE-এ (Eclipse/IntelliJ/NetBeans) প্রজেক্টের লাইব্রেরি/ডিপেন্ডেন্সিতে যোগ করুন
- Maven/Gradle ব্যবহার করলে
pom.xml/build.gradle-এ ডিপেন্ডেন্সি যোগ করুন
Maven ডিপেন্ডেন্সি
<dependency>
<groupId>com.mysql</groupId>
<artifactId>mysql-connector-j</artifactId>
<version>8.0.33</version>
</dependency>
Gradle ডিপেন্ডেন্সি
implementation 'com.mysql:mysql-connector-j:8.0.33'
কানেকশন কোড (আধুনিক ড্রাইভার ক্লাস)
import java.sql.Connection;
import java.sql.DriverManager;
public class MySQLConnect {
public static void main(String[] args) {
String url = "jdbc:mysql://localhost:3306/web?useSSL=false&serverTimezone=UTC";
try (Connection con = DriverManager.getConnection(url, "root", "123456")) {
System.out.println("Connection successful!");
} catch (Exception e) {
e.printStackTrace();
}
}
}
সাধারণ সমস্যা ও সমাধান
| এরর | কারণ | সমাধান |
|---|---|---|
| ClassNotFoundException | JAR ক্লাসপাথে নেই | JAR যোগ করুন |
| Communications link failure | হোস্ট/পোর্ট ভুল, ফায়ারওয়াল | IP, পোর্ট, বাইন্ড অ্যাড্রেস চেক করুন |
| Access denied | ইউজার/পাস ভুল, হোস্ট মিসম্যাচ | সঠিক ক্রেডেনশিয়াল, '%' হোস্ট দিন |
| SSLHandshakeException | SSL সার্টিফিকেট সমস্যা | useSSL=false বা সার্টিফিকেট কনফিগার করুন |