ऐसा प्रतीत होता है कि आप jdbc:mariadb://...
. का उपयोग करने का प्रयास कर रहे हैं MySQL JDBC ड्राइवर का उपयोग करके मारियाडीबी सर्वर इंस्टेंस से कनेक्शन स्थापित करने के लिए। यह शायद काम नहीं करेगा क्योंकि MySQL JDBC ड्राइवर jdbc:mysql://...
का उपयोग करेगा , चाहे वह MySQL सर्वर से कनेक्ट हो रहा हो या MariaDB सर्वर से। अर्थात्, कनेक्शन स्ट्रिंग ड्राइवर . से मेल खाना चाहिए जिसका उपयोग किया जा रहा है (डेटाबेस सर्वर तक पहुँचने के बजाय)।
MySQL और MariaDB ड्राइवरों को कुछ हद तक विनिमेय माना जाता है, लेकिन मारियाडीबी सर्वर तक पहुँचने के दौरान मारियाडीबी कनेक्टर का उपयोग करना केवल विवेकपूर्ण लगता है। इसके लायक क्या है, mariadb-java-client-1.1.7.jar
का संयोजन
और
Connection con = DriverManager.getConnection(
"jdbc:mariadb://localhost/project",
"root",
"whatever");
मेरे लिए काम किया। मैंने जावा के लिए मारियाडीबी क्लाइंट लाइब्रेरी को यहां से डाउनलोड किया:
https://downloads.mariadb.org/client-java/1.1.7/
जिस पर मैं के माध्यम से पहुंचा
https://downloads.mariadb.org/
अतिरिक्त नोट:
-
Class.forName()
. की कोई आवश्यकता नहीं है आपके जावा कोड में स्टेटमेंट। -
Mageia के अंतर्गत MariaDB के लिए डिफ़ॉल्ट कॉन्फ़िगरेशन में
स्किप-नेटवर्किंग
. शामिल हो सकते हैं/etc/my.cnf
. में निर्देश . यदि आप JDBC के माध्यम से डेटाबेस से कनेक्ट करना चाहते हैं, तो आपको उस निर्देश को हटाने (या टिप्पणी करने) की आवश्यकता होगी क्योंकि JDBC कनेक्शन हमेशा MySQL/MariaDB के लिए "नेटवर्क" कनेक्शन की तरह दिखते हैं, भले ही वेlocalhost
. (आपकोबाइंड-एड्रेस
में बदलाव करने की आवश्यकता हो सकती है0.0.0.0
. जैसी किसी चीज़ का मान साथ ही।)