ত্রুটি 1045 (28000): ব্যবহারকারীর 'রুট' @ 'লোকালহোস্ট' এর জন্য অ্যাক্সেস অস্বীকার করা হয়েছে (পাসওয়ার্ড ব্যবহার করে: হ্যাঁ)


184

আমি একজন বৈদ্যুতিক প্রকৌশলী, যিনি মূলত প্রোগ্রামিংয়ের পরিবর্তে বিদ্যুৎ সিস্টেম নিয়ে ঘুরে দেখেন। সম্প্রতি, আমি উবুন্টুতে একটি সফ্টওয়্যার স্যুট ইনস্টল করার জন্য একটি ম্যানুয়াল অনুসরণ করছি। আসলে আমার কোন জ্ঞান নেই mySQL। আমি আমার উবুন্টুতে নিম্নলিখিত ইনস্টলেশনগুলি করেছি।

sudo apt-get update
sudo apt-get install mysql-server-5.5
sudo apt-get install mysql-client-5.5
sudo apt-get install mysql-common
sudo apt-get install glade
sudo apt-get install ntp

তারপর আমি করি

me@ubuntu:~/Desktop/iPDC-v1.3.1/DBServer-1.1$ mysql -uroot -proot <"Db.sql"

আমি নিম্নলিখিত ত্রুটি বার্তাটি দিয়ে শেষ করেছি।

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

আমি কীভাবে এটি ঠিক করতে এবং চালিয়ে যেতে পারি?


1
এটি আমার সাথে সম্পর্কিতভাবে কঠোরভাবে প্রোগ্রামিং বলে মনে হচ্ছে না । আমি এটিকে সুপার ইউজারে স্থানান্তরের জন্য পতাকাঙ্কিত করেছি
উলি কাহলার

ভবিষ্যতের দর্শনার্থীরা, এখানে বর্ণিত বিভিন্ন কারণগুলি পরীক্ষা করতে ভুলবেন না: dev.mysql.com/doc/refman/8.0/en/problems-connecting.html
অ্যাডারচক্স

উত্তর:


154

নোট: জন্য মাইএসকিউএল 5.7+ দয়া করে দেখুন @Lahiru থেকে উত্তর এই প্রশ্নের। এতে আরও বর্তমান তথ্য রয়েছে।

মাইএসকিউএল <5.7 এর জন্য:

ডিফল্ট রুট পাসওয়ার্ড ফাঁকা (অর্থাত খালি স্ট্রিং) নয় root। সুতরাং আপনি কেবল লগইন করতে পারেন:

mysql -u root

ইনস্টলেশনের পরে আপনার অবশ্যই অবশ্যই আপনার মূল পাসওয়ার্ডটি পরিবর্তন করা উচিত

mysqladmin -u root password [newpassword]

বেশিরভাগ ক্ষেত্রে ডিবি-র সাথেও ব্যাপকভাবে কাজ করার আগে আপনার পৃথক ব্যবহারকারী অ্যাকাউন্টগুলিও সেট আপ করা উচিত।


5
@ ফার্টিকেলপিল্টার -pপতাকাটি পাসওয়ার্ড নির্দিষ্ট করে, তাই আপনি যদি আপনার মূল পাসওয়ার্ড পরিবর্তন করেন তবে আপনি পছন্দ করতে পারেন mysql -u root -p[newpassword]। আপনার < [filename]সরবরাহকারীর শংসাপত্রের মাধ্যমে প্রদত্ত পথে একটি এসকিউএল ফাইল কার্যকর করতে স্ট্যান্ড ইনপুটটি ব্যবহার করছে।
মাইক ব্রেন্ট

27
আমি যেমন বলেছি চেষ্টা করেছি mysqladmin -u root password abc1234, কিন্তু পেয়েছি mysqladmin: connect to server at 'localhost' failed error: 'Access denied for user 'root'@'localhost' (using password: NO)'। তোমাকে অনেক ধন্যবাদ!
সিবস জুবিলিং

2
এই প্রশ্নে কানাগড়ো, ওপি জানিয়েছে যে তারা প্রথমবারের জন্য মাইএসকিউএল ইনস্টল করেছে এবং তারপরে মাইএসকিউএল কমান্ড লাইন ক্লায়েন্টের মাধ্যমে অ্যাক্সেস করার চেষ্টা করেছিল। এটি আমার কাছে প্রথমবার অ্যাক্সেসের মতো শোনাচ্ছে।
মাইক ব্রেন্ট

18
প্রকৃতপক্ষে মাইএসকিএল সম্প্রদায় সার্ভারের জন্য you.,, আপনি ইনস্টল করার সময় এলোমেলোভাবে ডিফল্ট রুট পাসওয়ার্ড তৈরি হয়। "অস্থায়ী পাসওয়ার্ড" সম্পর্কে কথা বলার জন্য একটি লাইনের জন্য আপনার /var/log/mysqld.log দেখুন। ঘনঘন ঘন্টার মধ্যে ঘন্টা বাঁচায়।
ফিল

1
@ ব্রায়ানমেলোর এটি মাইএসকিউএল <5.7 এর ক্ষেত্রে সমস্যার সমাধান করে যে উবুন্টুতে ডিফল্ট (ইনস্টলেশন-পরবর্তী) মূল পাসওয়ার্ড ফাঁকা (কোনও পাসওয়ার্ড নেই), যেখানে মূল প্রশ্নটিতে পোস্টারটি রুট / রুট ব্যবহার করার চেষ্টা করছিল। প্রশ্নটি হারিয়ে যাওয়া পাসওয়ার্ড, পাসওয়ার্ড পরিবর্তন করা বা অন্য জাতীয় সম্পর্কে নয়। মাইএসকিউএল এর নতুন সংস্করণগুলির জন্য আমি যে উত্তরটি উল্লেখ করেছি তা হ'ল সঠিক, কারণ কোনও ব্যবহারকারীকে এলোমেলোভাবে উত্পন্ন রুট পাসওয়ার্ড দেখতে ত্রুটি লগগুলিতে দেখতে হবে।
মাইক ব্রেন্ট

114

আমি এই বিবৃতি কার্যকর করে এই সমস্যাটি সমাধান করতে সক্ষম হয়েছি

sudo dpkg-reconfigure mysql-server-5.5

যা রুট পাসওয়ার্ড পরিবর্তন করবে।


10
আমার যা প্রয়োজন তা ঠিকই ... তবে প্রত্যেকেরই সার্ভারের 5.5 সংস্করণ নেই। dpkg --get-selections | grep sqlআপনার সংস্করণটি পেতে ব্যবহার করুন
বাল্মিপুর

1
@ বালামিপুর রেল x.০-এর এসকিএল সংস্করণটি পরীক্ষা করার জন্য সমতুল্য কমান্ডটি কী হওয়া উচিত
প্রথমাম

1
@ ডিভ্জ রিহেল /
সেন্টোসে মাইএসকিএল

@PrathamN আমি কখনোই ছিল লাল, কিন্তু "Red Hat চেক প্যাকেজ সংস্করণ" জন্য googling ব্যবহৃত দেয় আমার এই মত কম্যান্ড: yum list installedঅ্যাড | grep sqlফিল্টার একমাত্র এসকিউএল প্যাকেজ।
বাল্মীপুর

যখন আমি Mac OS X এর মধ্যে এই কমান্ড চালানোর জন্য আমি এই ত্রুটি পাবেন: sudo: dpkg-reconfigure: command not found। যেকোনো পরামর্শ?
মোনা

90

আপনাকে পাসওয়ার্ডটি পুনরায় সেট করতে হবে! ম্যাক অসক্স (পরীক্ষিত এবং কাজ করা) এবং উবুন্টুর জন্য পদক্ষেপ

মাইএসকিউএল ব্যবহার বন্ধ করুন

sudo service mysql stop

অথবা

$ sudo /usr/local/mysql/support-files/mysql.server stop

এটি নিরাপদ মোডে শুরু করুন:

$ sudo mysqld_safe --skip-grant-tables --skip-networking

(উপরের লাইনটি সম্পূর্ণ কমান্ড)

প্রক্রিয়া শেষ না হওয়া অবধি এটি একটি চলমান কমান্ড হবে সুতরাং অন্য শেল / টার্মিনাল উইন্ডোটি খুলুন, পাসওয়ার্ড ছাড়াই লগ ইন করুন:

$ mysql -u root

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

@ আইবারোমিডিয়ার মন্তব্য অনুসারে, মাইএসকিউএল এর নতুন সংস্করণগুলির জন্য, ক্ষেত্রটি বলা হয় authentication_string:

mysql> UPDATE mysql.user SET authentication_string =PASSWORD('password') WHERE User='root';

মাইএসকিউএল ব্যবহার করে শুরু করুন:

sudo service mysql start

অথবা

sudo /usr/local/mysql/support-files/mysql.server start

আপনার নতুন পাসওয়ার্ডটি 'পাসওয়ার্ড'।


3
দয়া করে, সেভাবে নয়! @ ডিভসের উত্তর আরও সুরক্ষিত। --স্কিপ-অনুদান-সারণীগুলি সম্পর্কে নথির উদ্ধৃতি: এটি যে কোনওটিকে পাসওয়ার্ড ছাড়াই এবং সমস্ত সুযোগ-সুবিধার সাথে সংযোগ স্থাপন করতে সক্ষম করে [...] কারণ এটি অনিরাপদ, [...] দূরবর্তী ক্লায়েন্টদের সংযোগ স্থাপন থেকে রক্ষা করতে --skip-grant-tablesএকত্রে ব্যবহার করুন --skip-networkingওহ, এবং এটিও আমার পক্ষে কাজ করেনি। আমি এখানে কেন এসেছি: পি
বাল্মীপুর

1
আপনি যদি সেই পথে যান তবে হ্যাঁ এটি আমার পক্ষে কার্যকর হয়নি এবং @ ডিভজ-এর উত্তর অনুসরণ করা আমার পক্ষে সহজতর মনে হয়েছে, যাইহোক --আমি যা প্রস্তাব করব তা dpkg --get-selections | grep mysql-server-আপনার সঠিক মাইএসকিউএল সংস্করণ পেতে ব্যবহার করছে, তারপরে sudo dpkg-reconfigure mysql-server-5.x এ যান (5 প্রতিস্থাপন করুন) .x আপনার সার্ভার সংস্করণ সহ, বিটিডাব্লু)। আমি এই স্পষ্টতার সাথে @ ডিভ্সের উত্তর মন্তব্য করেছি, তবে এটি বেশ কয়েকটি "ধন্যবাদ" মন্তব্য দ্বারা মুখোশ পেয়েছে।
বাল্মীপুর 16

4
ব্যবহারকারী সেট প্রমাণীকরণ_ স্ট্রিং = পাসওয়ার্ড ('1111') আপডেট করুন যেখানে ব্যবহারকারী = 'রুট';
ডিজেল

2
এটি আসলে কাজ করেছে ... অন্যান্য সমাধানগুলি আমাকে এখনও একই ত্রুটি দিয়েছে।
এডি 147

2
যেহেতু মাইএসকিউএল ৫.7..6 পাসওয়ার্ড কলামটির নামকরণ করা হয়েছে "প্রমাণীকরণ_ স্ট্রিং" এখানে আপনি এটি সম্পর্কে আরও পড়তে পারেন: বাগস.মাইসকিএল.বগ.এফপি?
id=

55

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

mysql -u root -p 

এর পরে এটি আপনাকে এরকম একটি পাসওয়ার্ডের জন্য জিজ্ঞাসা করে

Enter password: 

এবং তারপরে আমি ব্যবহৃত পাসওয়ার্ডটি টাইপ করেছি। এখানেই শেষ


3
মজার বিষয় এটি গবেষণার কয়েক দিন পরে সাহায্য করেছে।
গিরিশ_ভিআর

@ গিরিশ_ভিআর জেনে ভাল লাগলো
এক্সওয়াই-

আমার জন্য কাজ! আমার মাইএসকিএল
ক্যাসপিয়োটার

এইটি সাহায্য করেছে, যা মাইএসকিউএল দিক থেকে অবিশ্বাস্যরূপে বোকা যে আমি এখনও এটি বিশ্বাস করতে পারি না।
wscourge

39

সার্ভারের প্রাথমিক সূচনায় সার্ভারের ডেটা ডিরেক্টরি খালি থাকার কারণে নিম্নলিখিতটি ঘটে:

  • সার্ভারটি আরম্ভ করা হয়েছে।
  • এসএসএল শংসাপত্র এবং কী ফাইলগুলি ডেটা ডিরেক্টরিতে উত্পন্ন হয়।
  • বৈধতা পাসওয়ার্ড প্লাগইন ইনস্টল এবং সক্ষম করা আছে।
  • অতি ব্যবহারকারী অ্যাকাউন্ট 'রুট' @ 'লোকালহোস্ট' তৈরি হয়েছে। সুপারউজারের জন্য পাসওয়ার্ডটি ত্রুটি লগ ফাইলে সেট এবং সংরক্ষণ করা হয়।

এটি প্রকাশ করতে, নিম্নলিখিত কমান্ডটি ব্যবহার করুন:

shell> sudo grep 'temporary password' /var/log/mysqld.log

উত্পন্ন অস্থায়ী পাসওয়ার্ড দিয়ে লগ ইন করে রুট পাসওয়ার্ডটি যত তাড়াতাড়ি সম্ভব পরিবর্তন করুন এবং সুপারভাইজার অ্যাকাউন্টের জন্য একটি কাস্টম পাসওয়ার্ড সেট করুন:

shell> mysql -u root -p #Login to root user with some password

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass5!'; 

16
এটি আশাব্যঞ্জক লাগছিল, তবে এটি আমার পক্ষে কার্যকর নয়। আমি যখন চালাই sudo grep 'temporary password' /var/log/mysqld.logআমি পাই/var/log/mysqld.log: No such file or directory
এরিক হিপারল - কোডস্লেয়ার2010

4
ব্যবহার করে দেখুন sudo grep 'temporary password' /var/log/mysql/error.log। @ লাহিরু সমাধান আমার পক্ষে কাজ করেছে।
আর্টেমিসিয়ান

17
আমি sudo grep 'অস্থায়ী পাসওয়ার্ড' /var/log/mysql/error.log চেষ্টা করেছি কিন্তু এটি কিছুই দেয় না।
শিক্ষার্থী

2
ব্যবহার করে দেখুন shell> sudo grep 'password' /var/log/mysql/error.log। আমার জন্য কাজ করা, তবে আমি পেয়েছি: root @ লোকালহোস্ট একটি খালি পাসওয়ার্ড দিয়ে তৈরি করা হয়েছে! দয়া করে --initialize- সুরক্ষিত বিকল্পটি স্যুইচ করা বিবেচনা করুন। আমার মাইএসকিএল
8.0.13 ভেরি

1
@ ইঞ্জিনইয়েলমাজ যখন সমস্যাটি মাইএসকিএল এমনকি অ্যাক্সেসযোগ্য নয় তখন কেন আপনি মাইএসকিএল কমান্ডের পরামর্শ দিচ্ছেন?
আর-ওবার্ট

33

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

/etc/init.d/mysql stop

mysqld_safe --skip-grant-tables &

mysql -u root

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

use mysql;
update user set password=PASSWORD("NEW-ROOT-PASSWORD") where User='root';
flush privileges;
quit;

মাইএসকিউএল সার্ভার বন্ধ করুন:

/etc/init.d/mysql stop

মাইএসকিউএল সার্ভার শুরু করুন এবং এটি পরীক্ষা করুন:

mysql -u root -p

1
ধন্যবাদ. ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)আমার সার্ভারেও জর্জরিত ছিল। 'মাইএসকিএলডিএসএফ' আপনার ব্যর্থতার প্রথম ধাপের পরে আমি 'কিল্লা মাইএসকিএলডি' না করা পর্যন্ত ব্যর্থ হয়েছিল
মার্কোস

দয়া করে, সেভাবে নয়! @ ডিভসের উত্তর আরও সুরক্ষিত। --স্কিপ-অনুদান-সারণীগুলি সম্পর্কে নথির উদ্ধৃতি: এটি যে কোনওটিকে পাসওয়ার্ড ছাড়াই এবং সমস্ত সুযোগ-সুবিধার সাথে সংযোগ স্থাপন করতে সক্ষম করে [...] কারণ এটি অনিরাপদ, [...] দূরবর্তী ক্লায়েন্টদের সংযোগ স্থাপন থেকে রক্ষা করতে --skip-grant-tablesএকত্রে ব্যবহার করুন --skip-networkingওহ, এবং এটিও আমার পক্ষে কাজ করেনি। আমি এখানে কেন এসেছি: পি
বাল্মীপুর

2
এটি আমাকে দিচ্ছে: ERROR 1054 (42S22): 'ক্ষেত্রের তালিকায়' অজানা কলাম 'পাসওয়ার্ড'
এমডি। মহিউদ্দিন আহমেদ 12

এটি পরিচালনা করার আরও সুরক্ষিত উপায় @ আংশুর উত্তরটি দেখুন
মুগোমা জে ওকোম্বা

1
@ এমডি.মহিউদ্দিনআহমেড আপনি অবশ্যই মাইএসকিএল-সার্ভারের নতুন সংস্করণ ব্যবহার করছেন। এই উত্তরটি দেখুন: stackoverflow.com/a/31122246/6242649
উদয়রাজ দেশমুখ

32

আপনার পাসওয়ার্ডটি অনুপস্থিত থাকলে এটি ঘটে।

পাসওয়ার্ড পরিবর্তন করার পদক্ষেপগুলি:

  1. মাইএসকিউএল সার্ভার বন্ধ করুন (লিনাক্সে):

    sudo systemctl stop mysql
  2. অনুদানের টেবিলগুলি লোড না করে বা নেটওয়ার্কিং সক্ষম না করেই ডাটাবেসটি শুরু করুন:

    sudo mysqld_safe --skip-grant-tables --skip-networking &

    এই কমান্ডের শেষে থাকা
    এম্পারস্যান্ডটি এই প্রক্রিয়াটিকে পটভূমিতে চালিত করে তুলবে যাতে আপনি আপনার টার্মিনালটি ব্যবহার করতে এবং #mysql -u রুট চালিয়ে যেতে পারেন, এটি পাসওয়ার্ডের জন্য জিজ্ঞাসা করবে না।

    যদি আপনি নীচের মত ত্রুটি পান:

    2018-02-12T08: 57: 39.826071Z mysqld_safe ডিরেক্টরি '/ var / run / mysqld' ইউনিক্স
    সকেট ফাইলটির জন্য নেই। mysql -u root ERROR 2002 (HY000): সকেট
    '/var/run/mysqld/mysqld.sock' (2) [1] + প্রস্থান 1 এর মাধ্যমে স্থানীয় মাইএসকিউএল সার্ভারের সাথে সংযোগ স্থাপন করতে পারে না

  3. মাইএসকিউএল পরিষেবা ডিরেক্টরি করুন।

    sudo mkdir /var/run/mysqld

    মাইএসকিউএল ব্যবহারকারীকে পরিষেবা ডিরেক্টরিতে লেখার অনুমতি দিন।

    sudo chown mysql: /var/run/mysqld
  4. ব্যাকগ্রাউন্ডে মাইএসকিএল চালানোর জন্য একই কমান্ডটি পদক্ষেপ 2 এ চালান।

  5. মাইএসকিএল-রুটি চালান আপনি পাসওয়ার্ড না দিয়ে মাইএসকিএল কনসোল পাবেন।

    এই আদেশগুলি চালান

    FLUSH PRIVILEGES;

    মাইএসকিউএল 5.7.6 এবং আরও নতুনর জন্য

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

    মাইএসকিউএল 5.7.5 বা তার বেশি বয়সীদের জন্য

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

    যদি ALTER USER কমান্ডটি কাজ না করে:

    UPDATE mysql.user SET authentication_string = PASSWORD('new_password')     WHERE User = 'root' AND Host = 'localhost';

এখন প্রস্থান করুন

  1. বন্ধ করার জন্য ম্যানুয়ালি শুরু হয়েছে

    sudo kill `cat /var/run/mysqld/mysqld.pid`
  2. মাইএসকিএল পুনরায় চালু করুন

    sudo systemctl start mysql

2
আমার ক্ষেত্রে, আমাকে sudo kill `sudo cat /var/run/mysqld/mysqld.pid`
6:25 পদক্ষেপটি

1
এটি আমার জন্য কাজ করেছে। পদক্ষেপ 5 এ, ব্যবহার করুন 1. ব্যবহারকারী 2 ব্যবহার করুন - পাসওয়ার্ড ব্যবহার পরিবর্তন করতে -> ব্যবহারকারী সেট প্রমাণীকরণ_string = পাসওয়ার্ড ("পাসওয়ার্ড") আপডেট করুন যেখানে ব্যবহারকারী = 'রুট';
বিক্রম

1
এটিই সেরা সমাধান, আমি এটি জানতে পারি। এমবিপি '15 মডেলটিতে ম্যাকোস মোজাভেতে "5.7.26 মাইএসকিউএল কমিউনিটি সার্ভার (জিপিএল)" ব্যবহার করা হচ্ছে। আমি মাইএসকিএলকে সিস্টেমের পছন্দ থেকে বন্ধ করতে হয়েছিল এবং তারপরে দ্বিতীয় ধাপ এবং 5 ধাপ অনুসরণ করেছিলাম এবং তারপরে পিএস-পিএফ ব্যবহার করে পিআইডি সন্ধান করে আমার মাইএসকিউএল প্রক্রিয়াটি মেরে ফেলতে হয়েছিল | গ্রেপ মাইএসকিএল।
সিএসপাইডার

12

আমি এই খুব বিরক্তিকর সমস্যাটি পেয়েছি এবং অনেক উত্তর পেয়েছি যা কার্যকর হয়নি work আমি যে সর্বোত্তম সমাধানটি পেলাম তা হ'ল মাইএসকিএল সম্পূর্ণরূপে আনইনস্টল করা এবং এটি পুনরায় ইনস্টল করা। পুনরায় ইনস্টল করার সময় আপনি একটি রুট পাসওয়ার্ড সেট করেছেন এবং এটি সমস্যার সমাধান করেছে।


sudo apt-get purge mysql-server mysql-client mysql-common mysql-server-core-5.5 mysql-client-core-5.5
sudo rm -rf /etc/mysql /var/lib/mysql
sudo apt-get autoremove
sudo apt-get autoclean

আমি এই কোডটি অন্য কোথাও পেয়েছি সুতরাং এর জন্য আমি কোনও ক্রেডিট নিই না। কিন্তু এটি কাজ করে. মাইএসকিএল ইনস্টল করার পরে এটি আনইনস্টল করার পরে আমি মনে করি ডিজিটাল সমুদ্রের এটির উপর একটি ভাল টিউটোরিয়াল রয়েছে। এই জন্য আমার সংক্ষিপ্ত চেকআউট।
https://gist.github.com/JamesDaniel/c02ef210c17c1dec82fc973cac484096


12

আমি উবুন্টু -16.04 ব্যবহার করছি: ইনস্টল করা মাইএসকিএল - 5.7। আমার একই সমস্যা ছিল: রুট ব্যবহারকারীর জন্য লগইন অস্বীকার।

নীচের পদক্ষেপের চেষ্টা:

  1. dpkg --get-selections | grep mysql (মাইএসকিএল এর সংস্করণ পেতে)।

  2. dpkg-reconfigure mysql-server-5.7

  3. mysql -u root -p

-P ছাড়াই আপনাকে পাসওয়ার্ড জিজ্ঞাসা করতে অনুরোধ করে না। একবার আপনি প্রবেশ করার পরে, আপনি নিম্নলিখিত পদক্ষেপগুলি দ্বারা একটি পাসওয়ার্ড সহ একটি ব্যবহারকারী তৈরি করতে পারেন:

CREATE USER 'your_new_username'@'your-hostname' IDENTIFIED BY 'your-password';

GRANT ALL PRIVILEGES ON *.* to 'your_new_username'@'your-hostname' WITH GRANT OPTION;

রুট থেকে প্রস্থান করুন এবং আপনি উপরে যেটি দিয়েছেন তা থেকে লগইন করুন।

mysql -u <your_new_username> -p

কিছু কারণে এখনও কেবল মাইএসকিএল টাইপ করা কার্যকর হয় না। সমস্ত। আমি এটি ব্যবহার করার অভ্যাস করার পরামর্শ দিই mysql -u <name> -p



8

অন্য কোনও উত্তর যদি আপনার পক্ষে কাজ না করে এবং আপনি এই ত্রুটিটি পেয়েছেন:

mysqld_safe Logging to '/var/log/mysql/error.log'.
mysqld_safe Directory '/var/run/mysqld' for UNIX socket file don't exists.
[1]+  Exit 1                  sudo mysqld_safe --skip-grant-tables

আপনি নিজের পাসওয়ার্ডটি পুনরায় সেট না করা পর্যন্ত নীচের কমান্ডগুলি ধাপে ধাপে অনুসরণ করুন:

# Stop Your Server First
sudo service mysql stop

# Make MySQL service directory.
sudo mkdir /var/run/mysqld

# Give MySQL permission to work with the created directory
sudo chown mysql: /var/run/mysqld

# Start MySQL, without permission and network checking
sudo mysqld_safe --skip-grant-tables --skip-networking &

# Log in to your server without any password.
mysql -u root mysql


# Update the password for the root user:
UPDATE mysql.user SET authentication_string=PASSWORD('YourNewPasswordBuddy'), plugin='mysql_native_password' WHERE User='root' AND Host='localhost';

#if you omit (AND Host='localhost') section, it updates the root pass regardless of its host

FLUSH PRIVILEGES;
EXIT;

#kill mysqld_safe process
sudo service mysql restart

#Now you can use your new password to login to your Server
mysql -u root -p

#take note for remote access you should create a remote user and then grant all privileges to that remote user

এটি উসুন্টু 18.04 এলটিএস-তেও মাইএসকিএল 5.7 এর সঠিক উত্তর। ধন্যবাদ
ধীরাজ

সমস্ত দূরবর্তী ঠিকানার জন্য: sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf -> বাইন্ড-ঠিকানা = 0.0.0.0
মেহেদি

7

আমি মাইএসকিউএলকে মূল ব্যবহারকারী হিসাবে ইনস্টল করেছি ( $SUDO) এবং এই একই সমস্যাটি পেয়েছি
এখানে আমি এটি কীভাবে স্থির করেছি-

  1. $ sudo cat /etc/mysql/debian.cnf

এটি বিবরণ হিসাবে প্রদর্শিত হবে -

# Automatically generated for Debian scripts. DO NOT TOUCH! [client] host = localhost user = debian-sys-maint password = GUx0RblkD3sPhHL5 socket = /var/run/mysqld/mysqld.sock [mysql_upgrade] host = localhost user = debian-sys-maint password = GUx0RblkD3sPhHL5 socket = /var/run/mysqld/mysqld.sock

উপরে আমরা পাসওয়ার্ড দেখতে পাচ্ছি আমরা প্রম্পটে এটি ব্যবহার(GUx0RblkD3sPhHL5) করতে যাচ্ছি-

  1. mysql -u debian-sys-maint -p Enter password:
    এখন পাসওয়ার্ড সরবরাহ করুন ( GUx0RblkD3sPhHL5 )।

  2. এখন exitমাইএসকিউএল থেকে আবার লগইন করুন-

    mysql -u root -p Enter password:
    এখন নতুন পাসওয়ার্ড সরবরাহ করুন। এগুলি সবই, আমাদের আরও ব্যবহারের জন্য নতুন পাসওয়ার্ড আছে।

এটি আমার পক্ষে কাজ করেছে, আশা করি আপনাকেও সহায়তা করবে!


6

দয়া করে সরকারী ডকুমেন্টেশন পড়ুন: মাইএসকিএল: কীভাবে রুট পাসওয়ার্ডটি পুনরায় সেট করবেন

আপনার যদি টার্মিনালে অ্যাক্সেস থাকে:

মাইএসকিউএল 5.7.6 এবং তার পরে:

$ mysql
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';

মাইএসকিউএল 5.7.5 এবং তার আগের:

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

1
দেয়: ত্রুটি 1131 (42000): আপনি মাইএসকিউএলকে বেনামে ব্যবহারকারী হিসাবে ব্যবহার করছেন এবং বেনামে ব্যবহারকারীদের পাসওয়ার্ড পরিবর্তন করার অনুমতি নেই
এমডি। মহিউদ্দিন আহমেদ

1
এটা স্বাভাবিক. আপনার ব্যবহারকারী বেনামে। আপনাকে কার্যকর করতে হবে> mysql -u {your_username}
d.danailov

3

আমি ম্যাক ওএসএক্সে mysql-5.7.12-osx10.11-x86_64.dmg ব্যবহার করছি

ইনস্টলেশন প্রক্রিয়া স্বয়ংক্রিয়ভাবে রুট ব্যবহারকারীর জন্য একটি অস্থায়ী পাসওয়ার্ড সেট আপ করে। আপনার পাসওয়ার্ডটি সংরক্ষণ করা উচিত। পাসওয়ার্ডটি পুনরুদ্ধার করা যায় না।

নির্দেশাবলী অনুসরণ করুন

  1. যাও cd /usr/local/mysql/bin/
  2. অস্থায়ী পাসওয়ার্ড প্রবেশ করান (যা দেখতে "tsO07JF1 => 3" এর মতো দেখতে হবে)
  3. আপনার মাইএসকিএল> প্রম্পট পাওয়া উচিত।
  4. চালান, SET PASSWORD FOR 'root'@'localhost' = PASSWORD('{YOUR_PASSWORD}');আপনি যদি নিজের পাসওয়ার্ড সেট করতে চান: "রুট" তবে আদেশটি হ'ল,SET PASSWORD FOR 'root'@'localhost' = PASSWORD('root');
  5. চালান ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
  6. চালান exit
  7. চালান ./mysql -u root -p
  8. আপনার পাসওয়ার্ড টাইপ করুন। আমার ক্ষেত্রে আমি টাইপ করব, "মূল" (উদ্ধৃতি ব্যতীত)
  9. এখানেই শেষ.

সুবিধার জন্য, "/usr/local/mysql/bin"আপনার প্যাথটিতে যোগ করা উচিত

এখন যে কোনও জায়গা থেকে আপনি টাইপ করতে পারেন ./mysql -u root -pএবং তারপরে পাসওয়ার্ডটি টাইপ করুন এবং আপনি mysql> প্রম্পট পাবেন।

আশা করি এটা সাহায্য করবে.


3

উত্তরটি নির্বোধ শোনায়, তবে ঘন্টাখানেক সময় নষ্ট করার পরে, আমি এটি এভাবে কাজ করতে পেলাম

mysql -u root -p

আমি ত্রুটি বার্তা পেয়েছি

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

যদিও আমি সঠিক পাসওয়ার্ডটি টাইপ করছিলাম (যখন আপনি প্রথম mysql ইনস্টল করবেন তখন অস্থায়ী পাসওয়ার্ড পাবেন)

পাসওয়ার্ড প্রম্পটটি জ্বলজ্বলে যখন আমি পাসওয়ার্ডটি টাইপ করছিলাম তখনই আমি ঠিক পেয়েছি


2

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

মাইএসকিউএল সার্ভার বন্ধ করুন (লিনাক্সে):

/etc/init.d/mysql stop

মাইএসকিউএল সার্ভারটি বন্ধ করুন (ম্যাক ওএস এক্সে):

mysql.server stop

--স্কিপ-অনুদান-টেবিলগুলি দিয়ে mysqld_safe ডিমন শুরু করুন

mysqld_safe --skip-grant-tables &
mysql -u root

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

use mysql;
update user set password=PASSWORD("NEW-ROOT-PASSWORD") where User='root';
flush privileges;
quit;

মাইএসকিউএল সার্ভার বন্ধ করুন (লিনাক্সে):

/etc/init.d/mysql stop

মাইএসকিউএল সার্ভারটি বন্ধ করুন (ম্যাক ওএস এক্সে):

mysql.server stop

মাইএসকিউএল সার্ভার পরিষেবা শুরু করুন এবং মূল দ্বারা লগইন করতে পরীক্ষা করুন:

mysql -u root -p

1

বাই ডিফল্ট পাসওয়ার্ড নাল হবে, সুতরাং আপনাকে নীচের পদক্ষেপগুলি দিয়ে পাসওয়ার্ড পরিবর্তন করতে হবে।

মাইএসকিএল সংযোগ করুন

রুট # mysql

মাইএসকিএল ব্যবহার করুন

mysql> আপডেট ব্যবহারকারী সেট পাসওয়ার্ড = পাস পাসওয়ার্ড ('রুট') যেখানে ব্যবহারকারী = 'রুট'; অবশেষে, সুবিধাগুলি পুনরায় লোড করুন:

mysql> ফ্লাশ সুবিধা; mysql> প্রস্থান করুন



1

উবুন্টু 16.04 এ (মাইএসকিউএল সংস্করণ 5.7.13) আমি নীচের পদক্ষেপগুলি দিয়ে সমস্যার সমাধান করতে সক্ষম হয়েছি:

  1. বিভাগ B.5.3.2.2 বিভাগের নির্দেশাবলী অনুসরণ করুন রুট পাসওয়ার্ড পুনরায় সেট করা: ইউনিক্স এবং ইউনিক্সের মতো সিস্টেমগুলি মাইএসকিউএল 5.7 রেফারেন্স ম্যানুয়াল

  2. যখন আমি # সুডো মাইএসকিএলডি_সামেফ - ইনিট-ফাইল = / হোম / আমার / মাইএসকিএল-আরআই চেষ্টা করেছি এবং এটি ব্যর্থ হয়েছিল। ত্রুটিটি /var/log/mysql/error.log এ ছিল

    2016-08-10T11: 41: 20.421946Z 0 [দ্রষ্টব্য] init_file '/ home / me / mysql / mysql-init' কার্যকর করা শুরু হয়েছে। 2016-08-10T11: 41: 20.422070Z 0 [ERROR] / usr / sbin / mysQL 41: 20.422096Z 0 [ERROR] বাতিল করা হচ্ছে

মাইএসকিএল-থ্রির ফাইল অনুমতিটি সমস্যা ছিল না, অ্যাপারমোর অনুমতিটি সম্পাদনা করতে হবে

  1. # সুডো vi /etc/apparmor.d/usr.sbin.mysqld দ্বারা সম্পাদনা করুন

    ....
      /var/log/mysql/ r,
      /var/log/mysql/** rw,
    
    
    # Allow user init file
      /home/pranab/mysql/* r,
    
      # Site-specific additions and overrides. See local/README for details.
      #include <local/usr.sbin.mysqld>
    }
  2. # সুডো /etc/init.d/apparmor পুনরায় লোড করুন

  3. Mysqld_safe আবার শুরু করুন উপরের 2 ধাপ চেষ্টা করুন। /Var/log/mysql/error.log পরীক্ষা করুন নিশ্চিত করুন যে কোনও ত্রুটি নেই এবং mysqld সফলভাবে শুরু হয়েছে

  4. #Mysql -u মূল -p চালান

    পাসওয়ার্ড লিখুন:

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

  1. বন্ধ # mysqld_safe # সুডু মাইজক্ল্যাডমিন-রুট-পি শাটডাউন দ্বারা

  2. # সুডো সিএসটিএলটি মাইএসকিএল-এর মাধ্যমে মাইএসকিএলডি স্বাভাবিক পদ্ধতিতে শুরু করুন


1

আপনার যদি কোনও ডকার চিত্রের অংশ হিসাবে মাইএসকিউএল থাকে (6606 পোর্টে বলুন) এবং একটি উবুন্টু ইনস্টল (পোর্ট 3306 তে) পোর্ট নির্দিষ্ট করে যথেষ্ট নয়:

mysql -u root -p -P 6606

নিক্ষেপ করবে:

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

আপনার স্থানীয় আইপি সমস্যাটিকে স্থির করে উল্লেখ করে ডিফল্টরূপে লোকালহোস্টের সাথে সংযোগ স্থাপনের চেষ্টা করছে:

mysql -u root -p -P 6606 -h 127.0.0.1

0

সাম্প্রতিক মাইএসকিউএল সংস্করণে সেখানে নেই passwordmysql.userটেবিল।

সুতরাং আপনি কার্যকর করতে হবে ALTER USER। ফাইলটিতে এটি একটি লাইন কমান্ড রাখুন।

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

এবং এটি init ফাইল হিসাবে চালিত করুন (রুট বা মাইএসকিএল ব্যবহারকারী হিসাবে)

mysqld_safe --init-file=/home/me/mysql-init &

মাইএসকিউএল সার্ভারটি শুরু করার জন্য বন্ধ করা দরকার mysqld_safe

এছাড়াও, এই init ফাইলটি লোড করার জন্য অ্যাপারমোর অনুমতি নিয়ে কোনও সমস্যা হতে পারে। এখানে আরও পড়ুন https://blogs.oracle.com/jsmyth/entry/apparmor_and_mysql


0

আপনি যদি এখনও পাসওয়ার্ড সেট না করে থাকেন তবে চালান mysql -uroot, এটি আমার পক্ষে কাজ করে।


0

ম্যাক-এ, ইনস্টলেশন করার সময় আপনাকে প্রথম পাসওয়ার্ড দিয়ে লগ ইন করতে যদি সমস্যা হয়, তবে আপনি কেবল মাইএসকিএল প্রক্রিয়াটি মেরে ফেলতে পারেন এবং তারপরে চেষ্টা করতে পারেন।

সুতরাং: 1- মাইএসকিএলের পিআইডি সন্ধানের জন্য নিম্নলিখিত কমান্ডটি চালান:

ps -aef | grep mysql | grep -v grep

2- প্রক্রিয়াটি হত্যা:

kill -15 [process id] 

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

mysql -uroot -p

যা আপনাকে আপনার পাসওয়ার্ড লিখতে বলেছে। শুধু প্রাথমিক পাসওয়ার্ড লিখুন।


0

আমারও একি দশা:

ত্রুটি 1045 (28000): ব্যবহারকারীর 'রুট' @ 'লোকালহোস্ট' এর জন্য অ্যাক্সেস অস্বীকার করা হয়েছে (পাসওয়ার্ড ব্যবহার করে: না)

তবে আমার ক্ষেত্রে, কারণটি সত্যিই নির্বোধ ছিল। আমি ওয়ার্ড ডকুমেন্ট থেকে কমান্ডটি অনুলিপি করেছি, এবং সমস্যাটি হ'ল হাইফেনের ASCII 2D কোডটি ছিল না তবে ইউনিকোড E28093।

ভুল পথ:

mysql -u root pxxxx

সঠিক ভাবে:

mysql -u root -pxxxx

উভয়ই দেখতে একই রকম তবে একই নয় (এটি চেষ্টা করে দেখুন, আপনার পাসওয়ার্ডটি প্রতিস্থাপন করে অনুলিপি করুন এবং পেস্ট করুন)।

এই ধরণের ত্রুটির মুখোমুখি হয়ে সুপারিশটি হ'ল অনুলিপিটি অনুলিপি করা ও কপি করার পরিবর্তে টাইপ করা।


0

আমি @ লাহিরু দ্বারা সঠিক উত্তর দিয়ে চেষ্টা করেছি, তবে ম্যাকএস মোজাভেতে মাইএসকিউএল সার্ভার সংস্করণ 8.0.16 (সম্প্রদায়) দিয়ে কাজ করি নি।

উপরে সমীর চৌধুরী এর নির্দেশাবলী অনুসরণ করেছেন এবং কিছু সামঞ্জস্য রেখে আমি রুট পাসওয়ার্ড পরিবর্তন করতে এবং লোকালহোস্ট থেকে রুট অ্যাক্সেস সক্ষম করতে সক্ষম হয়েছি।

আপডেট: আপনি যদি হোমব্রিউ ব্যবহার করে ম্যাক ওএসে ইনস্টল করছেন তবে এগুলির সবগুলির প্রয়োজন নেই: "ব্রিউ ইনস্টল মাইএসকিএল"


0

উবুন্টু 18.04 এলটিএস এবং মাইকিউএল সার্ভার সংস্করণ 5.7.27-0ubuntu0.18.04.1 (উবুন্টু) নিয়ে আমার এই সমস্যা ছিল।

আমার সমাধানটি ছিল (এর সাথে মূল হিসাবে চলমান sudo -i)

mysql <<-EOSQL
  use mysql;
  update user set plugin="mysql_native_password" where User='root';
  FLUSH PRIVILEGES ;
EOSQL

mysqladmin -u root password new_pw

0

আমিও একই সমস্যা জুড়ে এসেছি, আমি যা করেছি তা ছিল

1) আপনার সেমিডি খুলুন

2) সি: \ প্রোগ্রাম ফাইলগুলি \ মাইএসকিউএল \ মাইএসকিউএল সার্ভার 8.0 \ বিন> (যেখানে আপনি ইনস্টল করা সার্ভারের উপর নির্ভর করে মাইএসকিউএল সার্ভার 8.0 আলাদা হতে পারে)

3) তারপরে নিচের কমান্ডটি mysql -u root -p দিন

৪) আমি পাসওয়ার্ডের জন্য অনুরোধ করব ... কেবলমাত্র এন্টার টিপুন, কখনও কখনও ইনস্টল করার সময় আপনি যে পাসওয়ার্ডটি প্রবেশ করেছিলেন তা ফাঁকা হয়ে যায়।

এখন আপনি কেবল ডাটাবেস অ্যাক্সেস করতে পারেন

এই সমাধানটি উইন্ডোজ প্ল্যাটফর্মে আমার জন্য কাজ করেছে


0

শীর্ষ উত্তর (ডাব্লু / মাইস্ক্ল্যাডমিন) ম্যাক 10.15 এ কাজ করেছিল, তবে এটি উবুন্টুতে কাজ করে না। এরপরে মাইএসকিএল-এর নিরাপদ সূচনা সহ অন্যান্য অনেকগুলি বিকল্প চেষ্টা করেও কেউ কাজ করেনি। এইভাবে একটি নতুন প্রতিক্রিয়া যুক্ত।

কমপক্ষে সংস্করণটির জন্য আমার কাছে 5.7.28-0ubuntu0.18.04.4উত্তরগুলির অভাব ছিল IDENTIFIED WITH mysql_native_password। 5.7.28 হ'ল এলটিএসে ডিফল্ট এবং সুতরাং বেশিরভাগ নতুন নতুন সিস্টেমের জন্য এটি ডিফল্ট হওয়া উচিত (20.04 এলটিএস না আসা পর্যন্ত)।

পাওয়া গেছে: https://www.digitalocean.com/commune/questions/can-t-set-root-password-mysql-server এবং এখন প্রয়োগ হয়েছে

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

যা কাজ করে


0

আমি যে ত্রুটিটি সম্মুখীন হয়েছিল তা ছিল

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

এটি বন্দর চালু থাকায় সমস্যা ছিল।

ডিফল্টরূপে মাইএসকিএল চলছে port 3306

আপনি এটি চালিয়ে চেক করতে পারেন

  • একটি 32-বিট সিস্টেমে:

    sudo /opt/lampp/manager-linux.run

  • একটি 64-বিট সিস্টেমে:

    sudo /opt/lampp/manager-linux-x64.run

এবং configureবোতামে ক্লিক করুন

xampp নিয়ন্ত্রণ প্যানেল

আমার ক্ষেত্রে বন্দরটি 3307 চলমান ছিল এবং আমি যে কমান্ডটি ব্যবহার করেছি তা ছিল

mysql -u root -p -P 3307 -h 127.0.0.1

0

আমার ক্ষেত্রে আমি একটি পাস করার চেষ্টা করছিলাম একটি ধারক কমান্ড। এক্ষেত্রে কেবল প্রথম শব্দের ব্যাখ্যা করা হয়েছিল। আপনি চালাচ্ছেন না তা নিশ্চিত করুন:

mysql

উল্টোদিকে:

mysql -uroot -ppassword schemaname

সম্ভবত উদ্ধৃত করার চেষ্টা করুন:

'mysql -uroot -ppassword schemaname'
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.