यह अभी भी मेरे दिमाग को मारता है कि MySQL कमांड लाइन और लॉग्स में पासवर्ड को बाधित करने से परेशान नहीं करता है। और यह एकमात्र कारण है कि मैं केवल @Gilles उत्तर पर टिप्पणी करने के बजाय एक उत्तर जोड़ रहा हूं।
तो, ज़ाहिर है, आप बस MySQL में एक व्यवस्थापक के रूप में लॉग इन कर सकते हैं और अपने ब्लेयो उपयोगकर्ता के लिए एक नया पासवर्ड सेट कर सकते हैं, जैसा कि @patrix ने सुझाव दिया है।
हालाँकि, ऐसा करने का मानक तरीका MySQL के पासवर्ड () फ़ंक्शन का उपयोग करके है, जो एक प्लेटेक्स्ट पासवर्ड को एक तर्क (गंभीरता से?) के रूप में लेता है।
यदि आप ऐसा करते हैं, तो आप अपने MySQL उपयोगकर्ता के पासवर्ड को अपने बैश इतिहास में और आपके MySQL लॉग में बैठे रहने के लिए छोड़ देते हैं, जो बाद में उन लॉग फ़ाइलों तक पहुँच प्राप्त करने का प्रबंधन करता है।
क्या यह बेहतर नहीं होगा कि थोड़ी उपयोगिता हो, जो पासवर्ड के लिए संकेत दे, उसे स्क्रीन पर या आपके लॉग में जाने के बिना, फिर आपको परिणामी MySQL- संगत हैश प्रदान करे?
तो, @ गिल्स के उत्तर को थोड़ा संशोधित करते हुए, कैसे थोड़ा शेल स्क्रिप्ट के बारे में जो पायथन का उपयोग करता है, निम्न की तरह। आप एक बार में पासवर्ड सेट करने के लिए अपने MySQL डेटाबेस के खिलाफ SQL स्टेटमेंट चलाने के लिए इसे आसानी से संशोधित कर सकते हैं। लेकिन यहां तक कि बिना जाने, बस यूज़र्स टेबल को अपडेट करने के लिए परिणामस्वरूप हैश को SQL स्टेटमेंट में कॉपी और पेस्ट करें:
#!/bin/bash
mysqlpwd=$(/usr/bin/python -c 'from hashlib import sha1; import getpass; print "*" + sha1(sha1(getpass.getpass("New MySQL Password:")).digest()).hexdigest()')
echo $mysqlpwd
blayo
? यह सही चरित्र खोजने के लिए संभव चरित्र संयोजनों के खरबों से चलने की तुलना में निश्चित रूप से तेज़ है।