उपयोगकर्ता के लिए mysqldump करने के लिए न्यूनतम अनुमतियाँ?


26

मैं दूरस्थ mysqldump क्रोन शेड्यूल करना शुरू करना चाहता हूं, और मैं उस उद्देश्यों के लिए एक विशेष खाते का उपयोग करना पसंद करूंगा। मैं उस उपयोगकर्ता को पूर्ण डंप प्राप्त करने के लिए न्यूनतम अनुमति देना चाहता हूं, लेकिन मुझे इसके बारे में सबसे अच्छा तरीका नहीं है।

क्या यह उतना ही सरल है

grant SELECT on *.* to '$username'@'backuphost' identified by 'password'; 

या मैं एक बेहतर तरीका याद कर रहा हूँ?

जवाबों:


24

मेरा मानना ​​है कि उपयोगकर्ता को केवल बैकअप लेने के लिए तालिकाओं पर चुनिंदा अनुमतियों की आवश्यकता है।

संपादित करें: यह आदमी "लॉक टेबल" की अनुमति देने के लिए कहता है, जो समझ में आता है।


क्या यह अभी भी 2017 में मान्य उत्तर है?
किस्लिक


5

सोच रहे लोगों के लिए, यहाँ सटीक कमांड है:

GRANT SELECT, LOCK TABLES, SHOW VIEW ON *.* TO 'user'@'localhost' IDENTIFIED BY 'password';

5

ऐसा लगता है कि आपको RELOAD की भी आवश्यकता है। इसलिए:

GRANT SELECT, LOCK TABLES, SHOW VIEW, RELOAD ON *.* TO 'user'@'localhost' IDENTIFIED BY 'password';

1

और आपको EVENT की जरूरत है अगर आप EVENT को डंप करना चाहते हैं।

और अगर आपको TRIGGERs भी डंप करना है तो आपको TRIGGER की जरूरत है। (मैनुअल क्या कहता है के बावजूद!)

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.