كيفية الاتصال بخادم الخلية داخل فيرتثلبوإكس المتشرد?
-
13-12-2019 - |
سؤال
أنا شنت آلة فيرتثلبوإكس جديدة مع المتشرد ، وداخل ذلك فم قمت بتثبيت خادم الخلية.كيف يمكنني الاتصال بهذا الخادم خارج الجهاز الظاهري?أنا بالفعل إعادة توجيه المنفذ 3306 من فاغرانتفيل ، ولكن عندما أحاول الاتصال بخادم الخلية ، انها ريسبوستس مع الخطأ:'قراءة حزمة الاتصالات الأولية'
ERROR 2013 (HY000): Lost connection to MySQL server at 'reading initial communication packet', system error: 0
المحلول
تأكد من الخلية يربط إلى 0.0.0.0 وليس 127.0.0.1 أو أنه لن يكون الوصول إليها من خارج الجهاز
يمكنك التأكد من ذلك عن طريق تحرير بلدي.ملف أسيوط وتبحث عن bind-address
تريد أن تبدو وكأنها bind-address = 0.0.0.0
.ثم حفظ هذا وإعادة تشغيل الخلية:
sudo service mysql restart
إذا كنت تفعل ذلك على خادم إنتاج ، فأنت تريد أن تكون على دراية بالآثار الأمنية ، التي تمت مناقشتها هنا: https://serverfault.com/questions/257513/how-bad-is-setting-mysqls-bind-address-to-0-0-0-0
نصائح أخرى
تسجيل الدخول إلى المربع الخاص بك مع ssh vagrant@127.0.0.1 -p 2222
(كلمة متشرد)
ثم: sudo nano /etc/mysql/my.cnf
والتعليق على الأسطر التالية مع #
#skip-external-locking
#bind-address
حفظه والخروج
ثم: sudo service mysql restart
ثم يمكنك الاتصال من خلال سه إلى خادم الخلية الخاصة بك.
صادفت هذه المشكلة مؤخرا.استخدمت Puphet لتوليد التكوين.
للاتصال MySQL من خلال SSH، لم تكن كلمة المرور "المتشردة" تعمل من أجلي، بدلا من ذلك، كان علي المصادقة من خلال ملف مفتاح SSH.
للتواصل مع Workbench MySQL
طريقة الاتصال
TCP / IP قياسي عبر SSH
ssh
giveacodicetagpre.mysql
giveacodicetagpre.اختبار الاتصال.
لأي شخص يحاول القيام بذلك باستخدام Workbench MySQL أو Sequel Pro هذه هي المدخلات:
giveacodicetagpre.المصدر: https://coderwall.com/p/azwqvg
حسنا، نظرا لأن أي من الردود المعينة ساعدني، اضطررت إلى البحث عن المزيد، ووجدت الحل في هذا المادة.
والإجابة باختصار هو ما يلي:
الاتصال mysql باستخدام workbench mysql
giveacodicetagpre.باستخدام نهج معين كنت قادرا على الاتصال بقاعدة بيانات MySQL في Vagrant من Most Ubuntu Machine باستخدام MySQL Workbench وكذلك استخدام Valentina Studio.
فيما يلي الخطوات التي نجحت معي بعد تسجيل الدخول إلى المربع:
تحديد موقع الخلية ملف التكوين:
$ mysql --help | grep -A 1 "Default options"
Default options are read from the following files in the given order: /etc/my.cnf /etc/mysql/my.cnf ~/.my.cnf
على أوبونتو 16 ، يكون المسار عادة /etc/mysql/mysql.conf.d/mysqld.cnf
تغيير ملف التكوين لربط عنوان:
إذا كان موجودا ، قم بتغيير القيمة على النحو التالي.إذا لم يكن موجودا ، إضافته في أي مكان في قسم [ميسكلد].
bind-address = 0.0.0.0
حفظ التغييرات إلى ملف التكوين وإعادة تشغيل خدمة الخلية.
service mysql restart
إنشاء / منح الوصول إلى مستخدم قاعدة البيانات:
الاتصال بقاعدة بيانات الخلية كمستخدم الجذر وتشغيل الأوامر سكل التالية:
mysql> CREATE USER 'username'@'%' IDENTIFIED BY 'password';
mysql> GRANT ALL PRIVILEGES ON mydb.* TO 'username'@'%';
هذا عملت بالنسبة لي: الاتصال mysql في المتشرد
giveacodicetagpre.