مرجع تخصصی برنامه نویسان

انجمن تخصصی برنامه نویسان فارسی زبان

کاربر سایت

misswoohee

عضویت از 1397/09/26

نحوه اتصال به دیتابیس آنلاین (دیتابیس سایت) در جاوا

  • سه شنبه 27 آذر 1397
  • 20:35
تشکر میکنم

سلام . 

من می خوام به دیتابیس سایتم در جاوا در محیط نت بینز متصل بشم ولی نمیدونم چجوری باید این کار رو بکنم . 

من خیلی راحت میتونم به wamp متصل بشم و داده های sql رو تغییر بدم و...  ولی بلد نیستم چجوری باید به دیتابیس سایتم 

متصل بشم . 

این ها کد های اتصال به wamp هستن و کاملا درست عمل میکنن .

try {
                Class.forName("com.mysql.jdbc.Driver").newInstance();
                String url = "jdbc:mysql://localhost:3306/passwordlist?user=root";
                Connection con = DriverManager.getConnection(url);
                Statement st = con.createStatement();
                String query = "INSERT INTO `allword`(`word`, `count`) VALUES ('" + txtword.getText() + "','" + 1 + "')";
                st.execute(query);
                st.close();
                con.close();
                
            } catch (Exception ex) {
                
            }

لطفا راهنماییم کنین .

پاسخ های این پرسش

تعداد پاسخ ها : 8 پاسخ
کاربر سایت

محمد قاری

عضویت از 1395/02/07

  • چهارشنبه 28 آذر 1397
  • 09:03

با سلام خدمت شما دوست عزیز ،

برای اتصال به دیتابیس آنلاین فقط کافی هست کد خودتون یا کدی که من الان براتون میزارم رو در قسمت آدرس سرور ، Ip سرور دیتابیس یا hostname اون رو قرار بدید :

String url = "jdbc:mysql://{ServerDBAdress}/javabase";
String username = "java";
String password = "password";

System.out.println("Connecting database...");

try (Connection connection = DriverManager.getConnection(url, username, password)) {
    System.out.println("Database connected!");
} catch (SQLException e) {
    throw new IllegalStateException("Cannot connect the database!", e);
}

آی پی یا آدرس دیتابیس سرور رو میتونید از پشتیبانی سرور درخواست کنید......

کاربر سایت

misswoohee

عضویت از 1397/09/26

  • چهارشنبه 28 آذر 1397
  • 11:11

@mohammadghari1376

ممنون دوست عزیز . ولی وقتی آی پی هاستم را وارد میکنم این ارور را میدهد 

com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure

Last packet sent to the server was 0 ms ago.

میشه بیشتر راهنماییم کنی ؟

کاربر سایت

محمد قاری

عضویت از 1395/02/07

  • چهارشنبه 28 آذر 1397
  • 12:19

این ارور میگه نتونسته با دیتابیس ارتباط برقرار کنه که ممکنه به خاطر اتفاقاتی مثل جلوگیری برنامه هایی مثل آنتی ویروس و فایروال سیستم شما باشه یا مثلا استفاده از VPN  . قبل از هر کاری این نرم افزار ها رو غیر فعال کنید و همچنین مطمئن شید که دیتابیس سرور mySql است

این لینک هارو یک نگاه بیاندازید در این لینک ها معمولا تغییراتی رو مطرح میکنن که شما باید در دیتابیس اجرا کنید و چون احتمالا به خاطر انلاین بودن دیتابیس دسترسی به دیتابیس ندارید نمیتونید این روش ها رو انجام بدید ولی این دولینک به طور کلی نکاتی که باید بررسی بشن رو مطرح کرد و اونها رو یک به یک بررسی کنید .

https://stackoverflow.com/a/2985169

https://stackoverflow.com/a/10772407

اگه مشکل برطرف نشد به پشتیبانی سرور تیکت بزنید شاید به خاطر مسائل امنیتی موجود در سمت سرور این مشکل ایجاد شده....

کاربر سایت

misswoohee

عضویت از 1397/09/26

  • چهارشنبه 28 آذر 1397
  • 14:54

منظورتون فایروال و آنتی ویروس کامپیوتر خودم هست یا هاست سرور ؟

آیا ممکن هست که بخاطر اینکه هاستم رایگانه این مشکل بوجود اومده باشه ؟

من لینک های بالا رو بررسی کردم ولی نفهمیدم که منظورشون از فایروال و آنتی ویروس چیه . آخه تو هاست من که این چیزا وجود نداره .منظورشون سرور مجازی هست ؟

فایل هایی با نام my.cnf کجای هاست قرار دارند ؟

خیلی ممنون

کاربر سایت

محمد قاری

عضویت از 1395/02/07

  • چهارشنبه 28 آذر 1397
  • 15:02

فرقی نداره فایر وال کدوم طرف سرور یا شما 

همون طور که گفتم شما به سرور دسترسی ندارید و فقط میتونید از طریق پشتیبانی سرور  درخواسستون رو اعلام کنید .

در هر صورت در خواست شما پذیرفته نمیشه حالا ممکنه یک چیزی مثل فایروال آنتی ویروس جلوی اون رو بگیره چه از سمت سرور چه از سمت سیستم شما در هر صورت شما فقط به سیستم خودتون دسترسی دارید و فقط میتونید اون رو کنترل کنید . 

احتمالا به خاطر رایگان بودن هاست به شما این اجازه رو نمیده 

بازم میگم با پشتیبانی هاست اگر میتونید صحبت کنید چون اونا فقط میتونن در مورد موارد سمت سرور و داخلی سرور صحبت کنن...

کاربر سایت

misswoohee

عضویت از 1397/09/26

  • چهارشنبه 28 آذر 1397
  • 15:26

1- فایل هایی با نام my.cnf کجای هاست قرار دارند ؟

2- برای اتصال به دیتابیس باید سرور مجازی داشته باشم یا فقط هاست کفایت میکنه ؟

ممنون میشم دو تا سوالمو جواب بدین

کاربر سایت

محمد قاری

عضویت از 1395/02/07

  • پنجشنبه 29 آذر 1397
  • 09:35

دوست من 

همون طوری که خدمت شما عرض شد شما به فایل های MySql (که یکی از اونها همین فایلی هست که شما پرسیدید)بر روی سرور دسترسی ندارید به خاطر محدودیت دسترسی شما به سرور هست و اگه سرور مجاززی داشته باشید این محدودیت ها رو ندارید پس شما باید این موضوع که هاست کافیه یا نه رو از سمت سرور بپرسید حتی در همین هاست شما که رایگان هم هست نیز به پشتیبانی تیکت بزنید و بپرسید ، که آیا اونها اجازه دسترسی میدن به دیتابیس یا نه ...

کاربر سایت

misswoohee

عضویت از 1397/09/26

  • شنبه 1 دی 1397
  • 08:54

به پشتیبانی گفتم و اونا ازم پرسیدن که میخوام با ریموت به دیتابیس متصل بشم ؟ ریموت چیه ؟

کاربرانی که از این پست تشکر کرده اند

هیچ کاربری تا کنون از این پست تشکر نکرده است

اگر نیاز به یک مشاور در زمینه طراحی سایت ، برنامه نویسی و بازاریابی الکترونیکی دارید

با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)