মাইএসকিউএল রুট পাসওয়ার্ড পুনরায় সেট করতে অক্ষম, কিছুই চেষ্টা করে


9

ভাল, আসুন প্রথমে পরিষ্কার করুন যে আমি এই বিষয়টি সম্পর্কে জিজ্ঞাসা উবুন্টু থেকে সমস্ত প্রশ্ন পড়েছি এবং আমি সরকারী ডকস থেকে সমস্ত পদক্ষেপ অনুসরণ করেছি:

help.ubuntu.com

dev.mysql.com

আমি উবুন্টু 16.04.1 এলটিএস ব্যবহার করছি

সুতরাং কেউ সম্ভবত এমন কিছু প্রস্তাব দেওয়ার আগে যা আমি সম্ভবত ইতিমধ্যে চেষ্টা করেছি, আমি যা করেছি তা প্রদর্শন করতে যাচ্ছি:

root@localhost:/# sudo /etc/init.d/mysql stop
[ ok ] Stopping mysql (via systemctl): mysql.service.

মাইএসকিউএল সঠিকভাবে থামানো হয়েছে।

root@localhost:/# sudo /usr/sbin/mysqld --skip-grant-tables --skip-networking &
[1] 3316
root@localhost:/#

এখানে আমি জানি না এটি কাজ করছিল কিনা, তাই আমি যেভাবেই পদক্ষেপগুলি অনুসরণ করি।

root@localhost:/# mysql -u root
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
root@localhost:/#

দেখে মনে হচ্ছে এটি কাজ করে না, কারণ পরিষেবা শুরু হয়নি। আমি পরবর্তী পদক্ষেপগুলি দিয়ে চালিয়ে যেতে না পারায় আমি অন্য পদ্ধতিটি (শুদ্ধি) চেষ্টা করি try

ব্যবহারের পরে:

sudo apt-get --purge remove
sudo apt-get install

আমি পরবর্তী পদক্ষেপ চেষ্টা:

root@localhost:/# mysqladmin -u root password MyNewPassword
mysqladmin: connect to server at 'localhost' failed
error: 'Access denied for user 'root'@'localhost' (using password: NO)'
root@localhost:/#

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

সুতরাং আমি সেখানে নির্দেশিত হিসাবে মাইএসকিএল প্রক্রিয়াটি হত্যা করি এবং তারপরে আমি ব্যবহার করি

root@localhost:/# mysqld_safe --init-file=/home/me/mysql-init &
[1] 5267
root@localhost:/# 2017-02-01T12:47:49.250083Z mysqld_safe Logging to syslog.
2017-02-01T12:47:49.252427Z mysqld_safe Logging to '/var/log/mysql/error.log'.

2017-02-01T12:47:49.254765Z mysqld_safe Logging to '/var/log/mysql/error.log'.

2017-02-01T12:47:49.257045Z mysqld_safe Directory '/var/run/mysqld' for UNIX socket file don't exists.

[1]+  Salida 1                mysqld_safe --init-file=/home/me/mysql-init
root@localhost:/#

এখন যখন আমি বিকল্পগুলি থেকে বেরিয়ে আসছিলাম তখন আমি জিজ্ঞাসা উবুন্টুতে এখানে উল্লিখিত অন্য একটি পদ্ধতিও চেষ্টা করে দেখছি:

root@localhost:/# sudo dpkg-reconfigure mysql-server-5.7
Checking if update is needed.
This installation of MySQL is already upgraded to 5.7.17, use --force if you still need to run mysql_upgrade
root@localhost:/#

এবং এখন আমি সত্যিই বিকল্পগুলির বাইরে, সুতরাং কোনও পরামর্শ স্বাগত welcome

উত্তর:


16

আমারও একই সমস্যা ছিল এবং আমি এই লাইনটি কার্যকর করে সমাধান করেছি:

$ sudo mkdir /var/run/mysqld; sudo chown mysql /var/run/mysqld

এই লাইনটি কার্যকর করার আগে:

root@localhost:/# mysqld_safe --init-file=/home/me/mysql-init &

আমার জন্য, এই পদক্ষেপগুলি আরও ভাল কাজ করেছে।

আমি মনে করি এটি করার একটি পরিষ্কার উপায় আছে তবে আমার জন্য এটি ছিল একটি দ্রুত এবং দক্ষ কাজ।


1
থেক্স, যে কৌশলটি করেছে;)
ইলোভেলিনাক্স

এটি mysql 5.7 এ ঘটে। আপনি যখন mysql পরিষেবাটি বন্ধ করেন / var / run / mysqld মুছে ফেলা হয় এবং পুনরায় পরিষেবাটি চালু করার পরে পুনরায় তৈরি করা হয়।
কেপি

1

আমি যা চেষ্টা করেছি তা বিবেচনা না করে পুনরায় ইনস্টল করার জন্য আমি মাইএসকিএল পেতে পারি না, কেবল পাসওয়ার্ডটি চেষ্টা ও পুনরায় সেট করার দরকার পড়েছিলাম।

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

দ্রষ্টব্য: এটি ব্যবহারকারীর রুটের জন্য পাসওয়ার্ড প্রবেশ করিয়েছে, আমার কাছে মূল পাসওয়ার্ড নেই তাই আমি নতুন পাসওয়ার্ড হিসাবে ব্যবহার করতে কেবল একই পাসওয়ার্ডটি প্রবেশ করিয়েছে।

দ্রষ্টব্য: এখানে কোনও /var/log/mysqld.log ছিল না /var/log/mysql/error.log

এছাড়াও মনে রাখবেন এটি আমার পক্ষে কাজ করে নি:
sudo dpkg-reconfigure mysql-server-5.7

না হয়:
sudo dpkg-reconfigure --force mysql-server-5.5

মাইএসকিউএল পরিষেবা ডিরেক্টরি তৈরি করুন।
sudo mkdir /var/run/mysqld

মাইএসকিউএল ব্যবহারকারীকে পরিষেবা ডিরেক্টরিতে লেখার অনুমতি দিন।
sudo chown mysql: /var/run/mysqld

তারপর:

  1. বর্তমান mysqld পিড হত্যা
  2. sudo / usr / sbin / mysqld & দিয়ে mysqld চালান
  3. মাইএসকিএল_সিকিউর_ইনস্টলেশন থেকে চালনা / ইউএসআর / বিন / মাইএসকিএল_সিকিউর_ইনস্টলেশন

    আউটপুট

    রুট @ মাই সার্ভার: ~ # / usr / বিন / mysql_secure_installation

    মাইএসকিউএল সার্ভার স্থাপনার সুরক্ষিত করা।

    ব্যবহারকারীর মূলের জন্য পাসওয়ার্ড প্রবেশ করান:

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

    হ্যাঁর জন্য y | Y টি চাপুন, না এর জন্য অন্য কোনও কী: কোনও মূলের জন্য বিদ্যমান পাসওয়ার্ডটি ব্যবহার করে নয়। রুটের জন্য পাসওয়ার্ড পরিবর্তন করবেন? ((হ্যাঁ এর জন্য y | Y টিপুন, না এর জন্য অন্য কোনও কী টিপুন)): y

    নতুন পাসওয়ার্ড:

    নতুন পাসওয়ার্ডটি পুনরায় প্রবেশ করুন: ডিফল্টরূপে, একটি মাইএসকিউএল ইনস্টলেশনটির একটি বেনামে ব্যবহারকারী রয়েছে, যার জন্য তাদের ব্যবহারকারীর অ্যাকাউন্ট তৈরি না করে যে কেউ মাইএসকিউএলে লগ ইন করতে দেয়। এটি কেবল পরীক্ষার জন্য, এবং ইনস্টলেশনটি কিছুটা মসৃণ করে তোলার উদ্দেশ্যে করা হয়েছে। উত্পাদনের পরিবেশে যাওয়ার আগে এগুলি অপসারণ করা উচিত।

    বেনামে ব্যবহারকারীদের সরান? (হ্যাঁ এর জন্য y | Y টি চাপুন, না এর জন্য অন্য কোনও কী): y সাফল্য।

    সাধারণত, রুটটিকে কেবল 'লোকালহোস্ট' থেকে সংযোগ করার অনুমতি দেওয়া উচিত। এটি নিশ্চিত করে যে কেউ নেটওয়ার্ক থেকে মূল পাসওয়ার্ডে অনুমান করতে পারে না।

    দূরবর্তী অবস্থান থেকে রুট লগইন বাতিল করবেন? (হ্যাঁ এর জন্য y | Y টি চাপুন, না এর জন্য অন্য কোনও কী): y সাফল্য।

    ডিফল্টরূপে, মাইএসকিউএল 'টেস্ট' নামের একটি ডাটাবেস নিয়ে আসে যা যে কেউ অ্যাক্সেস করতে পারে। এটি কেবল পরীক্ষার জন্যও, এবং উত্পাদন পরিবেশে যাওয়ার আগে সরিয়ে ফেলা উচিত।

    পরীক্ষার ডাটাবেস এবং এতে অ্যাক্সেস সরাবেন? (Y এর জন্য হ্যাঁ এর জন্য Y চাপুন, না এর জন্য অন্য কোনও কী): y

    • পরীক্ষার ডাটাবেস ছাড়ছে ... সাফল্য।

    • পরীক্ষার ডাটাবেসে সুবিধাগুলি সরানো হচ্ছে ... সাফল্য।

    সুবিধাগুলি সারণীগুলি পুনরায় লোড করা নিশ্চিত করবে যে এখন পর্যন্ত করা সমস্ত পরিবর্তনগুলি অবিলম্বে কার্যকর হবে take

    সুবিধাগুলি টেবিলগুলি পুনরায় লোড করবেন? (হ্যাঁ এর জন্য y | Y টি চাপুন, না এর জন্য অন্য কোনও কী): y সাফল্য।

    সব শেষ!


0

আমারও একই সমস্যা ছিল এবং এর সাথে সমাধান করেছি:

# /etc/init.d/mysql stop
# service mysql stop
# mkdir -p /var/run/mysqld
# chown mysql:mysql /var/run/mysqld
# mysqld_safe --skip-grant-tables &
# mysql -u root
mysql> use mysql;
mysql> update user set authentication_string=password('1234') where user='root';

(এখানে, authentication_stringপাসওয়ার্ড ক্ষেত্র ধারণ করে))

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