2008-10-31 13 views
10

के लिए कनेक्शन एक्सटेंशन मेरे पास फ़ायरवॉल के पीछे एक MySQL डेटाबेस है जिसे केवल एक एसएसएच कनेक्शन के माध्यम से एक्सेस किया जा सकता है। क्या किसी को java.sql.Connection के कार्यान्वयन के बारे में पता है जो मुझे इस डेटाबेस में एसएसएच कनेक्शन बनाने की अनुमति देगा?java.sql. SSH

उत्तर

14

आप ऐसा करने के लिए एसएसएच के पोर्ट अग्रेषण का उपयोग कर सकते हैं। जबकि शुद्ध java.sql.Connection नहीं है, यह आपको एसएसएच के माध्यम से कनेक्शन सुरंग करने की अनुमति देगा।

ssh -L 3306:localhost:3306 remote.mysql.host.com

यह remote.mysql.host.com पर बंदरगाह 3306 को अपने स्थानीय मशीन पर अग्रेषित करेंगे बंदरगाह 3306। यह आपको आपकी स्थानीय मशीन पर पोर्ट 3306 से कनेक्ट करने की अनुमति देगा, और इसे दूरस्थ.mysql.host.com पर सुरंग किया जाएगा।

यदि आप जावा में यह सब करना चाहते हैं, तो JSch के साथ एसएसएच कनेक्शन बनाएं।

+1

मैं जावा के साथ रिमोट सर्वर पर MySQL के साथ कनेक्शन कैसे स्थापित कर सकता हूं? –

0

लाइब्रेरी sshj का उपयोग कर example यहां है।