মাইএসকিউএল সার্ভার দূরবর্তী মেশিন থেকে অ্যাক্সেসযোগ্য নয়


14

আমি আমার স্থানীয় উবুন্টু সার্ভারে মাইএসকিউএল সার্ভার ইনস্টল করেছি (১১.১০) আমি কোনও দূরবর্তী যন্ত্র থেকে সার্ভারের সাথে সংযোগ করতে পারি না।

যখন আমি চেষ্টা করেছি: - nmap localhost , এটি নিম্নলিখিতটি দেখায়

পোর্ট স্টেট সার্ভিস
22 / টিসিপি ওপেন এসএসএস
80 / টিসিপি খোলা HTTP
139 / টিসিপি ওপেন নেটবিওএস-এসএসএন
445 / টিসিপি মাইক্রোসফ্ট-ডিএস খুলুন
631 / টিসিপি খোলা আইপিপি
3306 / টিসিপি খোলা মাইএসকিএল

এর অর্থ হ'ল 3306, মাইএসকিউএল পোর্টটি খোলা আছে, তাই না? তবে যখন আমি চেষ্টা করেছি nmap 192.168.0.50, যা সার্ভারের আইপি, আমি নিম্নলিখিতগুলি পাই:

পোর্ট স্টেট সার্ভিস
22 / টিসিপি ওপেন এসএসএস
80 / টিসিপি খোলা HTTP
139 / টিসিপি ওপেন নেটবিওএস-এসএসএন
445 / টিসিপি মাইক্রোসফ্ট-ডিএস খুলুন

এর অর্থ কি আইপি ব্যবহারের সময় পোর্টটি খোলা থাকে না? যদি তাই হয় তবে আমি কীভাবে বন্দরটি খুলব?

আমি নীচের কোডটি চেষ্টা করেছিলাম, তবে দেখে মনে হচ্ছে এটি কার্যকর হয়নি।

sudo iptables -A INPUT -p tcp --dport 3306 -j ACCEPT

এখানে কি ভুল?

উত্তর:


22

আপনার মাইএসকিউএল পরিষেবাটি কেবল লোকালহোস্ট পরিবেশন করতে বাধ্য (ইন্টারফেস বাঁধাই)। এটি সুরক্ষা কারণে ডিফল্ট। আপনার যদি অন্য হোস্টগুলি থেকে সরাসরি এটি অ্যাক্সেসের প্রয়োজন হয় তবে উবুন্টুতে মাইএসকিউএলে দূরবর্তী অ্যাক্সেসকে কীভাবে সক্ষম করতে হয় এটি একটি দুর্দান্ত উপায় রয়েছে যা আপনি অনুসরণ করতে পারেন:

  1. রুট হিসাবে, আপনার /etc/mysql/my.cnfবা /etc/mysql/mysql.conf.d/mysqld.cnf আপনার প্রিয় সম্পাদকের সাথে খুলুন , বিভিন্ন সিস্টেমে এটি পৃথক বলে মনে হয়।
  2. সন্ধান [mysqld]সেখানে অধ্যায়, এবং bind-addressশব্দ। এটি সাধারণত সেট করা হয় 127.0.0.1- আপনার "সাধারণ" আইপি-ঠিকানার সাথে মেলে এটি পরিবর্তন করুন
  3. ফাইলটি সংরক্ষণ করুন এবং পরিষেবাটি পুনরায় লোড করুন (যেমন ব্যবহার করে service mysql restart)

মনে রাখবেন আপনার যথাযথ GRANTs সেট করে আপনার দূরবর্তী ব্যবহারকারীদের দূরবর্তী থেকে তাদের ডাটাবেসগুলি অ্যাক্সেস করতে সক্ষম করতে হবে - যেমন

GRANT ALL ON mydb.* TO remoteuser@'%' IDENTIFIED BY 'SomePASSWORD';

নোট করুন @'%', যার অর্থ "কোনও হোস্ট থেকে"।


পড়ে খুশি - এবং আপনাকে স্বাগতম!
ইজজি

লিঙ্কটি নষ্ট হয়েছে :(
ডিনো

2
@Dino আর নেই আমি এটি সংশোধন করেছি এবং একটি অংশও অন্তর্ভুক্ত করেছি, সুতরাং যদি এটি আবার মারা যায় তবে প্রয়োজনীয় পদক্ষেপগুলি এখানেই রয়েছে। আমার খারাপ আমি প্রথম থেকেই এটি করিনি - তবে আপনি টাইমস্ট্যাম্প থেকে দেখতে পাচ্ছেন, এটি আমার প্রাথমিক উত্তরগুলির মধ্যে একটি। আমরা সবাই শিখি :)
Izzy

2
বাইন্ড-ঠিকানা ক্ষেত্রটি /etc/mysql/mysql.conf.d/mysqld.cnfআমার সিস্টেমের জন্য ছিল ।
এরিক জি

@ এরিকজি পয়েন্টারটির জন্য ধন্যবাদ। আমার উত্তরটি 5 বছর আগে ছিল, সুতরাং কনফিগারগুলি কিছুটা বদলে গেছে (এবং সম্ভবত আরও মডিউলার তৈরি হয়েছে)।
ইজজি
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.