আমি বিশ্বাস করি আমি মাইএসকিউএল রুট ব্যবহারকারী মুছে ফেলেছি, আমি কিভাবে এটি পুনরায় তৈরি করব?


7

আমি CentOS এ ISPConfig চালাচ্ছি এবং আমি জানি না কিভাবে, কিন্তু আমার রুট মাইএসকিউএল ব্যবহারকারী মনে হচ্ছে না।

আমি সঙ্গে mysqld বন্ধ করতে পারেন

/etc/init.d/mysqld stop

এটি আবার শুরু করুন এবং অনুদান ত্যাগ উপেক্ষা করুন

mysqld_safe --skip_grant_tables &
mysql> SELECT * FROM sql.user

আমি দেখেছি যে 4 টি ব্যবহারকারী আমি আগে তৈরি করেছি কিন্তু কোন রুট ব্যবহারকারী নেই। আমি একটি ফাইল /root/rootreset.sql মধ্যে এই নির্বাণ চেষ্টা।

GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY 'my_pass' WITH GRANT OPTION;

এবং যে ফাইল দিয়ে শুরু

mysqld_safe --init-file=/root/rootreset.sql &

[1] 30039
[root@algrhckdj ~]# Starting mysqld daemon with databases from /var/lib/mysql/
STOPPING server from pid file /var/run/mysqld/mysqld.pid
111020 04:06:34  mysqld ended
[1]+  Done                    mysqld_safe --init-file=/root/rootreset.sql

দেখে মনে হচ্ছে এসকিউএলটি চালানো হয়েছে, আমি কোনও ত্রুটি দেখিনি, তবে পরিষেবাটি চলমান বলে মনে হচ্ছে না, আমি এই ত্রুটির সাথে সংযোগ করতে পারছি না।

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (111)

আমি শুরু করার পরে কনসোল থেকে sql চলমান চেষ্টা --skip-grant-table কিন্তু এই ত্রুটি পেয়েছিলাম।

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

এটি অনেক তথ্য মনে হচ্ছে তবে আমি অনলাইনে বিভিন্ন পরামর্শ দেওয়ার চেষ্টা করছি এবং কোথাও যেতে পারছি না। আমি কি করা উচিত?

আমাকে superuser সাহায্য, আপনি আমার একমাত্র আশা।


1
নীচের বোতাম ব্যবহার করে আপনার নিজের প্রশ্নের উত্তর দিন!
slhck

উত্তর:


3

আমি এই অনুসরণ নির্দেশাবলী এবং আমার রুট ব্যবহারকারী এখন ব্যবহারকারীর টেবিলে তালিকাভুক্ত করা হয়েছে এবং আমি এটির সাথে লগইন করতে পারি। কি মনে হচ্ছে এটি রুট পরিবর্তে MySQL ব্যবহারকারী হিসাবে এই পদক্ষেপগুলি সম্পাদন করা হয়।

root# /etc/init.d/mysqld stop
root# su mysql
mysql$ pwd
/home/mysql
mysql$ echo "GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY 'my_pass' WITH GRANT OPTION;"> mysql-init
mysql$ mysqld_safe --init-file=/home/mysql/mysql-init &
mysql$ rm mysql-init
mysql$ mysql -uroot -p   # woot, works

আপনার নিজের সমস্যা সমাধানের জন্য ভালো লাগছে, আহ? +1 !!!
RolandoMySQLDBA
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.