ম্যাক ইনস্টল করার পরে ALTER USER স্টেটমেন্ট ব্যবহার করে মাইএসকিউএল রুট পাসওয়ার্ড পুনরায় সেট করুন


183

আমি পুরো ম্যাক অভিজ্ঞতায় নতুন। আমি সম্প্রতি মাইএসকিউএল ইনস্টল করেছি এবং মনে হচ্ছে ইনস্টলের পরে আমাকে পাসওয়ার্ডটি পুনরায় সেট করতে হবে। এটি আমাকে আর কিছু করতে দেয় না।

এখন আমি পাসওয়ার্ডটি ইতিমধ্যে স্বাভাবিকভাবে রিসেট করেছি:

update user set password = password('XXX') where user = root;

(বিটিডাব্লু: আমাকে কয়েক বছর ধরে সময় কাটাতে লাগল যে মাইএসকিউএল কিছু উদ্ভট কারণে ফিল্ডটির নাম 'পাসওয়ার্ড' রেখে 'প্রমাণীকরণ_স্তরকরণ' করে দিয়েছে। আমি এরকম পরিবর্তনগুলি নিয়ে বেশ বিচলিত।)

দুর্ভাগ্যক্রমে মনে হচ্ছে আমার পাসওয়ার্ডকে অন্যভাবে পরিবর্তন করতে হবে যা আমার অজানা। ইতিমধ্যে এখানে কেউ ইতিমধ্যে এই সমস্যাটি এসেছেন?

উত্তর:


507

তাহলে এই হল না আপনার প্রথমবার পাসওয়ার্ড সেট, এই পদ্ধতি ব্যবহার করে দেখুন:

mysql> UPDATE mysql.user SET Password=PASSWORD('your_new_password')
           WHERE User='root'; 

এবং যদি আপনি নিম্নলিখিত ত্রুটিটি পান তবে একটি উচ্চ সম্ভাবনা রয়েছে যে আপনি আগে কখনও নিজের পাসওয়ার্ড সেট করেন নি:

ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement. 

আপনার পাসওয়ার্ডটি প্রথমবার সেট আপ করতে :

mysql> SET PASSWORD = PASSWORD('your_new_password');
Query OK, 0 rows affected, 1 warning (0.01 sec)

তথ্যসূত্র: https://dev.mysql.com/doc/refman/5.6/en/alter-user.html


10
ধন্যবাদ! যদিও মাইএসকিউএল থেকে খুব বিভ্রান্তিকর ত্রুটি বার্তা!
এড।

1
এটি আমার জন্য কাজ করেছে mysql-5.7.13-osx10.11-x86_64
গিরিবি

1
'মাইএসকিএল> সেট পাসওয়ার্ড = পাসওয়ার্ড (' আপনার_নিউ_পাসওয়ার্ড ');; এর পরে, আমি নিম্নলিখিত ত্রুটিটি পাচ্ছি:' ইআরআর 29 (এইচওয়াই 1000): ফাইল './mysql/user.MYD' পাওয়া যায় নি (এরকোড: 2 - এরকম নেই) ফাইল বা ডিরেক্টরি) '। কেউ আমাকে সাহায্য করতে পারেন ?
রায় কিম

4
আপনি নোট করবেন যে মাইএসকিউএল এর পরামর্শ অনুসারে, আপনি "অলটার ইউজার" স্টেটমেন্টটি ব্যবহার করেন না, কেবল "সেট পাসওয়ার্ড" ...
ফ্যাবিয়ান হাড্ডাদি

1
প্রথম উদাহরণটি সেই লাইনটি জমা দেওয়ার সময় আপনি ব্যবহার করছেন তার চেয়ে অন্য ব্যবহারকারীর জন্য একটি পাসওয়ার্ড সেট করার চেষ্টা করে। দ্বিতীয়টি ব্যবহারকারীর জন্য পাসওয়ার্ড সেট করার চেষ্টা করে যে আপনি মাইএসকিএল-এ লগ ইন করেছেন। এভাবে পরবর্তীকালে কাজ হয়।
হাফেনক্রিনিচ 26'18

130

আপনি যদি mysql ব্যবহার শুরু করেন mysql -u root -p

চেষ্টা ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';

সূত্র: http://dev.mysql.com/doc/refman/5.7/en/resetting-permitted.html


1
ধন্যবাদ! এটি আমার পক্ষে কাজ করেছিল! আমি mysql-5.7.11-osx10.10-x86_64 ব্যবহার করছি।
LeArNr

এটি কাজ করেছে; ধন্যবাদ! এটি আমাকে গভীরভাবে দুঃখ দেয় যে মাইএসকিউএল যেমন একটি বহুল ব্যবহৃত প্রোগ্রাম, তবুও এটি ইনস্টল করার এবং এটি দ্রুত চালিত করার জন্য কোনও স্টপ ডকুমেন্টেশন নেই।
শাতু

ধন্যবাদ! এটি আমাকে সহায়তা করেছে
-18

3
অনেক হতাশার পরে, এর একটি রূপটি পুদিনা 18 মাইএসকিএল 5.7.18 এ কাজ করেছে:ALTER USER 'root'@'localhost' indentified WITH mysql_native_password BY 'password';
স্টিভ

এক মিলিয়ন আপনাকে ধন্যবাদ এটাই আমার পক্ষে কাজ করেছে।
র‌্যান্ডিমার

33

ম্যাকের ক্ষেত্রেও আমার একই সমস্যা আছে

প্রথমে স্যান্ডবক্স মোডে মাইএসকিএল-এ লগ ইন করুন

mysql -u <user> -p --connect-expired-password

তারপরে, পাসওয়ার্ড সেট করুন

SET PASSWORD FOR 'root'@'localhost' = PASSWORD('XXXX');

Query OK, 0 rows affected, 1 warning (0.01 sec)

এটা আমার জন্য কাজ করে ~

এর মাধ্যমে: /dba/118852/your-paswssword-has-expired- after-restart-mysql-wn-dated-mysql-5-7-8-rcde


1
একেবারে ডাটাবেস ব্যবহার করার আগে আপনাকে এটি করতে হবে তা মনে রেখে বেশ জটিল বলে মনে হচ্ছে।
seba.wagner

সতর্কবাণীতে এটি আপনাকে ব্যবহার করতে চায়SET PASSWORD FOR 'root'@'localhost' = 'XXXX';
আর্সেন জহরে

22

আপনি যদি MySQL 5.7.6 এবং তার পরে ব্যবহার করেন:

ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';

যদি আপনি মাইএসকিউএল 5.7.5 এবং তার আগের ব্যবহার করেন:

SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MyNewPass');

মাইএসকিউএল ডকুমেন্টেশন


1
আমি মাইএসকিউএল 5.7.9 ব্যবহার করছি এবং অদ্ভুত জিনিসটি SET PASSWORD = PASSWORD('my_pass')আমার জন্য কাজ করা হয়েছে। আরও সাম্প্রতিক সংস্করণযুক্ত লোকদের মন্তব্য রয়েছে যে এই বিবৃতিটি তাদের জন্যও কাজ করেছে। এটি সত্ত্বেও, আপনি মাইএসকিউএল ডক্সে এই নির্দিষ্ট রেফারেন্সটি খুঁজে পেয়েছেন বলে আমি আপনার উত্তরটিকে উজ্জীবিত করেছি যা আগে কেউ উল্লেখ করেনি।
আর্মফুট

মাইএসকিউএল 8 সেট পাসওয়ার্ড নিক্ষেপ এবং ত্রুটি। ALTER USER কাজ করেছে।
তিমার ইভো বাটিস

13

মাইএসকিউএল 7.x.x এ আপনাকে এটি পরিবর্তন করতে সক্ষম হতে দেশীয় পাসওয়ার্ডে স্যুইচ করতে হবে, যেমন:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'test';

11

এগুলি চালান:

$ cd /usr/local/mysql/bin
$ ./mysqladmin -u root password 'password'

তারপরে দৌড়াও

./mysql -u root

এটি লগ ইন করা উচিত। এখন FLUSH সুবিধাগুলি চালান;

তারপরে মাইএসকিউএল কনসোল থেকে প্রস্থান করুন এবং লগ ইন করার চেষ্টা করুন। যদি এটি কাজ না করে তবে:

$ mysql -u root
mysql> USE mysql;
mysql> UPDATE user SET authentication_string=PASSWORD("XXXXXXX") WHERE User='root';
mysql> FLUSH PRIVILEGES;
mysql> quit

Xxxxxx আপনার নতুন পাসওয়ার্ডে পরিবর্তন করুন। তারপরে আবার লগ ইন করার চেষ্টা করুন।

হালনাগাদ. এটি দেখুন http://dev.mysql.com/doc/refman/5.7/en/resetting-perifications.html

এটি আপনার সমস্যার সমাধান করা উচিত।

আপনি যদি ওরাকল এ থাকেন তবে এটি চেষ্টা করে দেখুন

ALTER USER username IDENTIFIED BY password

না, দুঃখিত এটিও কাজ করে না। কমপক্ষে আর না। 'পাসওয়ার্ড' কলামটির নামকরণ করা হয়েছে ওরাকল, বিটিডব্লিউ দ্বারা। একে এখন প্রমাণীকরণ_স্ট্রিং বলে। তবে আমি এই কমান্ডটি কার্যকর করতে পারি না, কারণ আমাকে প্রথমে ALTER USER কমান্ড ব্যবহার করে পাসওয়ার্ড পরিবর্তন করতে হবে। এটি অবিশ্বাস্য হতাশার কারণ আপনি traditionতিহ্যগতভাবে পাসওয়ার্ডটি আপডেট করবেন না এমন এটি। ALTER টেবিল, ফাংশন এবং স্টাফের জন্য সংরক্ষিত হওয়া উচিত, কোনও সারণীতে প্রবেশের পরিবর্তনগুলি নয়। এটি আপডেট স্টেটমেন্ট। (
ভাঁড়ার

@ শিভান পাউ: দুটি সতর্কতা আমি আশা করব: মাইসক্ল্যাডমিন: [সতর্কতা] কমান্ড লাইন ইন্টারফেসে একটি পাসওয়ার্ড ব্যবহার করা নিরাপত্তাহীন হতে পারে। সতর্কতা: যেহেতু পাসওয়ার্ড সরল পাঠ্যে সার্ভারে প্রেরণ করা হবে, তাই পাসওয়ার্ডের সুরক্ষা নিশ্চিত করতে এসএসএল সংযোগ ব্যবহার করুন। - আমি বিবেচনা করব যে পাসওয়ার্ডটি আপডেট হয়েছে। এবং সত্যই আমি নতুন পাসওয়ার্ড দিয়ে লগ ইন করতে পারেন। তবে, আমি এখনও কোনও প্রশ্ন চালাতে পারি না, কারণ আমাকে ALTER USER কমান্ডের সাহায্যে পাসওয়ার্ড আপডেট করতে হবে :(।
dengar81

@ শিভান পাও: কি চেষ্টা করবেন? ইতিমধ্যে আপনার প্রস্তাবিত আদেশগুলি ব্যবহার করার চেষ্টা করেছি। ./Mysqladmin কমান্ড (দুটি সতর্কতা) ব্যবহার করে পাসওয়ার্ডটি পুনরায় সেট করা এবং তারপরে mysql.user- র উপর আপডেট চালানো ... দ্বিতীয় কমান্ডটি বার্তাটি ব্যর্থ করে "আপনার অবশ্যই পাসওয়ার্ডটি পুনরায় সেট করতে হবে ALTER ব্যবহারকারী [...]"
dengar81

এটি আমার জন্য কাজ করা একমাত্র সমাধান। যদি আপনার মাইএসকিএল এর সর্বশেষ সংস্করণে মেয়াদোত্তীর্ণ পাসওয়ার্ড থাকে তবে এটি আপনাকে ALTER_USER বা SET_PASSWORD দেবে না।
অ্যারন হেন্ডারসন 16

7

হয়তো চেষ্টা করে দেখুন?

SET PASSWORD FOR 'root'@'localhost' = PASSWORD('XXX');

অথবা

SET PASSWORD FOR 'root'@'%' = PASSWORD('XXX');

আপনি কোন অ্যাক্সেস ব্যবহার করেন তার উপর নির্ভর করে।

(এবং আপনার নিজের ক্ষেত্রের নাম পরিবর্তন করা উচিত তা নিশ্চিত নয় ...)

https://dev.mysql.com/doc/refman/5.0/en/set-password.html


দুঃখিত, এটি কাজ করে না: ERROR 1820 (HY000): এই বিবৃতিটি কার্যকর করার আগে আপনাকে অবশ্যই ALTER USER বিবৃতি ব্যবহার করে আপনার পাসওয়ার্ডটি পুনরায় সেট করতে হবে।
dengar81

7

'নতুন_পাসওয়ার্ড' এর মাধ্যমে ব্যবহারকারীকে 'রুট' @ 'লোকালহোস্ট' পরিচয় দান করুন;

এই লাইনটি ব্যবহার করুন ...


7

ব্যবহারকারী আপডেট করুন SET প্রমাণীকরণ_ স্ট্রিং = পাসওয়ার্ড ("মাইপাসওয়ার্ড") যেখানে ব্যবহারকারী = 'রুট'; ত্রুটি 1064 (42000): আপনার এসকিউএল সিন্টেক্সে আপনার একটি ত্রুটি রয়েছে; '("মাইপাসওয়ার্ড") এর নিকটবর্তী লাইন 1 এ ব্যবহারকারী যেখানে' রুট 'ব্যবহার করতে হবে তার ডান সিনট্যাক্সের জন্য আপনার মাইএসকিউএল সার্ভার সংস্করণের সাথে সম্পর্কিত ম্যানুয়ালটি পরীক্ষা করুন

সঙ্গে সমাধান

ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';

নীচের সাইট থেকে রেফারেন্স

https://dev.mysql.com/doc/refman/8.0/en/resetting-permissions.html


5

চালু Ver 14.14 Distrib 5.7.19, for macos10.12 (x86_64), আমি হিসাবে লগ ইন করেছি: mysql -uroot -pমাইএসকিউএল দ্বারা উত্পন্ন পাসওয়ার্ডটি টাইপ করুন যখন আপনি এটি ইনস্টল করবেন। তারপর ..

ALTER USER 'root'@'localhost' IDENTIFIED BY '<new_password>';

উদাহরণ:

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'Ab1234'; Query OK, 0 rows affected (0.00 sec) mysql> exit Bye $ mysql -uroot -p

এবং আপনি 'Ab1234' টাইপ করতে পারেন


3

MySQL 5.7.24 প্রথম লগইন পান

পদক্ষেপ 1: লগ থেকে পাসওয়ার্ড পান

 grep root@localhost /var/log/mysqld.log
    Output
        2019-01-17T09:58:34.459520Z 1 [Note] A temporary password is generated for root@localhost: wHkJHUxeR4)w

পদক্ষেপ 2: মাইএসকিএলে তার সাথে লগইন করুন

mysql -uroot -p'wHkJHUxeR4)w'

পদক্ষেপ 3: আপনি নতুন রুট পাসওয়ার্ড রেখেছেন

SET PASSWORD = PASSWORD('xxxxx');

তুমি পাও ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

এটা ঠিক কিভাবে?

এটি চালান SET GLOBAL validate_password_policy=LOW;

আবার চেষ্টা কর SET PASSWORD = PASSWORD('xxxxx');


2

এটি আমার পক্ষে কাজ করেছে:

'ব্যবহারকারী / স্ট্রিং' এর মাধ্যমে সনাক্তকারী ব্যবহারকারী ব্যবহারকারী;

আমি এটি এখানে পেয়েছি: http://dev.mysql.com/doc/refman/5.7/en/alter-user.html#alter-user-current


ERROR 29 (HY000): File './mysql/user.MYD' not found (Errcode: 13 - Permission denied)
বেন

2

এই উপায়টি আমার পক্ষে কাজ করে।

MySQL> show databases ;

ত্রুটি 1820 (এইচওয়াই 1000): এই বিবৃতিটি কার্যকর করার আগে আপনাকে অবশ্যই আপনার পাসওয়ার্ড ALTER USER বিবৃতি ব্যবহার করে পুনরায় সেট করতে হবে।

MySQL> uninstall plugin validate_password;

ত্রুটি 1820 (এইচওয়াই 1000): এই বিবৃতিটি কার্যকর করার আগে আপনাকে অবশ্যই আপনার পাসওয়ার্ড ALTER USER বিবৃতি ব্যবহার করে পুনরায় সেট করতে হবে।

MySQL> alter user 'root'@'localhost' identified by 'root';

অনুসন্ধান ঠিক আছে, 0 টি সারি প্রভাবিত (0.01 সেকেন্ড)

MySQL> flush privileges;

অনুসন্ধান ঠিক আছে, 0 টি সারি প্রভাবিত (0.03 সেকেন্ড)


1

আপনি যখন SET PASSWORD = PASSWORD('your_new_password');এটি ব্যবহার করবেন তখন এটির জন্য ক্রাশ হতে পারে

(ERROR 1819 (HY000): আপনার পাসওয়ার্ড বর্তমান নীতি প্রয়োজনীয়তা পূরণ করে না)

SET GLOBAL validate_password_policy=LOW;আপনি এটি স্লভ করতে ব্যবহার করতে পারেন ।


1

5.7 সংস্করণে। 'পাসওয়ার্ড' ক্ষেত্রটি মোছা হয়েছে। 'প্রমাণীকরণ_ স্ট্রিং' এটি প্রতিস্থাপন করুন

use mysql;
update user set authentication_string=password('123456') where user='root';
flush privileges;

0

আমি ম্যাক ওএস এক্স ১০.০.০ (যোসাইমাইট) তেও একই সমস্যা পেয়েছি SE এসএসটি পাসওয়ার্ডটি আমার পক্ষে কাজ করে mys মাইএসকিএল- mysql> সেট পাসওয়ার্ড = পাসওয়ার্ডের জন্য পাসওয়ার্ড ('আপনার_পাসওয়ার্ড'); অনুসন্ধান ঠিক আছে, 0 টি সারি প্রভাবিত হয়েছে, 1 সতর্কতা (0.01 সেকেন্ড)

আপনার মাইএসকিএল এনভায়রনমেন্ট পাথ ভেরিয়েবলটি .বাশ_প্রোফাইলে সেট করুন এবং নীচের লাইন
এক্সপোর্ট PATH = $ PATH: / usr / লোকাল / মাইএসকিএল / বিন যোগ করুন, তারপরে নিম্নলিখিত কমান্ডটি চালান: উত্স .bash_profile


0

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


0

mysql> SET PASSWORD = PASSWORD('your_new_password'); সেটা আমার জন্য কাজ করে.


0

5..7.২৩ এবং তার বেশি সংস্করণগুলি মনে রাখবেন - ব্যবহারকারীর জন্য পাসওয়ার্ড পুনরায় সেট করার সময় ব্যবহারকারীর টেবিলের পরিবর্তে প্রমাণীকরণের স্ট্রিংটির পরিবর্তে কলামের পাসওয়ার্ড নেই।

update user set authentication_string=password('root') where user='root';
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.