सामग्री पर जाएँ
KPanel पर जाएँKPanel पर जाएँ
विषय-सूची
वेबसाइट

अपने डेटाबेस से रिमोटली कनेक्ट करना

स्वचालित अनुवाद। अंग्रेज़ी मूल उपलब्ध है।

अपने डेटाबेस के क्रेडेंशियल कहाँ मिलेंगे, पोर्ट 3306 पर सीधे रिमोट कनेक्शन क्यों अस्वीकार किए जाते हैं, और डेस्कटॉप टूल को SSH टनल के ज़रिए कैसे कनेक्ट करें।

हर KapsuleHost वेब होस्टिंग साइट जिसमें डेटाबेस है, उसे अपना खुद का डेटाबेस, अपना खुद का डेटाबेस यूज़र, और ऐसे क्रेडेंशियल मिलते हैं जिन्हें आप कभी भी पढ़ सकते हैं। जो आप नहीं कर सकते वह है इंटरनेट के ज़रिए सीधे उससे कनेक्ट करना, और यह जानबूझकर किया गया है। यह गाइड क्रेडेंशियल, प्रवेश के दो समर्थित तरीकों, और डेस्कटॉप डेटाबेस टूल को चाहिए होने वाला टनल सेट करने के तरीके को कवर करती है।

अपने क्रेडेंशियल खोजना

वेबसाइटें पर जाएं, साइट पर क्लिक करें, फिर डेटाबेस पर।

पेज पर पांच चीज़ें दिखती हैं:

फ़ील्डमान
होस्ट127.0.0.1
पोर्ट3306
डेटाबेसआपका डेटाबेस नाम
यूज़रनेमआपका डेटाबेस यूज़र
पासवर्डछुपाया हुआ, एक रिवील बटन और एक कॉपी बटन के साथ

पासवर्ड कोई एक-बार दिखने वाली चीज़ नहीं है। आप जब भी ज़रूरत हो वापस आकर इसे पढ़ सकते हैं, इसलिए इसे अलग से सहेजने की कोई आवश्यकता नहीं है।

डेटाबेस सर्वर MariaDB 10.11 है, जो MySQL-संगत है। यह एक व्यावहारिक तरीके से मायने रखता है: MySQL के हाल के संस्करण से निर्यात किया गया डंप ऐसे कोलेशन रख सकता है जिन्हें MariaDB पहचानता नहीं है, और आयात "unknown collation" त्रुटि के साथ विफल हो जाएगा। अगर ऐसा होता है, तो utf8mb4_unicode_ci जैसे व्यापक रूप से संगत कोलेशन का उपयोग करके दोबारा निर्यात करें, या आयात करने से पहले डंप फ़ाइल में इसे खोजकर बदल दें।

KPanel में किसी साइट का Database टैब, जिसमें डेटाबेस कनेक्शन विवरण दिखाया गया है

होस्ट 127.0.0.1 क्यों है

127.0.0.1 का मतलब है "यह मशीन"। डेटाबेस सर्वर केवल मशीन के अपने आंतरिक इंटरफ़ेस पर सुनता है, और फ़ायरवॉल पर पोर्ट 3306 भी इंटरनेट के लिए खुला नहीं है। पैनल में इसे खोलने के लिए कोई सेटिंग नहीं है, और इसके लिए कोई IP allowlist भी नहीं है।

यह कोई चूक नहीं है। इंटरनेट-फेसिंग डेटाबेस पोर्ट होस्टिंग में सबसे भरोसेमंद ढंग से शोषण की जाने वाली चीज़ों में से एक है: इसे लगातार स्कैन किया जाता है, यह कनेक्ट करने वाले किसी भी व्यक्ति को वर्ज़न की जानकारी लीक करता है, और एक भी कमज़ोर पासवर्ड से आपकी पूरी साइट हाथ से निकल जाती है। इसे बंद रखने से जोखिम की यह पूरी श्रेणी ही समाप्त हो जाती है।

इसलिए आपकी साइट के पब्लिक IP पते और पोर्ट 3306 का उपयोग करने वाला कनेक्शन स्ट्रिंग हर जगह से, हर प्लान पर, हमेशा विफल होगा। इसके बजाय प्रवेश के दो समर्थित तरीके हैं।

विकल्प 1: ब्राउज़र में phpMyAdmin

त्वरित नज़र डालने, कोई संपादन करने, या छोटा आयात या निर्यात करने के लिए सबसे आसान।

Database पेज पर, phpMyAdmin खोलें पर क्लिक करें। आप सीधे अपनी साइट के अपने क्रेडेंशियल के साथ साइन इन कर दिए जाते हैं और आपको केवल अपने ही डेटाबेस दिखते हैं।

ऐसा करने वाला लिंक जानबूझकर कम समय के लिए मान्य रहता है, और यह ऐसे तरीकों से विफल होता है जो त्रुटियों जैसे दिखते हैं लेकिन हैं नहीं:

  • यह 60 सेकंड में समाप्त हो जाता है। इसके दिखते ही इस पर क्लिक करें।
  • यह एक बार काम करता है। वापस जाकर दोबारा लोड करना काम नहीं करेगा; एक नया लिंक बनाएं।
  • इसे उसी ब्राउज़र और उसी नेटवर्क से खोला जाना चाहिए जिससे आपने इसका अनुरोध किया था। अगर आप लिंक को किसी अन्य डिवाइस पर कॉपी करते हैं, या बीच में आपका कनेक्शन पता बदल जाता है, तो इसे अस्वीकार कर दिया जाता है।

अगर आपको "This link has already been used" या IP mismatch के बारे में कोई संदेश दिखे, तो यह सुरक्षा काम कर रही है। Database पेज पर वापस जाएं और बटन पर फिर से क्लिक करें।

phpMyAdmin के साथ काम करने के बारे में, phpMyAdmin का उपयोग करना देखें।

विकल्प 2: डेस्कटॉप टूल के लिए SSH टनल

अगर आप डेस्कटॉप क्लाइंट का उपयोग करना चाहते हैं, तो यही समर्थित रास्ता है। टनल सर्वर से एक एन्क्रिप्टेड कनेक्शन खोलता है और उसके ज़रिए आपकी अपनी मशीन पर एक पोर्ट को आगे भेजता (फॉरवर्ड करता) है, ताकि आपका क्लाइंट ऐसे किसी डेटाबेस से कनेक्ट हो जो स्थानीय लगता है।

आपको पहले क्या चाहिए

साइट पर एक SSH कुंजी। पासवर्ड प्रमाणीकरण स्वीकार नहीं किया जाता, इसलिए यह चरण वैकल्पिक नहीं है।

  1. वेबसाइटें, साइट, सेटिंग्स, फिर SSH कुंजियां पर जाएं।
  2. या तो वह सार्वजनिक कुंजी पेस्ट करें जिसका आप पहले से उपयोग करते हैं, या पैनल से एक नई कुंजी जोड़ी जनरेट करें।
  3. उस पेज पर दिखाए गए यूज़रनेम को नोट करें। यह आपकी साइट का सिस्टम यूज़र है, और आप इसी रूप में कनेक्ट करते हैं।

अगर आप पैनल में कोई कुंजी जनरेट करते हैं, तो निजी कुंजी केवल एक बार दिखाई जाती है और फिर कभी नहीं। इसे तुरंत सहेज लें, और इसे ऐसी जगह रखें जहाँ केवल आप ही इसे पढ़ सकें।

जब भी आपकी साइट में कोई कुंजी जोड़ी जाती है तो आपको एक ईमेल भी मिलेगा। यह जानबूझकर किया गया है। अगर कोई ईमेल आता है और यह आपने नहीं किया था, तो उसी पेज से तुरंत उसे रद्द करें और अगर आपकी साइट हैक हो जाए पढ़ें।

पूरी प्रक्रिया के लिए SSH कुंजियां जोड़ना देखें।

SFTP टैब पर बनाया गया SFTP खाता टनल के लिए काम नहीं करेगा। ये खाते केवल फ़ाइल स्थानांतरण के लिए हैं, जिनमें न कोई शेल है और न ही पोर्ट फॉरवर्डिंग। टनलिंग के लिए साइट के अपने SSH यूज़र को एक कुंजी के साथ चाहिए होता है। SFTP पहुंच देखें।

टनल खोलना

अपनी मशीन पर एक टर्मिनल से:

ssh -N -L 3307:127.0.0.1:3306 your-ssh-user@cp1-kapsule.kapsulehost.com

your-ssh-user को SSH कुंजियां पेज के यूज़रनेम से बदलें। इसे समझते हैं:

  • -N का मतलब है कोई कमांड न चलाएं, बस टनल को खुला रखें।
  • -L 3307:127.0.0.1:3306 आपकी मशीन पर पोर्ट 3307 को सर्वर पर पोर्ट 3306 की ओर फॉरवर्ड करता है।
  • 3306 के बजाय पोर्ट 3307 का उपयोग इसलिए किया जाता है ताकि यह उस डेटाबेस से न टकराए जो आप स्थानीय रूप से चला रहे हों।

जब यह सही से काम करता है तो कमांड कुछ भी प्रिंट नहीं करती। यह सही है। जब तक आपको कनेक्शन की ज़रूरत है तब तक टर्मिनल विंडो को खुला छोड़ दें, और इसे बंद करने के लिए Ctrl+C दबाएं।

अपने क्लाइंट को कनेक्ट करना

टनल खुला होने पर, अपने डेटाबेस टूल को इन पर इंगित करें:

सेटिंगमान
होस्ट127.0.0.1
पोर्ट3307
यूज़रनेमDatabase पेज से डेटाबेस यूज़रनेम
पासवर्डDatabase पेज से डेटाबेस पासवर्ड
डेटाबेसआपका डेटाबेस नाम

यह विभाजन ध्यान दें: SSH यूज़रनेम आपकी साइट का सिस्टम यूज़र है, और डेटाबेस यूज़रनेम Database पेज से एक अलग यूज़रनेम है। इन दोनों को मिला देना यहाँ की सबसे आम गलती है।

अधिकतर डेस्कटॉप क्लाइंट में एक अंतर्निहित "connect over SSH tunnel" विकल्प भी होता है, जो बिना किसी अलग टर्मिनल के ठीक ऊपर जैसा ही करता है। SSH होस्ट cp1-kapsule.kapsulehost.com, पोर्ट 22, अपना SSH यूज़रनेम, और अपनी निजी कुंजी फ़ाइल भरें, फिर ऊपर दिए गए अनुसार डेटाबेस फ़ील्ड भरें।

क्लाइंट-दर-क्लाइंट सेटअप के लिए डेटाबेस SSH टनल देखें।

सर्वर पर कमांड लाइन

अगर आप टर्मिनल में सहज हैं, तो आपको टनल की बिल्कुल भी ज़रूरत नहीं है। SSH के ज़रिए कनेक्ट करें और सीधे सर्वर पर काम करें:

ssh your-ssh-user@cp1-kapsule.kapsulehost.com
mysqldump -u DBUSER -p DBNAME > backup.sql

टनल के ज़रिए बड़ा डेटाबेस खींचने की तुलना में यह कहीं ज़्यादा तेज़ है, और किसी जोखिम भरे बदलाव से पहले मैनुअल डंप लेने का यह सही तरीका है। खासतौर पर WordPress के लिए, WP-CLI आमतौर पर और भी बेहतर है।

समस्या निवारण

अपनी ही मशीन से पोर्ट 3306 पर "Connection refused"। अपेक्षित है। ऊपर देखें। टनल का उपयोग करें।

टनल कमांड पासवर्ड मांगता है। आपकी कुंजी पेश नहीं की जा रही है या इंस्टॉल नहीं है। जांचें कि कुंजी SSH कुंजियां पेज पर है और कमांड में -i /path/to/your/private/key जोड़ें।

"Permission denied (publickey)"। गलत यूज़रनेम, या गलत कुंजी। यूज़रनेम वही है जो SSH कुंजियां पेज पर है, न कि आपका KapsuleHost लॉगिन ईमेल।

पोर्ट 3307 के लिए "Address already in use"। कोई टनल पहले से खुला है, या कुछ और उस पोर्ट का उपयोग कर रहा है। दूसरे को बंद करें, या 3308 जैसा कोई अलग स्थानीय पोर्ट चुनें।

टनल खुलता है लेकिन क्लाइंट कनेक्ट नहीं हो पाता। पुष्टि करें कि आपका क्लाइंट 127.0.0.1 और आपके चुने हुए स्थानीय पोर्ट की ओर इंगित है, न कि आपके डोमेन की ओर।

"Access denied for user"। डेटाबेस क्रेडेंशियल, SSH नहीं। Database पेज से उन्हें फिर से रिवील करें और कॉपी करें।

आयात पर "Unknown collation"। ऊपर कवर किया जा चुका है। संगत कोलेशन के साथ दोबारा निर्यात करें।

आप डेटाबेस क्लाइंट में जो कुछ भी करते हैं वह तुरंत होता है और इसे वापस नहीं लिया जा सकता। इसमें कोई पुष्टिकरण चरण नहीं है और कोई रीसायकल बिन नहीं है। कुछ भी लिखने वाली कार्रवाई चलाने से पहले बैकअप लें। बैकअप लेना देखें।

संबंधित गाइड

क्या यह उपयोगी था?

क्या आप AI हैं? यह पेज Markdown में पढ़ें

संबंधित लेख

SFTP के माध्यम से कनेक्ट करना: FileZilla, Cyberduck, और कमांड लाइनSFTP (Secure File Transfer Protocol) आपको सर्वर पर आपकी साइट की फ़ाइलों तक सीधी पहुँच देता है। यह गाइड सफलतापूर्वक कनेक्ट करने के लिए आवश्यक हर चीज़ को कवर करती…SSL सर्टिफिकेट और HTTPSयह लेख सरल भाषा में बताता है कि SSL क्या है, KapsuleHost आपकी साइटों के लिए SSL को स्वचालित रूप से कैसे संभालता है, और यदि आपके प्रमाणपत्र में कोई समस्या आती है…वेबसाइट्स: कहाँ से शुरू करेंKapsuleHost पर वेबसाइट होस्टिंग कैसे काम करती है, किसी साइट के हर टैब पर क्या होता है, और आपके सामने जो काम है उसके लिए कौन सी गाइड पढ़नी चाहिए। होस्ट की गई…साइट अपटाइम मॉनिटरिंगKapsuleHost पर हर साइट को हर 60 सेकंड में स्वतः जाँचा जाता है, और Uptime टैब आपको परिणाम दिखाता है: वर्तमान स्थिति, अपटाइम प्रतिशत, response times, और पूरा…

अब भी समस्या है?

Kora से पूछें, जो आपके खाते को जानती है, या हमारी टीम से संपर्क करें।

संपर्क करेंसहायता को ईमेल करें