MySQL 5.7 नहीं निर्देशिका, गृह = के साथ लॉग इन


17

मुझे खेद है कि यदि यह प्रश्न पहले ही पूछा जा चुका है, लेकिन मैं इस (शायद छोटे) मुद्दे का कोई हल नहीं ढूंढ सकता:

मैंने अभी 14.04 सर्वर पर mysql-सर्वर 5.7 की एक नई स्थापना की है। जब भी MySQL सेवा शुरू होती है, मुझे यह त्रुटि मिलती है:

root@xxx:/etc/mysql# service mysql restart
 * Stopping MySQL Community Server 5.7.11
...
 * MySQL Community Server 5.7.11 is stopped
 * Re-starting MySQL Community Server 5.7.11
No directory, logging in with HOME=/
..
 * MySQL Community Server 5.7.11 is started

इसका क्या मतलब है? क्या मुझे उपयोगकर्ता "mysql" के लिए एक होम डायरेक्टरी सेट करनी होगी? (और यदि हां, तो सबसे अच्छा विकल्प क्या है? / घर / mysql ??) अब यह / कोई नहीं है:

mysql:x:110:106:MySQL Server,,,:/nonexistent:/bin/false

लेकिन मैं एक ही / nonexistent के साथ एक और मशीन है, और यह कोई त्रुटि नहीं दिखाता है ...


1
/ var / log / mysql ;-) देखें: askubuntu.com/questions/539440/…
Rinzwind

ठीक है, मेरे मामले में यह शुरू हुआ और ठीक काम करने लगता है, यह सिर्फ उस सूचना को दर्शाता है
the_nuts

जवाबों:


32

इस त्रुटि से छुटकारा पाने के लिए एक ही समस्या होने पर मैंने निम्न कार्य किया

  1. MYSQL सेवा बंद करें:

    sudo service mysql stop

  2. Mysql की होम डाइरेक्टरी को कोई भी मूल निर्देशिका से परिवर्तित न करें जहां यह माना जाता है:

    sudo usermod -d /var/lib/mysql/ mysql

अब mysql सर्वर को फिर से शुरू करें:

sudo service mysql start

त्रुटि संदेश गायब हो गया है। फिर भी ऐसा क्यों होता है यह अज्ञात है।


1
यह एक काम हो सकता है लेकिन मैं इससे असहमत होऊंगा। / घर / उपयोगकर्ताओं के लिए है। डमी उपयोगकर्ताओं के लिए जगह बनाने के लिए नहीं जो सुरक्षा / अनुमति / जो कुछ भी आवश्यक हो। सुझाव / घर / mysql और एक वास्तविक mysql उपयोगकर्ता बनाने वाले व्यक्ति को गंभीरता से फटकार लगाई जानी चाहिए ।
रिनजविंड

/ var / lib o / var / लॉग? वैसे भी, वह निर्देशिका किसी भी डेटा के साथ पॉप्युलेट नहीं हो रही है
the_nuts

2
हाँ, यह एक समाधान है जब आपको कोई समाधान मिलता है तो मुझे बताएं।
अब्दुल हई

1
इस पोस्ट के अनुसार , Red Hat के पास mysql होम डायरेक्टरी है /var/lib/mysql। तो यह ठीक लगता है ....
ओस्ट्रोकैच

2
जब यह लायक है, तो मुझे यह त्रुटि मिली जब मैं विंडोज डब्ल्यूएसएल में mysql चला रहा था। Windows पर mysqld.exe छोड़ने के बाद त्रुटि हो रही है। पोर्ट 3306 का दावा विंडोज प्रक्रिया द्वारा किया गया था।
अज़ीरा

0

मैं एक स्थायी समाधान सुझाऊंगा, अगर यह हमेशा एक ही dir से चलता है जैसा कि मुझे लगता है कि इसे उपयोगकर्ता mysql / etc / passwd में संपादित क्यों नहीं करना चाहिए:

mysql:x:106:111:MySQL Server,,,:/var/lib/mysql/:/bin/false
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.