MySQL

2008-09-24 3 views
33

में अनुदान देखें मैं MySQL में किसी दिए गए उपयोगकर्ता के लिए अनुदान (एक्सेस अधिकार) कैसे देखूं?MySQL

उत्तर

1

आप पहले से ही पीएचपी साथ एक वेब सर्वर चला रहे हैं तो phpMyAdmin एक काफी अनुकूल प्रशासनिक उपकरण है।

+0

आह-हा! जब phpMyAdmin स्थापित किया जाता है, तो अनुदान बहुत आसान बनाता है! ग्रेट टिप :-) – Bromide

5

आप Maatkit से एमके-शो-अनुदान देखना चाहते हैं, जो एक कैननिकल रूप में सभी उपयोगकर्ताओं के लिए अनुदान के वर्तमान सेट को आउटपुट करेगा, संस्करण नियंत्रण या प्रतिकृति को और अधिक सरल बना देगा।

34

MySQL के हाल के संस्करणों के लिए एक वैकल्पिक पद्धति है:

select * from information_schema.user_privileges where grantee like "'user'%"; 

इस प्रारूप के साथ संभव लाभ में वृद्धि हुई लचीलापन किसी भी मेजबान से जाँच करने के लिए "उपयोगकर्ता के" अनुदान (संगत उपयोगकर्ता नाम कल्पना करते हुए) या जांच करने के लिए है अतिरिक्त स्थितियों के साथ विशिष्ट विशेषाधिकार (उदाहरण के लिए, विशेषाधिकार_ प्रकार = 'हटाएं')।

यह संस्करण शायद स्क्रिप्ट के भीतर उपयोग करने के लिए बेहतर अनुकूल है जबकि "शो अनुदान" वाक्यविन्यास इंटरैक्टिव सत्रों (अधिक "मानव पठनीय") के लिए बेहतर है।

+0

+1: यह तालिकाओं और विशेष विशेषाधिकारों के साथ-साथ जांच करने की अनुमति देता है, जो कि कुछ मामलों में उपयोगी है (केवल ग्रंथों द्वारा लौटाए गए पाठ विवरण के बजाय)। –

+0

यह अनुचित रूप से बनाए गए अनुदान डीबगिंग के लिए भी बहुत उपयोगी है। यदि गलत उपयोगकर्ता या होस्ट के लिए आपको दिया गया है तो आपको शो ग्रांट्स से क्या चाहिए, यह प्राप्त करना मुश्किल हो सकता है; –

+4

अन्य अनुदान संबंधित तालिकाओं के बारे में न भूलें SCHEMA_PRIVILEGES, TABLE_PRIVILEGES और यहां तक ​​कि COLUMN_PRIVILEGES – KCD

6

आप इस कोशिश कर सकते:

SELECT GRANTEE, PRIVILEGE_TYPE FROM information_schema.user_privileges; 
SELECT User,Host,Db FROM mysql.db; 

 संबंधित मुद्दे