कैसे पुन: जांच / var / lib / mysql फ़ाइलों के लिए?


15

एक दुर्घटना के कारण मैंने संपूर्ण / var / lib / mysql निर्देशिका को हटा दिया। चूंकि डेटाबेस में कुछ भी महत्वपूर्ण नहीं था, इसलिए मैं इसे पुराने बैकअप से बहाल करने के झंझट से नहीं गुजरना चाहता, लेकिन इसके बजाय स्क्रैच से डायरेक्टरी स्ट्रक्चर बनाएं। MySQL को पुन: स्थापित किए बिना मैं इसे कैसे करूं?

जवाबों:


18

आपको कमांड लाइन से बस चलाने में सक्षम होना चाहिएmysql_install_db

mysql_install_db MySQL डेटा डायरेक्टरी को इनिशियलाइज़ करता है और सिस्टम टेबल बनाता है जो इसमें मौजूद है, अगर वे मौजूद नहीं हैं। यह InnoDB तालिकाओं को प्रबंधित करने के लिए आवश्यक सिस्टम तालिकाओं और संबंधित डेटा संरचनाओं को भी इनिशियलाइज़ करता है। MySQL 5.6.8 के रूप में, mysql_install_db एक पर्ल स्क्रिप्ट है और पर्ल के साथ किसी भी सिस्टम पर प्रयोग किया जा सकता है। 5.6.8 से पहले, यह एक शेल स्क्रिप्ट है और केवल यूनिक्स प्लेटफार्मों पर उपलब्ध है।

तब के लिए कृपया MySQL के डॉक्यूमेंटेशन को पूरा पढ़ेंmysql_install_db ...

कोशिश करो !!!

यदि यह पहली कोशिश पर काम नहीं करता है, तो ऐसा करें

mkdir /var/lib/mysql
mkdir /var/lib/mysql/mysql
chown -R mysql:mysql /var/lib/mysql 

तब चलाने के mysql_install_dbफिर से


इसने पहली कोशिश में काम किया। धन्यवाद। पासवर्ड एक और समस्या है।
कोनराड गजवेस्की

मेरी पोस्ट देखें dba.stackexchange.com/questions/44645/…
RolandoMySQLDBA

restorecon -r /var/lib/mysqlअगर आपको SELinux सक्षम है तो आपको यह भी करने की आवश्यकता हो सकती है
महमूद मोस्तफा

10

MySQL 5.7 के लिए> बस:

# Move or remove the original dir
mv /var/lib/mysql /tmp/mysql

# Create a new dir
mkdir /var/lib/mysql

# Change owner to mysql (user and group)
chown -R mysql:mysql /var/lib/mysql

# Create MySQL initial data
mysqld --initialize

1
एकमात्र जवाब जो मेरे लिए काम कर रहा है
Bahaa Odeh

Mysql Ver 14.14 डिस्ट्रीब्यूट 5.7.22, लिनक्स के लिए (x86_64) एडिटलाइन रैपर का उपयोग करते हुए
Bahaa Odeh
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.