المواقع الإلكترونية

الاتصال بقاعدة البيانات الخاصة بك عن بعد

Where to find your database credentials, why direct remote connections on port 3306 are refused, and how to connect a desktop tool through an SSH tunnel instead.

حيث العثور على بيانات اعتماد قاعدة البيانات الخاصة بك، ولماذا يتم رفض الاتصالات البعيدة المباشرة على المنفذ 3306، وكيفية توصيل أداة سطح المكتب من خلال نفق SSH بدلاً من ذلك.

كل موقع استضافة ويب من KapsuleHost يحتوي على قاعدة بيانات يحصل على قاعدة بيانات خاصة به، ومستخدم قاعدة بيانات خاص به، وبيانات اعتماد يمكنك قراءتها في أي وقت. ما لا يمكنك فعله هو الاتصال به مباشرة عبر الإنترنت، وهذا مقصود. يغطي هذا الدليل بيانات الاعتماد والطريقتين المدعومتين للدخول، وكيفية إعداد النفق الذي تحتاجه أدوات قاعدة البيانات على سطح المكتب.

العثور على بيانات اعتمادك

انتقل إلى المواقع، انقر على الموقع، ثم الملفات، ثم قاعدة البيانات.

تعرض الصفحة خمسة أشياء:

الحقلالقيمة
المضيف127.0.0.1
المنفذ3306
قاعدة البياناتاسم قاعدة البيانات الخاصة بك
اسم المستخدممستخدم قاعدة البيانات الخاص بك
كلمة المرورمخفية، مع زر الكشف وزر النسخ

كلمة المرور ليست كشفًا لمرة واحدة فقط. يمكنك العودة وقراءتها كلما احتجت إليها، لذا لا توجد حاجة لتخزينها بشكل منفصل.

خادم قاعدة البيانات هو MariaDB 10.11، وهو متوافق مع MySQL. هذا مهم بطريقة عملية واحدة: قد تحتوي النسخة المُصدَّرة من خادم MySQL حديث على دقائق تصادم (collations) لا تتعرفها MariaDB، وسيفشل الاستيراد مع خطأ "unknown collation". إذا حدث ذلك، أعد التصدير باستخدام دقة تصادم متوافقة على نطاق واسع مثل utf8mb4_unicode_ci، أو قم بالبحث والاستبدال فيها في ملف النسخة قبل الاستيراد.

علامة التبويب قاعدة البيانات لموقع في KPanel

لماذا المضيف هو 127.0.0.1

127.0.0.1 تعني "هذا الجهاز". خادم قاعدة البيانات يستمع فقط على الواجهة الداخلية للجهاز، والمنفذ 3306 غير مفتوح للإنترنت في جدار الحماية أيضًا. لا توجد إعدادات في لوحة التحكم لفتحه، وليس هناك قائمة IP مسموحة به.

هذا ليس عن طريق الخطأ. منفذ قاعدة بيانات متجه نحو الإنترنت هو أحد الأشياء التي يتم استغلالها بشكل موثوق في الاستضافة: يتم مسحها بشكل مستمر، وتسرب معلومات الإصدار لأي شخص يتصل، وكلمة مرور واحدة ضعيفة تجعلك تفقد الموقع بأكمله. إبقاؤه مغلقًا يزيل فئة المخاطر الكاملة هذه.

لذا فإن سلسلة الاتصال باستخدام عنوان IP العام للموقع والمنفذ 3306 ستفشل دائمًا، من أي مكان، على كل خطة. هناك طريقتان مدعومتان للدخول بدلاً من ذلك.

الخيار 1: phpMyAdmin في المتصفح

الأسهل للنظرة السريعة، أو التعديل، أو الاستيراد أو التصدير الصغير.

في صفحة قاعدة البيانات، انقر على فتح phpMyAdmin. تم التوقيع عليك مباشرة ببيانات اعتماد موقعك الخاص وترى قواعد البيانات الخاصة بك فقط.

الرابط الذي يفعل هذا قصير الأجل عن قصد، ويفشل بطرق تبدو وكأنها أخطاء لكنها ليست كذلك:

  • ينتهي الصلاحية في 60 ثانية. انقر عليه بمجرد ظهوره.
  • يعمل مرة واحدة. الرجوع والإعادة لن تعمل؛ أنشئ رابطًا جديدًا.
  • يجب فتحه من نفس المتصفح والشبكة نفسها التي طلبته منها. إذا نسخت الرابط إلى جهاز آخر، أو تغير عنوانك في منتصف الطريق، فسيتم رفضه.

إذا رأيت "تم استخدام هذا الرابط بالفعل" أو رسالة حول عدم تطابق IP، فهذه هي الحماية تعمل. ارجع إلى صفحة قاعدة البيانات وانقر على الزر مرة أخرى.

للعمل مع phpMyAdmin نفسه، انظر استخدام phpMyAdmin.

الخيار 2: نفق SSH لأدوات سطح المكتب

إذا كنت تريد استخدام عميل سطح المكتب، فهذا هو المسار المدعوم. يفتح النفق اتصالاً مشفرًا إلى الخادم وينقل منفذًا على جهازك الخاص من خلاله، بحيث يتصل العميل الخاص بك بما يبدو وكأنه قاعدة بيانات محلية.

ما تحتاجه أولاً

مفتاح SSH على الموقع. لا تقبل المصادقة بكلمة المرور، لذا هذه الخطوة ليست اختيارية.

  1. انتقل إلى المواقع، الموقع، الملفات، ثم مفاتيح SSH.
  2. إما الصق المفتاح العام الذي تستخدمه بالفعل، أو أنشئ زوج مفاتيح جديد من لوحة التحكم.
  3. لاحظ اسم المستخدم المعروض على تلك الصفحة. إنه مستخدم نظام موقعك، وهو ما تتصل به.

إذا قمت بإنشاء مفتاح في لوحة التحكم، يتم عرض المفتاح الخاص مرة واحدة فقط ولا يتم عرضه مرة أخرى. احفظه فورًا، واحفظه في مكان لا يمكن لأحد سواك قراءته.

سوف تتلقى أيضًا بريدًا إلكترونيًا كلما تمت إضافة مفتاح إلى موقعك. هذا مقصود. إذا وصل واحد ولم تكن أنت، أبطله من تلك الصفحة مباشرة واقرأ إذا تم اختراق موقعك.

انظر إضافة مفاتيح SSH للتعليمات الكاملة.

لن يعمل حساب SFTP تم إنشاؤه على علامة التبويب SFTP للنفق. تلك الحسابات فقط لنقل الملفات، بدون shell وبدون إعادة توجيه المنفذ. يتطلب النفق مستخدم SSH الخاص بالموقع مع مفتاح. انظر SFTP Access.

فتح النفق

من terminal على جهازك الخاص:

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 على الخادم.
  • يتم استخدام المنفذ 3307 بدلاً من 3306 بحيث لا يتعارض مع قاعدة بيانات قد تعمل محليًا.

الأمر لا يطبع أي شيء عندما يعمل. هذا صحيح. اترك نافذة terminal مفتوحة طالما تحتاج الاتصال، واضغط Ctrl+C لإغلاقه.

توصيل عميلك

مع فتح النفق، وجّه أداة قاعدة البيانات الخاصة بك إلى:

الإعدادالقيمة
المضيف127.0.0.1
المنفذ3307
اسم المستخدماسم مستخدم قاعدة البيانات من صفحة قاعدة البيانات
كلمة المروركلمة المرور الخاصة بقاعدة البيانات من صفحة قاعدة البيانات
قاعدة البياناتاسم قاعدة البيانات الخاصة بك

لاحظ الانقسام: اسم مستخدم SSH هو مستخدم نظام موقعك، واسم مستخدم قاعدة البيانات هو مستخدم مختلف من صفحة قاعدة البيانات. الخلط بين هذين الاثنين هو الخطأ الأكثر شيوعًا هنا.

تحتوي معظم عملاء سطح المكتب أيضًا على خيار مدمج "الاتصال عبر نفق SSH"، والذي يفعل بالضبط ما ورد أعلاه بدون terminal منفصل. ملء مضيف SSH cp1-kapsule.kapsulehost.com، المنفذ 22، اسم مستخدم SSH الخاص بك، وملف المفتاح الخاص بك، ثم حقول قاعدة البيانات كما هو مذكور أعلاه.

انظر Database SSH Tunnel لإعداد العميل تلو الآخر.

سطر الأوامر على الخادم

إذا كنت مرتاحًا في terminal، فلا تحتاج إلى نفق على الإطلاق. اتصل عبر SSH واعمل على الخادم مباشرة:

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

هذا أسرع بكثير من سحب قاعدة بيانات كبيرة عبر نفق، وهذه هي الطريقة الصحيحة لأخذ dump يدوي قبل تغيير محفوف بالمخاطر. بالنسبة إلى WordPress خاصة، WP-CLI عادة ما يكون أفضل.

استكشاف الأخطاء وإصلاحها

"Connection refused" على المنفذ 3306 من جهازك الخاص. متوقع. انظر أعلاه. استخدم نفقًا.

يطلب أمر النفق كلمة مرور. لا يتم تقديم مفتاحك أو لم يتم تثبيته. تحقق من وجود المفتاح على صفحة مفاتيح SSH وأضف -i /path/to/your/private/key إلى الأمر.

"Permission denied (publickey)". اسم مستخدم خاطئ، أو مفتاح خاطئ. اسم المستخدم هو الموجود على صفحة مفاتيح SSH، وليس بريد بريدك الإلكتروني لتسجيل الدخول Kapsule.

"Address already in use" للمنفذ 3307. نفق مفتوح بالفعل، أو شيء آخر يستخدم هذا المنفذ. أغلق الآخر، أو اختر منفذًا محليًا مختلفًا مثل 3308.

النفق ينفتح لكن العميل لا يمكنه الاتصال. تأكد من أن عميلك موجه إلى 127.0.0.1 والمنفذ المحلي المختار الخاص بك، وليس إلى نطاقك.

"Access denied for user". بيانات اعتماد قاعدة البيانات، وليس SSH. اكشف والنسخ مرة أخرى من صفحة قاعدة البيانات.

"Unknown collation" على الاستيراد. مغطى أعلاه. أعد التصدير مع دقة تصادم متوافقة.

أي شيء تفعله في عميل قاعدة بيانات يحدث فورًا ولا يمكن التراجع عنه. لا توجد خطوة تأكيد وسلة مهملات. خذ نسخة احتياطية قبل تشغيل أي شيء يكتب. انظر أخذ نسخة احتياطية.

أدلة ذات صلة

هل تحتاج إلى مساعدة إضافية؟

راسلنا على البريد الإلكتروني support@kapsulehost.com أو افتح محادثة في KPanel.

فتح KPanel
الاتصال بقاعدة البيانات الخاصة بك عن بعد