আমি আমার মাইএসকিউএল রুট পাসওয়ার্ডটি বের করতে পারি না; আমি এটি কিভাবে খুঁজে পেতে পারি? এই পাসওয়ার্ডটি সংরক্ষিত আছে এমন কোন ফাইল রয়েছে?
আমি এই লিঙ্কটি অনুসরণ করছি তবে স্থানীয়ভাবে আমার কাছে ডিরেক্টডমিন ডিরেক্টরি নেই।
আমি আমার মাইএসকিউএল রুট পাসওয়ার্ডটি বের করতে পারি না; আমি এটি কিভাবে খুঁজে পেতে পারি? এই পাসওয়ার্ডটি সংরক্ষিত আছে এমন কোন ফাইল রয়েছে?
আমি এই লিঙ্কটি অনুসরণ করছি তবে স্থানীয়ভাবে আমার কাছে ডিরেক্টডমিন ডিরেক্টরি নেই।
উত্তর:
@ তুষারকে ধন্যবাদ আমি পুরানো পাসওয়ার্ড না জেনে রুট পাসওয়ার্ডটি পুনরায় সেট করতে পারি।
উবুন্টুতে আমি নিম্নলিখিতগুলি করেছি:
sudo service mysql stop
sudo mysqld_safe --skip-grant-tables --skip-syslog --skip-networking
তারপরে নতুন টার্মিনালে mysql চালান:
mysql -u root
এবং পাসওয়ার্ড পরিবর্তন করতে নিম্নলিখিত প্রশ্নগুলি চালান:
UPDATE mysql.user SET authentication_string=PASSWORD('password') WHERE User='root';
FLUSH PRIVILEGES;
মাইএসকিউএল ৫.7-এ, mysql.user টেবিল ক্ষেত্রের পাসওয়ার্ড ক্ষেত্রটি সরানো হয়েছে, এখন ক্ষেত্রের নামটি 'প্রমাণীকরণ_স্তরকরণ'।
মাইএসকিএল নিরাপদ মোড থেকে প্রস্থান করুন এবং এর মাধ্যমে মাইএসকিএল পরিষেবা শুরু করুন:
mysqladmin shutdown
sudo service mysql start
mysqladmin -u root -p shutdown
নতুন পাসওয়ার্ড সহ ব্যবহার করতে হয়েছিল ।
mysql -u root
। এটি ত্রুটি দেখায়Access denied
আপনি হ্যাশ পাসওয়ার্ড দেখতে পারবেন না; কেবলমাত্র আপনি যা করতে পারবেন তা হ'ল এটি পুনরায় সেট করুন!
মাইএসকিউএল বন্ধ করুন:
sudo service mysql stop
অথবা
$ sudo /usr/local/mysql/support-files/mysql.server stop
এটি নিরাপদ মোডে শুরু করুন:
$ sudo mysqld_safe --skip-grant-tables
(উপরের লাইনটি সম্পূর্ণ কমান্ড)
প্রক্রিয়া শেষ না হওয়া অবধি এটি একটি চলমান কমান্ড হবে সুতরাং অন্য শেল / টার্মিনাল উইন্ডোটি খুলুন, পাসওয়ার্ড ছাড়াই লগ ইন করুন:
$ mysql -u root
mysql> UPDATE mysql.user SET Password=PASSWORD('password') WHERE User='root';
মাইএসকিউএল 5.7 এবং তার বেশি:
mysql> use mysql;
mysql> update user set authentication_string=password('password') where user='root';
মাইএসকিউএল শুরু করুন:
sudo mysql start
অথবা
sudo /usr/local/mysql/support-files/mysql.server start
আপনার নতুন পাসওয়ার্ডটি 'পাসওয়ার্ড'।
mysql_secure_installation
এবং মূলটি আর সহযোগিতা করছে না। authentication_string
সেটিংটি কী করে ?
mysqladmin -u root -p shutdown
তারপরে নতুন পাসওয়ার্ড দিয়ে চেষ্টা করুনsudo service mysql start
মাইএসকিউএল 5.7 এবং তারপরে মাইএসকিউএল লগ ফাইলে রুট সংরক্ষণ করে।
দয়া করে এটি চেষ্টা করুন:
sudo grep 'temporary password' /var/log/mysqld.log
/var/log/mysql/error.log
মূল পাসওয়ার্ডটি ফাঁকা থাকার বিষয়ে একটি সতর্কতা রয়েছে - সুতরাং এই জাতীয় দিনটি আমার রক্ষা হয়েছিল :)
এমন একটি জিনিস যা আমাকে মাইএসকিউএল এর একটি নতুন ইনস্টল করে ফেলেছে এবং অবাক করে দেয় যে আমি কেন কাজ করতে ডিফল্ট পাসওয়ার্ড পেতে পারি না এবং এমনকি যেখানে রিসেট পদ্ধতিও কাজ করছে না কেন। ঠিক আছে যে উবুন্টু 18 এ মাইএসকিএল সার্ভারের অতি সাম্প্রতিক সংস্করণটি ডিফল্টরূপে রুট ব্যবহারকারীর জন্য পাসওয়ার্ড প্রমাণ ব্যবহার করে না। সুতরাং এর অর্থ এটি আপনি কী সেট করেছেন তা বিবেচ্য নয়, এটি আপনাকে এটি ব্যবহার করতে দেয় না। আশা করা হচ্ছে আপনি কোনও সুবিধাযুক্ত সকেট থেকে লগইন করবেন। সুতরাং
mysql -u root -p
আপনি যদি সঠিক পাসওয়ার্ড ব্যবহার করেন, আদৌ কার্যকর হবে না !!! এটি আপনি যেভাবেই রাখুন না কেন অ্যাক্সেস অস্বীকার করবে।
পরিবর্তে আপনি ব্যবহার করা প্রয়োজন
sudo mysql
এটি কোনও পাসওয়ার্ড নিয়ে কাজ করবে। তারপরে আপনার একবারে টাইপ করতে হবে
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'Password you want to use';
তারপরে লগ আউট করুন এবং রক্তাক্ত জিনিসটি অবশেষে আপনার পাসওয়ার্ড গ্রহণ করবে
আপনি এটি খুঁজে পাবেন না। এটি একটি ডাটাবেসে সংরক্ষণ করা হয়, যা অ্যাক্সেস করার জন্য আপনাকে রুট পাসওয়ার্ডের প্রয়োজন এবং এমনকি যদি আপনি কোনওভাবে অ্যাক্সেস পেয়ে থাকেন তবে এটি একটি-ওয়ে হ্যাশ দিয়ে হ্যাশ করা হয়। আপনি এটিকে পুনরায় সেট করতে পারেন: http://dev.mysql.com/doc/refman/5.0/en/resetting-permitted.html
উইন্ডোজ সিস্টেমে পাসওয়ার্ড পুনরায় সেট করতে এই পদক্ষেপগুলি অনুসরণ করুন
টাস্ক ম্যানেজার থেকে মাইএসকিএল পরিষেবা বন্ধ করুন
একটি পাঠ্য ফাইল তৈরি করুন এবং নীচের বিবৃতিটি পেস্ট করুন
মাইএসকিউএল 5.7.5 এবং তার আগের:
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('yournewpassword');
মাইএসকিউএল 5.7.6 এবং তার পরে:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'yournewpassword';
হিসাবে সংরক্ষণ করুন mysql-init.txt
এবং এটি স্থাপন 'C' drive
।
কমান্ড প্রম্পট ওপেন করুন এবং নিম্নলিখিতটি পেস্ট করুন
C:\> mysqld --init-file=C:\\mysql-init.txt
mysqld --init-file=/root/m.txt
। আমি কমান্ড উপরে যোগ SET PASSWORD FOR 'root'@'localhost' = PASSWORD('yournewpassword');
করার /root/m.txt
ইনস্টলেশন চলাকালীন প্যাকেজ ম্যানেজার আপনাকে রুট পাসওয়ার্ড টাইপ করার জন্য অনুরোধ না করলে ডিফল্ট রুট পাসওয়ার্ডটি খালি স্ট্রিং। নতুনভাবে ইনস্টল করা সার্ভারে সংযোগ করতে, টাইপ করুন:
shell> mysql -u root --password=
mysql>
পাসওয়ার্ড পরিবর্তন করতে, ইউনিক্স শেলটি ফিরে পেয়ে টাইপ করুন:
shell> mysqladmin -u root --password= password root
নতুন পাসওয়ার্ডটি 'রুট'। এখন সার্ভারের সাথে সংযোগ করুন:
shell> mysql -u root --password=
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
ওফ, পাসওয়ার্ড বদলে গেছে। নতুনটি ব্যবহার করুন root
:
shell> mysql -u root --password=root
...
blah, blah, blah : mysql welcome banner
...
mysql>
বিঙ্গো! নতুন কিছু আকর্ষণীয় করুন
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
+--------------------+
3 rows in set (0.00 sec)
Maurycy
অন্যান্য উত্তরগুলি ছাড়াও, সিপ্যানেল ইনস্টলেশনতে, মাইএসকিএল রুট পাসওয়ার্ড নামের একটি ফাইল সংরক্ষণ করা হয় /root/.my.cnf
। (এবং সিপানেল পরিষেবাটি এটিকে আবার পরিবর্তিত করে পুনরায় সেট করে, সুতরাং এখানে অন্যান্য উত্তরগুলি সহায়তা করবে না)
আপনি মাইএসকিএল রুট পাসওয়ার্ড দেখতে পারেন, ভাল আমি এটি মাইএসকিএল 5.5 এ চেষ্টা করেছি তাই অন্যান্য নতুন সংস্করণ সম্পর্কে ভাল করে কাজ করতে না জানি না
nano ~/.my.cnf
এটি আমার পক্ষে কাজ করেছে:
টার্মিনালে নিম্নলিখিত টাইপ করুন
$ sudo mysql -u root -p
পাসওয়ার্ড দিন: // শুধু এন্টার টিপুন
MySQL>
মাইএসকিএল সার্ভারটি ইনস্টল করার পরে আমার জন্য যে ডিফল্ট পাসওয়ার্ডটি কাজ করেছিল তা হ'ল: mysql
পদ্ধতিটি MySQL এর সংস্করণ অনুসারে পরিবর্তিত হয়। আপনার সংস্করণটির জন্য বর্ণিত পদ্ধতিটি অনুসরণ করুন:
ইঙ্গিতগুলি - আপনার মাইএসকিউএল * এর সংস্করণের নির্দেশিকা পৃষ্ঠার আগে পড়ুন
পদক্ষেপ 5: সিএমডি চালানোর পরিবর্তে, আপনার ডেস্কটপে কল করে সিডিএম.এক্সে একটি শর্টকাট তৈরি করুন। তারপরে শর্টকাটে ডান ক্লিক করুন এবং "প্রশাসক হিসাবে কার্যকর করুন" নির্বাচন করুন।
Step ধাপে: কমান্ডের প্রথম প্রস্তাবিত সংস্করণটি এড়িয়ে যান এবং দ্বিতীয়টি --deafults-file পরামিতি সহ সঞ্চালন করুন
কমান্ডটি কার্যকর করার পরে, সবকিছু ঠিকঠাক থাকলে, সিএমডি উইন্ডোটি খোলা থাকে এবং step ধাপের কমান্ডটি কার্যকর করা চালিয়ে যায়। কেবল উইন্ডোটি বন্ধ করুন ('x' ক্লিক করুন), এবং তারপরে টাস্ক ম্যানেজার থেকে মাইএসকিউএলটি জোর করে বন্ধ করুন।
এসকিউএল কমান্ডগুলির সাহায্যে ফাইলটি মুছুন এবং আবার মাইএসকিউএল শুরু করুন। পাসওয়ার্ড এখনই পরিবর্তন করা উচিত।
5.0 http://dev.mysql.com/doc/refman/5.0/en/resetting-permitted.html
5.1 http://dev.mysql.com/doc/refman/5.1/en/resetting-permission.html
... কেবল লিঙ্কটির সংস্করণটি পরিবর্তন করুন (5.5, 5.6, 5.7)
আপনার "হোস্টনাম" .err ফাইলের মধ্যে ডেটা ফোল্ডার মাইএসকিউএল কাজ করে, এর সাথে শুরু হওয়া স্ট্রিংটি দেখার চেষ্টা করুন:
"রুর @ লোকালহোস্টের জন্য একটি অস্থায়ী পাসওয়ার্ড তৈরি করা হয়"
তুমি ব্যবহার করতে পার
less /mysql/data/dir/hostname.err
তারপরে স্ল্যাশ কমান্ডের পরে আপনি যে স্ট্রিংটি সন্ধান করতে চান তা অনুসরণ করুন
/"A temporary password"
তারপরে পরবর্তী ফলাফলটিতে যেতে n টিপুন।
এখানে প্রদত্ত উত্তরগুলি আমার পক্ষে কাজ করে বলে মনে হচ্ছে না, কৌশলটি পরিণত হয়েছিল: 'ইউএসএইচএসএল_নেটিভ_প্যাসওয়ার্ডের মাধ্যমে' পরীক্ষার 'মাধ্যমে সনাক্তকারী' রুট '@' লোকালহোস্ট ';
(এখানে সম্পূর্ণ উত্তর: https://www.percona.com/blog/2016/03/16/change-user-password-in-mysql-5-7-with-plugin-auth_sket/ )
পদ্ধতি:
পদ্ধতি:
দুটি শেল সেশন খুলুন, একটিতে লিনাক্স রুট ব্যবহারকারী হিসাবে এবং অন্যটি mysql
কমান্ডটি অ্যাক্সেস সহ ননরুট ব্যবহারকারী হিসাবে লগ ইন করুন ।
আপনার মূল অধিবেশনে, সাধারণ মাইএসকিএলডি শ্রোতাকে থামান এবং একটি শ্রোতা শুরু করুন যা পাসওয়ার্ড প্রমাণীকরণকে ছাড়িয়ে যায় ( দ্রষ্টব্য: এটি একটি গুরুত্বপূর্ণ সুরক্ষা ঝুঁকি হিসাবে mysql
কমান্ড অ্যাক্সেস সহ যে কেউ আপনার পাসওয়ার্ড ছাড়াই আপনার ডাটাবেসে অ্যাক্সেস করতে পারে You আপনি সক্রিয় শেল সেশনগুলি বন্ধ করতে চাইতে পারেন) এবং / অথবা এটি করার আগে শেল অ্যাক্সেস অক্ষম করুন):
# systemctl stop mysqld
# /usr/sbin/mysqld --skip-grant-tables -u mysql &
আপনার ননরুট সেশনে, mysql এ লগ ইন করুন এবং মাইএসকিএল রুট পাসওয়ার্ড সেট করুন:
$ mysql
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MyNewPass');
Query OK, 0 rows affected, 1 warning (0.01 sec)
mysql> quit;
আপনার মূল অধিবেশনে, মাইএসকিএলএল পাসওয়ার্ডহীন দৃষ্টান্তটি মেরে ফেলুন এবং সাধারণ মাইএসকিএলডি শ্রোতাকে পরিষেবাতে পুনরুদ্ধার করুন:
# kill %1
# systemctl start mysqld
আপনার ননরুট সেশনে, আপনি উপরে কনফিগার করা নতুন রুট পাসওয়ার্ডটি পরীক্ষা করুন:
$ mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
...
mysql>
আমি এটি অন্যভাবে সমাধান করেছি, এটি কারওর পক্ষে সহজ হতে পারে।
আমি এটি এইভাবে করেছি কারণ আমি নিরাপদ মোডে শুরু করার চেষ্টা করেছি তবে ত্রুটির সাথে সংযোগ করতে পারছি না: এরর 2002 (HY000): সকেট '/var/run/mysqld/mysqld.sock' (2) এর মাধ্যমে স্থানীয় মাইএসকিউএল সার্ভারের সাথে সংযোগ স্থাপন করতে পারি না 2
আমি যা করেছি তা হ'ল সাধারনত রুট হিসাবে সংযোগ স্থাপন করা:
$ sudo mysql -u root
তারপরে আমি একটি নতুন সুপার ব্যবহারকারী তৈরি করেছি:
mysql> grant all privileges on *.* to 'myuser'@'%' identified by 'mypassword' with grant option;
mysql> quit
তারপরে মাইউজার হিসাবে লগ ইন করুন
$ mysql -u myuser -p -h localhost
পাসওয়ার্ড পরিবর্তন করার চেষ্টা আমাকে ত্রুটি দেয় নি তবে আমার জন্য কিছুই করেনি তাই আমি বাদ দেওয়া এবং পুনরায় ব্যবহারকারী তৈরি করেছি
mysql> drop user 'root'@'localhost;
mysql> mysql> grant all privileges on *.* to 'root'@'localhost' identified by 'mypassword' with grant option;
মূল ব্যবহারকারী এখন নতুন পাসওয়ার্ড নিয়ে কাজ করছেন
PhpMyAdmin> config.inc.php> f cfg ['সার্ভারস]] [$ i] [' পাসওয়ার্ড '] =' 'এ যান;
phpmyadmin
।