आइए देखें कि MySQL डेटाबेस के उपयोगकर्ता को अनुमतियाँ (जिन्हें विशेषाधिकार कहा जाता है) कैसे प्रदान करें
डिफ़ॉल्ट रूप से जब आप सिंटैक्स का उपयोग करके एक नया MySQL उपयोगकर्ता बनाते हैं
CREATE USER '<username>'@'localhost' IDENTIFIED BY '<password>';
उपयोगकर्ता बहुत कुछ नहीं कर सकता। हम कह सकते हैं कि यह वास्तव में कुछ भी नहीं कर सकता।
यह किसी भी मौजूदा डेटाबेस से डेटा नहीं पढ़ सकता है, डेटा को संशोधित करने की तो बात ही छोड़ दें। और यह एक नया डेटाबेस भी नहीं बना सकता।
उपयोगकर्ता को कुछ भी करने के लिए, आपको विशेषाधिकार प्रदान करना . करना होगा इसके लिए।
आप GRANT
. का उपयोग करके ऐसा कर सकते हैं आदेश।
हम GRANT <permission>
का उपयोग कर सकते हैं , निम्नलिखित अनुमति कीवर्ड का उपयोग करके:
CREATE
DROP
DELETE
INSERT
SELECT
UPDATE
ALL PRIVILEGES
उपयोगकर्ता को नए डेटाबेस बनाने का विशेषाधिकार दें
GRANT CREATE ON *.* TO '<username>'@'localhost';
किसी विशिष्ट डेटाबेस में नई तालिकाएं बनाने के लिए उपयोगकर्ता को विशेषाधिकार दें
GRANT CREATE ON <database>.* TO '<username>'@'localhost';
किसी उपयोगकर्ता को किसी विशिष्ट डेटाबेस को पढ़ने (क्वेरी) करने का विशेषाधिकार दें
GRANT SELECT ON <database>.* TO '<username>'@'localhost';
एक विशिष्ट डेटाबेस तालिका को पढ़ने का विशेषाधिकार दें एक उपयोगकर्ता के लिए
GRANT SELECT ON <database>.<table> TO '<username>'@'localhost';
किसी विशिष्ट डेटाबेस में पंक्तियों को सम्मिलित करने, अद्यतन करने और हटाने का विशेषाधिकार दें एक उपयोगकर्ता
GRANT INSERT, UPDATE, DELETE ON <database>.* TO '<username>'@'localhost';
किसी उपयोगकर्ता को किसी विशिष्ट डेटाबेस में तालिकाओं को हटाने का विशेषाधिकार दें
GRANT DROP ON <database>.* TO '<username>'@'localhost';
किसी उपयोगकर्ता को डेटाबेस हटाने का विशेषाधिकार दें
GRANT DROP ON *.* TO '<username>'@'localhost';
किसी उपयोगकर्ता को विशिष्ट डेटाबेस पर सभी विशेषाधिकार दें
GRANT ALL PRIVILEGES ON <database>.* TO '<username>'@'localhost';
उपयोगकर्ता को सभी विशेषाधिकार दें
GRANT ALL PRIVILEGES ON *.* TO '<username>'@'localhost';
एक विशेषाधिकार निरस्त करें
DROP
को निरस्त करने का उदाहरण <database>
. पर विशेषाधिकार :
REVOKE DROP ON <database>.* TO '<username>'@'localhost';
सभी विशेषाधिकार निरस्त करने के लिए, दौड़ें:
REVOKE ALL PRIVILEGES ON *.* TO '<username>'@'localhost';
आप चलाकर एकल उपयोगकर्ता के विशेषाधिकारों की कल्पना कर सकते हैं:
SHOW GRANTS FOR '<username>'@'localhost';