MySQL में --स्किप-ग्रांट-टेबल बंद करें


13

मैं लिनक्स का उपयोग करने के लिए बहुत नया हूँ, लेकिन अपने MySQL डेटाबेस को Amazon ec2 उदाहरण पर स्थापित कर रहा हूँ। मैंने --skip-grant-tablesMySQL के विकल्प का उपयोग करके उपयोगकर्ता लॉगिन पास को रीसेट करने के बारे में कुछ दिशा-निर्देशों का पालन किया । अब मैं एक उपयोगकर्ता जोड़ने की कोशिश कर रहा हूं और यह पता नहीं लगा सकता कि उस विकल्प को कैसे बंद किया जाए।

यही मैं करने की कोशिश कर रहा हूँ:

mysql> GRANT CREATE,SELECT,INSERT,UPDATE,DELETE ON ...my db username and pass

लेकिन मुझे यह त्रुटि मिली:

ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement

मैं इस विकल्प को कैसे बंद करूं?

जवाबों:




2

आप इसे नीचे दिए गए चरणों का उपयोग करके बना सकते हैं।

[root@backups1 mysql5.7]# bin/mysqld_safe --skip-grant-tables --user=mysql

पासवर्ड के बिना अपने mysql से कनेक्ट करें।

mysql> flush privileges;
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '';
mysql> flush privileges;

mysql के सामान्य मोड में स्विच करें फिर पासवर्ड के बिना कनेक्ट करें।

यह निश्चित रूप से आपके लिए काम करेगा।


0

कल मैं इसी तरह के मुद्दे का सामना कर चुका हूं। सर्वर अमेज़न लिनक्स 2 को ओएस और आधिकारिक यम रिपॉजिटरी (एल 7 वाले) को इंस्टॉलेशन साधनों के रूप में उपयोग कर रहा था।

खासकर जब आप आधिकारिक yum रेपो के MySQL का उपयोग कर रहे हैं, तो MySQL को सिस्टमड सर्विस के रूप में स्थापित किया जाएगा। ऐसे मामले में, आप जांच सकते हैं कि निम्नलिखित आदेश को निष्पादित करके MySQL प्रक्रिया कैसे शुरू की जाती है sudo service mysql status -l:। यह वर्तमान mysql सेवा की वर्तमान स्थिति का वर्णन करता है। उन विवरणों में, मैं निम्नलिखित पंक्ति पा सकता हूं:

  Process: 26474 ExecStart=/usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid $MYSQLD_OPTS

मेरे वातावरण में, यह पता चला कि MYSQLD_OPTSचर को --skip-grant-tablessystemd प्रक्रिया द्वारा मूल्य विकल्प के साथ सेट किया गया था । सिस्टमड द्वारा निर्धारित पर्यावरण चर की पुष्टि करने के लिए, आप निष्पादित कर सकते हैं sudo systemctl showऔर शुरू होने वाली रेखा की तलाश कर सकते हैं Environment=

इस पर्यावरण चर को बदलने के लिए, मैंने निम्नलिखित कमांड को निष्पादित किया।

sudo systemctl set-environment MYSQLD_OPTS=""

इस ऑपरेशन के बाद, मैंने mysqld सेवा को फिर से शुरू किया sudo service mysql restart, और सब कुछ पूरी तरह से काम कर रहा था।

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