आपका root
खाता, और यह विवरण किसी भी खाते पर लागू होता है, हो सकता है कि केवल लोकलहोस्ट एक्सेस (जो अनुशंसित है) के साथ जोड़ा गया हो।
आप इसकी जांच कर सकते हैं:
SELECT host FROM mysql.user WHERE User = 'root';
यदि आप केवल localhost
के साथ परिणाम देखते हैं और 127.0.0.1
, आप किसी बाहरी स्रोत से कनेक्ट नहीं कर सकते हैं। यदि आप अन्य आईपी पते देखते हैं, लेकिन वह नहीं जिससे आप कनेक्ट कर रहे हैं - यह भी एक संकेत है।
आपको उस प्रत्येक सिस्टम का IP पता जोड़ना होगा जिसे आप एक्सेस देना चाहते हैं, और फिर विशेषाधिकार प्रदान करें:
CREATE USER 'root'@'ip_address' IDENTIFIED BY 'some_pass';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'ip_address';
अगर आपको %
दिखाई देता है , तो ठीक है, एक और समस्या पूरी तरह से है क्योंकि वह "कोई दूरस्थ स्रोत" है। फिर भी यदि आप चाहते हैं कि कोई/सभी सिस्टम रूट के माध्यम से जुड़ें, तो %
. का उपयोग करें पहुंच प्रदान करने के लिए वाइल्डकार्ड:
CREATE USER 'root'@'%' IDENTIFIED BY 'some_pass';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%';
अंत में, अनुमतियों को पुनः लोड करें, और आपको दूरस्थ पहुंच प्राप्त करने में सक्षम होना चाहिए:
FLUSH PRIVILEGES;