MySQL अनुमतियाँ उस पते पर आधारित होती हैं जिससे वे उपयोगकर्ता के साथ-साथ कनेक्ट कर रहे हैं। तो [email protected] और [email protected] अनुमतियों के दो अलग-अलग सेट होंगे। स्थानीयहोस्ट को 127.0.0.1 में बदलना जैसा कि num8er उल्लेख किया गया है, शायद काम करेगा यदि आपका कोड और डेटाबेस एक ही सर्वर पर हैं।
यदि आपके पास उस बॉक्स तक टर्मिनल पहुंच है जहां आपका PHP है, तो आप इसका उपयोग करके PHP के साथ कुछ भी करने के लिए सीधे निर्णय लेने का प्रयास कर सकते हैं:
mysql -h 10.4.1.163 -u root -p[pass] database -e "SHOW TABLES"
ध्यान दें कि -p
. के बीच कोई स्थान नहीं है और पासवर्ड। सफल होने पर यह आपको database
. में तालिकाओं की एक सूची प्राप्त करेगा ।
अन्य उपयोगकर्ताओं को या किसी अन्य होस्टनाम/आईपी के लिए पहुंच प्रदान करने के लिए आप इस तरह से कुछ चलाना चाहेंगे:(हालांकि आपको वास्तव में अपनी आवश्यकताओं के आधार पर अधिक प्रतिबंधित अनुमतियों के साथ एक अलग उपयोगकर्ता बनाना चाहिए)।
GRANT ALL PRIVILEGES ON `database`.* TO 'root'@'10.4.1.163';
MySQL के GRANT पर दस्तावेज़ यहाँ देखें - http://dev.mysql .com/doc/refman/5.7/hi/grant.html
एक तरफ ध्यान दें - कृपया, कृपया, कृपया कम से कम mysql_real_escape_string
का उपयोग किए बिना किसी भी पुराने डेटा को क्वेरी में न डालें (http://php.net/manual/en/ function.mysql-real-escape-string.php
) इस पर पहले से विचार करें। आप पीडीओ (http://php पर भी देख सकते हैं। net/manual/hi/book.pdo.php
) जिसे आम तौर पर अब पदावनत mysql_
. पर पसंद किया जाता है कार्य