MySQL 8.0 और linux में यह काम करने के लिए नीचे दिए गए चरणों का पालन करें
-
निम्न चरणों को निष्पादित करने से पहले बैकअप mysql स्कीमा का उपयोग करें
mysqldump -h localhost -u root -p mysql> /home/username/dumps/mysqldump.sql
और फिर mysql का उपयोग करना बंद करें
sudo service mysql stop
-
/var/lib/mysql निर्देशिका को स्थानांतरित या हटा दें। यह सभी डेटाबेस को हटा देगा!!!!
mv /var/lib/mysql /tmp/mysql
-
एक नई /var/lib/mysql निर्देशिका बनाएं और mysql उपयोगकर्ता को स्वामी बनाएं
mkdir /var/lib/mysql chown -R mysql:mysql /var/lib/mysql chmod 750 /var/lib/mysql
-
संपादित करें /etc/mysql/mysql.conf.d/mysqld.cnf और इसके बाद निम्न पंक्ति जोड़ें
[mysqld] lower_case_table_names=1
-
निम्नलिखित का उपयोग करके mysql को प्रारंभ करें
mysqld --defaults-file=/etc/mysql/my.cnf --initialize lower_case_table_names=1 --user=mysql --console
अपनी डिफ़ॉल्ट फ़ाइल के वास्तविक स्थान के साथ डिफ़ॉल्ट-फ़ाइल बदलें। यहाँ mysql आरंभीकरण के बारे में अधिक जानकारी:https://dev.mysql.com/doc/refman/8.0/en/data-directory-initialization-mysqld.html
-
(वैकल्पिक) दोहराएं
chown -R mysql:mysql /var/lib/mysql chmod 750 /var/lib/mysql
अगर /var/lib/mysql में फाइलों का मालिक mysql नहीं है
-
sudo service mysql start
-
अगर सब कुछ सही ढंग से काम करता है, तो mysql का उपयोग करके खोलें
mysql -u root -p
और इस क्वेरी को चलाकर
SHOW VARIABLES where Variable_name like 'lower%';
आपको मिलेगा
'lower_case_table_names', '1'
-
चरण 0 में बनाए गए डंप का उपयोग करके mysql स्कीमा को पुनर्स्थापित करें।
-
Sys स्कीमा बनाने के लिए mysql_upgrad निष्पादित करें