MySQL संदर्भ मैनुअल में रूट के लिए पासवर्ड रीसेट करने के तरीके के बारे में विस्तृत चरण हैं जो नीचे दिए गए हैं:
विंडोज के तहत प्रक्रिया:
- विंडोज सिस्टम में लॉग ऑन करें जहां MySQL एडमिनिस्ट्रेटर के रूप में चल रहा है।
- यदि MySQL सर्वर चल रहा है तो उसे रोक दें। Windows सेवा के रूप में चल रहे सर्वर के लिए, सेवा प्रबंधक पर जाएँ:
स्टार्ट मेन्यू -> कंट्रोल पैनल -> एडमिनिस्ट्रेटिव टूल्स -> सर्विसेज
फिर सूची में MySQL सेवा ढूंढें, और इसे रोकें।
यदि आपका सर्वर सेवा के रूप में नहीं चल रहा है, तो आपको इसे रोकने के लिए बाध्य करने के लिए कार्य प्रबंधक का उपयोग करने की आवश्यकता हो सकती है।
- एक टेक्स्ट फ़ाइल बनाएं और उसके भीतर निम्नलिखित कमांड को एक पंक्ति में रखें:
UPDATE mysql.user SET Password=PASSWORD('MyNewPass') WHERE User='root'; FLUSH PRIVILEGES;
Save the file with any name. For this example the file will be C:\mysql-init.txt.SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MyNewPassword');
- Open a console window to get to the DOS command prompt: Start Menu -> Run -> cmd
- If MySQL is installed in C:\mysql. If MySQL is installed in another location, adjust the following commands accordingly.
At the DOS command prompt, execute this command:
C:\> C:\mysql\bin\mysqld-nt --init-file=C:\mysql-init.txt
--init-file विकल्प द्वारा नामित फ़ाइल की सामग्री को रूट पासवर्ड बदलते हुए सर्वर स्टार्टअप पर निष्पादित किया जाता है। सर्वर के सफलतापूर्वक शुरू होने के बाद, आपको C:\mysql-init.txt को हटा देना चाहिए।
यदि आपने MySQL इंस्टालेशन विज़ार्ड का उपयोग करके MySQL स्थापित किया है, तो आपको --defaults-file विकल्प निर्दिष्ट करने की आवश्यकता हो सकती है:
C:\> "C:\Program Files\MySQL\MySQL Server 5.0\bin\mysqld-nt.exe" --defaults-file="C:\Program Files\MySQL\MySQL Server 5.0\my.ini" --init-file=C:\mysql-init.txt
सेवा प्रबंधक का उपयोग करके उपयुक्त --defaults-फ़ाइल सेटिंग पाई जा सकती है:
स्टार्ट मेन्यू -> कंट्रोल पैनल -> एडमिनिस्ट्रेटिव टूल्स -> सर्विसेज
सूची में MySQL सेवा ढूंढें, उस पर राइट-क्लिक करें, और गुण विकल्प चुनें। निष्पादन योग्य फ़ील्ड के पथ में --defaults-file सेटिंग शामिल है। फ़ाइल के लिए पूर्ण सिस्टम पथ के साथ --init-file तर्क की आपूर्ति करना सुनिश्चित करें, आपकी वर्तमान कार्यशील निर्देशिका पर ध्यान दिए बिना
- MySQL सर्वर को रोकें, फिर इसे सामान्य मोड में फिर से शुरू करें। यदि MySQL सर्वर को सेवा के रूप में चलाया जाता है, तो इसे Windows सेवा विंडो से प्रारंभ करें। यदि आप सर्वर को मैन्युअल रूप से प्रारंभ करते हैं, तो जो भी कमांड आप सामान्य रूप से उपयोग करते हैं उसका उपयोग करें।
- नए पासवर्ड का उपयोग करके MySQL सर्वर से कनेक्ट करें। साथ ही mysql-init.txt फ़ाइल को डिलीट करना न भूलें।
यूनिक्स और लिनक्स वातावरण के लिए, रूट पासवर्ड रीसेट करने की प्रक्रिया इस प्रकार है:
- यूनिक्स सिस्टम में या तो यूनिक्स रूट उपयोगकर्ता के रूप में या उसी उपयोगकर्ता के रूप में लॉग ऑन करें जिसे mysqld सर्वर चलाता है।
- .pid फ़ाइल का पता लगाएँ जिसमें सर्वर की प्रक्रिया ID है। इस फ़ाइल का सटीक स्थान और नाम आपके वितरण, होस्टनाम और कॉन्फ़िगरेशन पर निर्भर करता है। सामान्य स्थान हैं /var/lib/mysql/, /var/run/mysqld/, और /usr/local/mysql/data/। आम तौर पर, फ़ाइल नाम में .pid का विस्तार होता है और यह mysqld या सिस्टम के होस्टनाम से शुरू होता है।
निम्न आदेश में .pid फ़ाइल के पथनाम का उपयोग करते हुए, mysqld प्रक्रिया में एक सामान्य किल (किल -9 नहीं) भेजकर MySQL सर्वर को रोकें:
shell> kill `cat /mysql-data-directory/host_name.pid`
कैट कमांड के साथ फॉरवर्ड कोट्स के बजाय बैकटिक्स के उपयोग पर ध्यान दें; ये बिल्ली के आउटपुट को किल कमांड में प्रतिस्थापित करने का कारण बनते हैं।
- एक टेक्स्ट फ़ाइल बनाएं और उसमें निम्न कमांड को एक लाइन पर रखें:
UPDATE mysql.user SET Password=PASSWORD('MyNewPass') WHERE User='root'; FLUSH PRIVILEGES;
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MyNewPassword');
के लिए पासवर्ड सेट करेंफ़ाइल को किसी भी नाम से सहेजें। इस उदाहरण के लिए फ़ाइल ~/mysql-init होगी।
- MySQL सर्वर को विशेष --init-file=~/mysql-init विकल्प के साथ पुनरारंभ करें:
shell> mysqld_safe --init-file=~/mysql-init &
सर्वर स्टार्टअप पर इनिट-फाइल की सामग्री को रूट पासवर्ड बदलकर निष्पादित किया जाता है। सर्वर के सफलतापूर्वक शुरू होने के बाद आपको ~/mysql-init को मिटा देना चाहिए।
- सर्वर को सामान्य रूप से पुनरारंभ करें। नए पासवर्ड का उपयोग करके MySQL सर्वर से कनेक्ट करें।
वैकल्पिक रूप से, किसी भी प्लेटफॉर्म पर, नया पासवर्ड सेट करने के लिए mysql क्लाइंट का उपयोग किया जा सकता है, हालांकि यह पासवर्ड रीसेट करने का कम सुरक्षित तरीका है (विस्तृत निर्देश यहां):
- mysqld को रोकें और --स्किप-अनुदान-तालिकाओं --user=root विकल्पों के साथ इसे पुनः प्रारंभ करें (Windows उपयोगकर्ता --user=root भाग को छोड़ देते हैं)।
- इस कमांड के साथ mysqld सर्वर से कनेक्ट करें:
shell> mysql -u root
- mysql क्लाइंट में निम्नलिखित कथन जारी करें:
mysql> UPDATE mysql.user SET Password=PASSWORD('newpwd') -> WHERE User='root'; mysql> FLUSH PRIVILEGES;
'newpwd' को उस वास्तविक रूट पासवर्ड से बदलें जिसका आप उपयोग करना चाहते हैं।
- आपको नए पासवर्ड का उपयोग करके कनेक्ट करने में सक्षम होना चाहिए।