যেহেতু উপরের উত্তরের কোনও উত্তরই আসলে কী ঘটেছে তা ব্যাখ্যা করে না, তাই আমি সিদ্ধান্ত নিয়েছি এবং এই বিষয়ে আরও কিছু বিবরণ আনব।
হ্যাঁ, সমাধানটি মাইএসকিউএল আপগ্রেড কমান্ডটি নিম্নরূপে চালানো: mysql_upgrade -u root -p --forceতবে কী হয়েছে?
এই ইস্যুটির মূল কারণ হ'ল দুর্নীতি performance_schema, যা হতে পারে:
- জৈব দুর্নীতি (ভলিউম যাচ্ছে কাবুম, ইঞ্জিন বাগ, কার্নেল ড্রাইভারের সমস্যা ইত্যাদি)
- মাইএসকিএল প্যাচ চলাকালীন দুর্নীতি (বিশেষত প্রধান সংস্করণ আপগ্রেডের জন্য মাইএসকিএল প্যাচ চলাকালীন এটি হওয়া শোনা যায় না)
- একটি সাধারণ "ড্রপ ডাটাবেস কর্মক্ষমতা_সেমিমা" স্পষ্টতই এই সমস্যার কারণ হবে এবং এটি একই লক্ষণগুলি উপস্থাপন করবে যেমন এটি দূষিত হয়েছে if
এই সমস্যা এমনকি প্যাচ করার আগে আপনার ডাটাবেসের উপস্থিত হয়েছে হতে পারে, কিন্তু কি মাইএসকিউএল 5.7.8 উপর ঘটেছে বিশেষভাবে যে পতাকা show_compatibility_56পরিণত হওয়া থেকে তার ডিফল্ট মান পরিবর্তন ONকরতে ডিফল্টরূপে, OFF। এই পতাকাটি বিভিন্ন মাইএসকিউএল ভার্সনে ভেরিয়েবল (সেশন এবং গ্লোবাল) নির্ধারণ এবং পড়ার প্রশ্নের জন্য ইঞ্জিনটি কীভাবে আচরণ করে তা নিয়ন্ত্রণ করে।
মাইএসকিউএল ৫.7+ এর performance_schemaপরিবর্তে এই পরিবর্তনগুলি পড়তে এবং সঞ্চয় করতে শুরু করেছে information_schema, ONএই পরিবর্তনের বিস্ফোরণ ব্যাসার্ধ হ্রাস করতে এবং ব্যবহারকারীদের পরিবর্তনের বিষয়ে জানাতে এবং এটির সাথে অভ্যস্ত হওয়ার জন্য এই পতাকাটি প্রথম প্রকাশিত হিসাবে প্রকাশিত হয়েছিল।
ঠিক আছে, তবে সংযোগ কেন ব্যর্থ হয়? কারণ আপনি যে ড্রাইভারটি ব্যবহার করছেন (এবং এটির কনফিগারেশন) তার উপর নির্ভর করে এটি ডাটাবেসে শুরু হওয়া প্রতিটি নতুন সংযোগের জন্য চলমান কমান্ডের সমাপ্ত হতে পারে (যেমন show variables, উদাহরণস্বরূপ)। কারণ এই কমান্ডগুলির মধ্যে একটি দুর্নীতিগ্রস্থ অ্যাক্সেস করার চেষ্টা করতে পারে performance_schema, সম্পূর্ণ সংযোগ পুরোপুরি শুরুর আগেই বাতিল হয়ে যায়।
সুতরাং, সারসংক্ষেপ, আপনি পারে ছিল (এটা অসম্ভব এখন বলতে থাকবে) performance_schemaহয় অনুপস্থিত বা প্যাচিং সামনে ক্ষতিগ্রস্ত হয়েছে। প্যাচটি .8.7.৮ এর পরে ইঞ্জিনটিকে আপনার ভেরিয়েবলগুলি পড়ার জন্য বাধ্য করেছিল performance_schema(পরিবর্তে information_schema, যেখানে পতাকাটি সরে যাওয়ার কারণে এটি এটি পড়ছিল ON)। যেহেতু performance_schemaদূষিত হয়েছিল, সংযোগগুলি ব্যর্থ হচ্ছে।
ডাউনটাইম সত্ত্বেও মাইএসকিউএল আপগ্রেড চালানো সবচেয়ে ভাল পন্থা। পতাকাটি চালু করা একটি বিকল্প, তবে এটি ইতিমধ্যে এই থ্রেডটিতে নির্দেশিত হওয়ায় এটির নিজস্ব প্রভাবগুলির সেট নিয়ে আসে।
উভয়ই কাজ করা উচিত, তবে পরিণতিগুলি বিবেচনা করুন এবং আপনার পছন্দগুলি জানেন :)
5.7.8-rcসংস্করণ এবং ডিবি সম্পূর্ণ ব্যাকআপ থেকে পুনরুদ্ধার করার বিষয়টি বিবেচনা করতে চাইতে পারেন ।