SET PASSWORD स्टेटमेंट यूजर का पासवर्ड बदलने का एक और तरीका है। इसके लिए यूजर के पास कम से कम UPDATE विशेषाधिकार होना चाहिए (या स्वयं अपना पासवर्ड बदल रहा हो)।
सिंटैक्स
SET PASSWORD FOR 'user_name'@'host_name' = 'new_password';
-- या (MySQL 5.7.6+)
SET PASSWORD FOR 'user_name'@'host_name' = PASSWORD('new_password');
उदाहरण
SET PASSWORD FOR 'user'@'localhost' = 'tutorials';
-- या
SET PASSWORD FOR 'user'@'localhost' = PASSWORD('tutorials');
नोट्स
- MySQL 5.7.6+ में
PASSWORD()फंक्शन उपयोग करें (प्लेन टेक्स्ट पासवर्ड हैश नहीं होता)। - MySQL 8.0+ में
PASSWORD()हटा दिया गया — प्लेन टेक्स्ट दें, सर्वर हैश करेगा। FLUSH PRIVILEGESआवश्यक नहीं — स्वचालित।- स्वयं अपना पासवर्ड बदलने के लिए:
SET PASSWORD = 'newpass';
तुलना: तीन तरीके
| विधि | MySQL संस्करण | FLUSH PRIVILEGES | टिप्पणी |
|---|---|---|---|
| UPDATE mysql.user | सभी (पुराना) | आवश्यक | सीधा टेबल अपडेट, अनुशंसित नहीं |
| SET PASSWORD | 5.7.6+ | नहीं | सरल, स्वयं पासवर्ड बदलने के लिए अच्छा |
| ALTER USER | 5.7.6+ | नहीं | अनुशंसित — पूर्ण विशेषताओं वाला |