টিএল; ডিআর: রুট ব্যবহারকারী হিসাবে মাইএসকিএল / মারিয়্যাডবি এর নতুন সংস্করণগুলি অ্যাক্সেস করতে নতুন ইনস্টল করার পরে, আপনাকে একটি রুট শেলের মধ্যে থাকা প্রয়োজন (যেমন sudo mysql -u root
, বা mysql -u root
শেলের ভিতরে su -
বা sudo -i
প্রথম দ্বারা শুরু করা )
উবুন্টুতে সবেমাত্র একই আপগ্রেড করার পরেও আমার একই সমস্যা ছিল।
কি অদ্ভুত ছিল তা ছিল
sudo /usr/bin/mysql_secure_installation
আমার পাসওয়ার্ড গ্রহণ করবে, এবং আমাকে এটি সেট করার অনুমতি দেবে, কিন্তু আমি ক্লায়েন্টের root
মাধ্যমে লগ ইন করতে পারিনিmysql
আমাকে মারিয়াডব শুরু করতে হয়েছিল
sudo mysqld_safe --skip-grant-tables
রুট হিসাবে অ্যাক্সেস পেতে, অন্য সমস্ত ব্যবহারকারী এখনও জরিমানা অ্যাক্সেস করতে পারে।
কলামটি mysql.user
মূলের জন্য সারণীটির দিকে তাকিয়ে আমি plugin
সেট করেছি unix_socket
অন্য সমস্ত ব্যবহারকারী এটি 'mysql_native_password' তে সেট করা আছে। এই পৃষ্ঠায় একটি তাত্ক্ষণিকভাবে দেখুন: https://mariadb.com/kb/en/mariadb/unix_sket-authentication-plugin/ ব্যাখ্যা করে যে ইউনিক্স সকেট uid
ব্যবহারকারীর সাথে ক্লায়েন্টের সাথে চলমান প্রক্রিয়াটির সাথে মিল রেখে লগ ইন সক্ষম করে mysql.user
টেবিল। অন্য কথায় মারিয়্যাডবি অ্যাক্সেস root
করতে আপনাকে রুট হিসাবে লগ ইন করতে হবে।
নিশ্চিতভাবেই যথেষ্ট যে আমার মারিয়্যাডবি ডেমন প্রমাণীকরণের সাথে পুনরায় চালু করা প্রয়োজন আমি মূল হিসাবে লগইন করতে পারি
sudo mysql -u root -p
অথবা
sudo su -
mysql -u root -p
এটি সম্পন্ন করে আমি সুডো না করে কীভাবে অ্যাক্সেস করব সে সম্পর্কে ভাবলাম যা এই মাইএসকিএল অনুসন্ধানগুলি চালানোর বিষয় মাত্র is
GRANT ALL PRIVILEGES on *.* to 'root'@'localhost' IDENTIFIED BY '<password>';
FLUSH PRIVILEGES;
( <password>
আপনার পছন্দসই মাইএসকিএল রুট পাসওয়ার্ডের পরিবর্তে )। এই সক্ষম ব্যবহারকারীকে পাসওয়ার্ড সক্ষম করে password
বিকল্পভাবে মাইএসকিএল ক্যোয়ারী চলছে:
UPDATE mysql.user SET plugin = 'mysql_native_password' WHERE user = 'root' AND plugin = 'unix_socket';
FLUSH PRIVILEGES;
পাসওয়ার্ড পরিবর্তন না করে পাসওয়ার্ড লগইন ব্যবহার করতে রুট অ্যাকাউন্টটি পরিবর্তন করে দেবে, তবে এটি আপনাকে কোনও মাইএসকিএল / মারিয়্যাডবি ইনস্টল করে এতে কোনও মূল পাসওয়ার্ড ছাড়াই ছেড়ে দিতে পারে।
এর যে কোনও একটির পরে আপনাকে মাইএসকিএল / মারিয়্যাডবি পুনরায় চালু করতে হবে:
sudo service mysql restart
এবং ভয়েলা আমার ব্যক্তিগত অ্যাকাউন্ট থেকে আমার কাছে অ্যাক্সেস ছিল mysql -u root -p
দয়া করে নোট করুন যে এইটি করা সিকিউরিটি হ্রাস করছে সম্ভবত: মারিয়াডিবি বিকাশকারীরা কোনও ভাল কারণে এর জন্য রুট অ্যাক্সেসের কাজটি বেছে নিয়েছে।
এ সম্পর্কে ভাবতে ভাবতে আমি খুব খুশি sudo mysql -u root -p
তাই আমি আবার ফিরে যাচ্ছি, তবে আমি ভেবেছিলাম যে আমি অন্য কোথাও খুঁজে পাচ্ছি না বলে আমার সমাধান পোস্ট করব।