- Google क्लाउड ऐप इंजन मानक वातावरण
- Google क्लाउड एसक्यूएल डेटाबेस उदाहरण (mysql)
स्थापना चरण:
- जावा वेब एप्लिकेशन वॉर फ़ाइल को ऐप इंजन जावा एसडीके 1.9.62 का उपयोग ऐप्पफग अपडेट कमांड का उपयोग करके किया जाता है
- गूगल क्लाउड पर तैनाती के हिस्से के रूप में स्थापित जार फाइलें: mysql-कनेक्टर-जावा-5.1.38.jar mysql-सॉकेट-कारखाने में 1.0.4.jar mysql-सॉकेट-कारखाने में कोर-1.0.2.jar JDBC-सॉकेट-कारखाने कोर-1.0.5.jar
जावा का उपयोग कर JDBC कनेक्शन चरण:
try {
//DriverManager.registerDriver(com.mysql.jdbc.Driver);
String DBUrl = String.format("jdbc:mysql://google/%s?cloudSqlInstance=%s&"
+ "socketFactory=com.google.cloud.sql.mysql.SocketFactory",
databaseName,instanceConnectionName);
Connection DbConn = DriverManager.getConnection(DBUrl,DBUser,DBPwd);
} catch(SQLException ex) {
System.out.println("Database Connection Error."+ex.getMessage());
}
त्रुटि संदेश के लिए चरण:
प्रोजेक्ट-id.appspot.com का उपयोग करके खुला आवेदन
निम्नलिखित त्रुटि संदेश: 16-0 डेटाबेस सर्वर से कनेक्शन नहीं बना सका।
स्थानीय सर्वर पर डेटाबेस सत्यापन के लिए निम्नलिखित कदम:
जावा का उपयोग कर JDBC कनेक्शन चरण:
try {
// -- Use cloud sql remote ip address say x.x.x.x
String DBUrl = String.format("jdbc:mysql://x.x.x.x:3306/%s",databaseName);
Connection DbConn = DriverManager.getConnection(DBUrl,DBUser,DBPwd);
} catch(SQLException ex) {
System.out.println("Database Connection Error."+ex.getMessage());
}
- ऊपर दिए गए चरणों का उपयोग करके ग्लॉड क्लाउड mysql डेटाबेस से JDBC रिमोट कनेक्शन
- विंडोज पर जावा वेब एप्लिकेशन चलाएं
- एप्लिकेशन ठीक काम कर रहा है।
मैंने दो दिन बिताए और विभिन्न चरणों की कोशिश की, वही त्रुटि प्रदर्शित की जाती है। किसी भी विचार कैसे समस्या को हल करने के लिए, या समस्या कहाँ है।
उत्तर:
जवाब के लिए 2 № 1Url कनेक्शन स्ट्रिंग में निम्न परिवर्तन करने के बाद इस समस्या का समाधान किया जाता है।
कोड परिवर्तन:
try {
Class.forName("com.mysql.jdbc.GoogleDriver");
String DBUrl = String.format("jdbc:google:mysql://%s/%s",
instanceConnectionName, databaseName);
Connection DbConn = DriverManager.getConnection(DBUrl,DBUser,DBPwd);
} catch(SQLException ex) {
System.out.println("Database Connection Error."+ex.getMessage());
}