انجمن‌های فارسی اوبونتو

کمک و پشتیبانی => برنامه‌سازی => نویسنده: cnmeysam در 02 بهمن 1395، 10:02 ق‌ظ

عنوان: مشکل در اتصال به دیتا بیس mysql در netbeans {حل شد}
ارسال شده توسط: cnmeysam در 02 بهمن 1395، 10:02 ق‌ظ
با سلام میشه یه راهنمایی بهم بدین من هر کاری کردم موقع اتصال به دیتا بیس ارور میده این کد های منه میشه بگید مشکلش کجاست؟
از آخرین ورژن MySQL و Ubuntu 16.10 استفاده میکنم. یک دیتا بیس با نام testconection ساختم که 3تا آیتم داره ID,user,pass

این ارور رو میده:
can not connect to db! com.mysql.jdbc.Driver




import java.sql.*;
import java.util.logging.Logger;
import java.util.logging.Level;
import javax.swing.JOptionPane;
/**
 *
 * @author administrat0r
 */
public class connectiontest extends javax.swing.JFrame {

    private Connection con = null;
    private Statement stmt = null;
    private ResultSet resSet = null;
   
    public boolean connect_to_db()
    {
        try
        {
            String username ="root";
            String password = "123";
            String url = "jdbc:mysql://localhost:3306/testconection";
           
            Class.forName("com.mysql.jdbc.Driver").newInstance();
            con = DriverManager.getConnection(url, username, password);
            return true;
   
        }
        catch(Exception e)
        {
            JOptionPane.showMessageDialog(null, "can not connect to db!  "
                                                +e.getMessage());
            return false;
        }
           
        }
   
    public boolean query_on_db(String _query)
    {
        try
        {
           stmt = con.createStatement();
           resSet = stmt.executeQuery(_query);
           
           if (resSet.next())
           {
               return true;
           }
           else
           {
               JOptionPane.showMessageDialog(null, "nothing");
               return false;
           }
        }
        catch (Exception e)
        {
            JOptionPane.showMessageDialog(null, "can not run query!  "
                                                +e.getMessage());
            return false;
        }
    }
   



و برای تست درستی یوزر پسورد از کد زیر استفاده کردم


    private void btnloginActionPerformed(java.awt.event.ActionEvent evt) {                                         

        if(connect_to_db())
        {
            String uname = usertxt.getText();
            String upass = passtxt.getText();
            String sql = "select * from users where User='"+uname+"' "
                        +"and pass='"+upass+"'";
           
            if (query_on_db(sql))
            {
                JOptionPane.showMessageDialog(null, "ok!");
            }
            else
            {
                JOptionPane.showMessageDialog(null, "incorrect info!");
            }
        }

عنوان: پاسخ : مشکل در اتصال به دیتا بیس mysql در netbeans
ارسال شده توسط: cnmeysam در 03 بهمن 1395، 11:35 ق‌ظ
 از اساتید کسی نیست راهنمایی کنه؟؟؟؟؟ ](*,)
عنوان: پاسخ : مشکل در اتصال به دیتا بیس mysql در netbeans
ارسال شده توسط: cnmeysam در 04 بهمن 1395، 10:07 ب‌ظ
سلام تقریبا مشکلم حل شد باید MySQL JDBC Driver رو توی library اضافه میکردم ولی مشکل کامل حل نشده توی لوکال وصل میشه ولی وقتی IP میزنم  به جای localhost مثلا میزنم 192.168.1.5 کانکت نمیشه کسی راه حلی داره؟؟؟؟؟ :'( :'( :'(

Libraries -> Right click -> Add library... -> MySQL JDBC Driver -> Add Library

این ارور رو میده



can not connect to db! communications link failure

the last packet send successfully to server was 0 milliseconds ago. The driver has not received any packets from the server.

عنوان: پاسخ : مشکل در اتصال به دیتا بیس mysql در netbeans
ارسال شده توسط: Sadegh Alirezaie در 05 بهمن 1395، 10:06 ق‌ظ
سلام تقریبا مشکلم حل شد باید MySQL JDBC Driver رو توی library اضافه میکردم ولی مشکل کامل حل نشده توی لوکال وصل میشه ولی وقتی IP میزنم  به جای localhost مثلا میزنم 192.168.1.5 کانکت نمیشه کسی راه حلی داره؟؟؟؟؟ :'( :'( :'(

Libraries -> Right click -> Add library... -> MySQL JDBC Driver -> Add Library

این ارور رو میده



can not connect to db! communications link failure

the last packet send successfully to server was 0 milliseconds ago. The driver has not received any packets from the server.


چک کنید ببینید allow_remote_login توی تنظیمات MySQL رو غیر فعال کردید یا خیر؟
عنوان: پاسخ : مشکل در اتصال به دیتا بیس mysql در netbeans
ارسال شده توسط: cnmeysam در 05 بهمن 1395، 10:40 ب‌ظ
سلام تقریبا مشکلم حل شد باید MySQL JDBC Driver رو توی library اضافه میکردم ولی مشکل کامل حل نشده توی لوکال وصل میشه ولی وقتی IP میزنم  به جای localhost مثلا میزنم 192.168.1.5 کانکت نمیشه کسی راه حلی داره؟؟؟؟؟ :'( :'( :'(

Libraries -> Right click -> Add library... -> MySQL JDBC Driver -> Add Library

این ارور رو میده



can not connect to db! communications link failure

the last packet send successfully to server was 0 milliseconds ago. The driver has not received any packets from the server.


چک کنید ببینید allow_remote_login توی تنظیمات MySQL رو غیر فعال کردید یا خیر؟

سلام شرمنده چطوری چک کنم میشه راهنماییم کنید من تازه کارم توی گنو/لینوکس
عنوان: پاسخ : مشکل در اتصال به دیتا بیس mysql در netbeans
ارسال شده توسط: Sadegh Alirezaie در 07 بهمن 1395، 01:37 ق‌ظ
سلام تقریبا مشکلم حل شد باید MySQL JDBC Driver رو توی library اضافه میکردم ولی مشکل کامل حل نشده توی لوکال وصل میشه ولی وقتی IP میزنم  به جای localhost مثلا میزنم 192.168.1.5 کانکت نمیشه کسی راه حلی داره؟؟؟؟؟ :'( :'( :'(

Libraries -> Right click -> Add library... -> MySQL JDBC Driver -> Add Library

این ارور رو میده



can not connect to db! communications link failure

the last packet send successfully to server was 0 milliseconds ago. The driver has not received any packets from the server.


چک کنید ببینید allow_remote_login توی تنظیمات MySQL رو غیر فعال کردید یا خیر؟

سلام شرمنده چطوری چک کنم میشه راهنماییم کنید من تازه کارم توی گنو/لینوکس

اگر توی اینترنت در ارتباط با نحوه نصب MySQL جست و جو کردید، معمولاً نوشته شده که از دستور زیر استفاده کنید:

 sudo mysql_secure_installation
توی این تنظیمات از شما پرسیده میشه که دسترسی از راه دور به پایگاه داده فعال باشه یا خیر.
حدس من اینه که ممکنه این رو غیر فعال کرده باشید که برای فعال کردنش میتونید از این لینک  (http://stackoverflow.com/questions/14779104/how-to-allow-remote-connection-to-mysql)استفاده کنید.
عنوان: پاسخ : مشکل در اتصال به دیتا بیس mysql در netbeans {حل شد}
ارسال شده توسط: cnmeysam در 08 بهمن 1395، 07:36 ب‌ظ
تنظیمات اتصال به سرور mysql در شبکه
اول باید لایبری مورد نیاز به برنامه اضافه بشه
Libraries -> Right click -> Add library... -> MySQL JDBC Driver -> Add Libraryتغییر پرمیژن
sudo chmod 777 /etc/mysql/mysql.conf.d/mysqld.cnf

پسورد root را وارد کنید
حالا باید این گزینه رو تغییر بدیم
پیشفرض:
bind-address = 127.0.0.1
127.0.0.1 رو به ستاره تغییرش میدیم
bind-address = *
ذخیره


ورود به تنظیمات sql
mysql -u root -p mysqlزدن پسورد root
دادن دسترسی به یوزر ریموت مورد نظر
GRANT ALL ON *.* TO user@'IP' IDENTIFIED BY 'password';
مثلا
GRANT ALL ON *.* TO root@'%' IDENTIFIED BY 'M@ysam123';
یا یوزری که با آن در سیستم کار میکنیم مثلا Administrator یا ali .....
البته دستور فوق به کاربر root دسترسی به تمام دیتابیس ها از هر ip را می دهد که می توانید آن را محدود کنید. مثلا به جای % میتواتنید IP سیستم مورد نظر خود را بزنید.

 حالا باید  MySQL را restart کنید
sudo service mysql restart
سپس پرمیژن را به حالت پیش فرض بر می گردانیم

sudo chmod 644 /etc/mysql/mysql.conf.d/mysqld.cnf