আমি ম্যাজেন্টো ইনস্টল করার চেষ্টা করেছি, কিন্তু যখন আমি ব্রাউজার থেকে ম্যাজেন্টো ইনস্টল করার চেষ্টা করছি তখন এটি ম্যাজেন্টো ইনস্টলেশনের সময় " ডাটাবেস সংযোগ ত্রুটি " দেখায় ।
আমি ম্যাজেন্টো ইনস্টল করার চেষ্টা করেছি, কিন্তু যখন আমি ব্রাউজার থেকে ম্যাজেন্টো ইনস্টল করার চেষ্টা করছি তখন এটি ম্যাজেন্টো ইনস্টলেশনের সময় " ডাটাবেস সংযোগ ত্রুটি " দেখায় ।
উত্তর:
প্রথমত, আপনার ডাটাবেস ব্যবহারকারীর নাম এবং পাসওয়ার্ড পরীক্ষা করুন। আপনি এই পদক্ষেপে এগিয়ে যাওয়ার আগে আপনার মাইএসকিউএলে ইতিমধ্যে ডাটাবেস সেট আপ করা উচিত ছিল। আপনাকে একটি ব্যবহারকারী তৈরি করতে হবে এবং সেই ব্যবহারকারীর অ্যাক্সেসের সুযোগসুবিধা প্রদান করতে হবে।
তারপরে আপনার মাইএসকিউএল সার্ভারের কনফিগারেশনটি পরীক্ষা করুন। ডিফল্ট পোর্ট নম্বর 3306 However তবে আপনার সিস্টেম অ্যাডমিন এটিকে অন্য কোনও কিছুতে পরিবর্তন করতে পারে। অথবা আপনি যদি এমএএমপি / ডাব্লুএএমপি এর মতো সফ্টওয়্যার প্যাকেজ ব্যবহার করছেন তবে পোর্ট নম্বরটি 3306 ব্যতীত অন্য কোনওটিতে সেট করা যেতে পারে these
যদি এই সমস্ত সঠিক হয় এবং আপনার এখনও ডাটাবেস সংযোগ ত্রুটি রয়েছে, আপনি ডাটাবেস অ্যাক্সেস করতে রুট অ্যাকাউন্ট ব্যবহার করার চেষ্টা করতে পারেন। যদি রুটটি কাজ করে তবে এর অর্থ আপনার মাইএসকিউএল সেটিংসে সুবিধাগুলি নিয়ে সমস্যা রয়েছে। যদিও এটি ভবিষ্যতে উত্পাদন স্থাপনার জন্য রুট অ্যাকাউন্ট ব্যবহার করার পরামর্শ দেওয়া হয় না কারণ এটি সার্ভারে সুরক্ষা ঝুঁকি যুক্ত করে।
এটি বেশ পুরানো প্রশ্ন তবে আমি সম্প্রতি এটি পেরিয়ে এসেছি এবং আশা করি এই উত্তরটি অন্য কাউকে সাহায্য করবে। আমার ইস্যুটি নতুন ডাব্লুএএমএপি ইনস্টলেশনের শীর্ষে ম্যাজেন্টোর একটি পুরানো সংস্করণে নেমে এসেছে। মাইএসকিউএল 5.6.1 থেকে, have_innodb ভেরিয়েবলটি সরানো হয়েছে। তবে ম্যাজেন্টো ইনস্টলার সেই পরিবর্তনশীলটির জন্য পরীক্ষা করে এবং এটি খুঁজে না পেলে একটি ত্রুটি নিক্ষেপ করে। আপনি যদি ব্যতিক্রম লগটি চেক করেন তবে আপনি এমন একটি ত্রুটি দেখতে পাবেন যা ডাটাবেস সার্ভার InnoDB সমর্থন করে না। তবুও ক্যাচ হ্যান্ডলারটিতে এটি কেবল ব্যতিক্রম লগ করে এবং একটি জেনেরিক "ডেটাবেস সংযোগ ত্রুটি" বার্তা ছুড়ে দেয়।
সবচেয়ে সহজ ফিক্স, আপনি যদি নিশ্চিত হন যে আপনার ডিবি ইনোডিবি সমর্থন করে তবে তা হ'ল সহজভাবে সম্পাদনা করা app\code\core\Mage\Install\Model\Installer\Db.php
, checkDatabase
পদ্ধতিটি সন্ধান করা এবং চেষ্টা করা ব্লকটির শেষে অংশটি মন্তব্য করে যা পরীক্ষা করে have_innodb
। সাধারণত, আমি মূল ফাইলগুলি সম্পাদনা করার পক্ষে পরামর্শ দেব না, তবে এটি কেবল ইনস্টলারটি কাজ করার জন্য, সুতরাং আমি বলতে পারি এটি যথেষ্ট নিরাপদ।
প্রথমে একটি ডিবি তৈরি করুন http://localhost/phpmyadmin
ধরা যাক ডিবি নাম: টেস্টডিবি
কনফিগারেশন পৃষ্ঠার ডিবি নাম: টেস্টডিবি ব্যবহারকারীর নাম: মূল পাসওয়ার্ড: খালি (কোনও মান প্রবেশ করবেন না)
app/code/core/Mage/Install/Model/Installer/Db.php
checkDatabase($data)
ফাংশনএই ফাংশনটির শেষে, নিম্নলিখিত কোড রয়েছে:
Mage::throwException(Mage::helper('install')->__('Database connection error.'));
এটি নিম্নলিখিতটিতে পরিবর্তন করুন:
Mage::throwException(Mage::helper('install')->__($e->getMessage()));
আপনার ব্রাউজারে যান, যেখানে আপনি ম্যাজেন্টো ইনস্টল করছেন, Continue
বোতামটি ক্লিক করুন
আমার ক্ষেত্রে, আমি নিম্নলিখিত ত্রুটি বার্তা পেয়েছি:
ডাটাবেস সার্ভার InnoDB স্টোরেজ ইঞ্জিন সমর্থন করে না।
সুতরাং, এটি সমাধান করতে, আমি একই ফাংশনটিতে InnoDB চেক মন্তব্য করেছি checkDatabase
।
// check InnoDB support
/*if (!isset($variables['have_innodb']) || $variables['have_innodb'] != 'YES') {
Mage::throwException(Mage::helper('install')->__('Database server does not support the InnoDB storage engine.'));
}*/
এর পরে, আমি ম্যাজেন্টো ইনস্টল করতে সক্ষম হয়েছি।
এটি কোন ধরণের ডাটাবেস সংযোগ ত্রুটি সম্পর্কে আরও বিশদ জানতে বা ব্যবহারকারীর নাম এবং পাসওয়ার্ড সঠিক কিনা তা পরীক্ষা করতে আপনি এই কোডটি ব্যবহার করার চেষ্টা করতে পারেন
<?php
$mysqli=mysqli_connect("host","user","password","database name");
if(mysqli_connect_errno()){
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}else{
echo "Connection succesfull!";
}
?>
এই স্ক্রিপ্টটি পিএইচপি ফাইল হিসাবে সংরক্ষণ করুন এবং এটি সার্ভারে রেখে দিন। আউটপুটটি সংযোগ ত্রুটি হবে, বা কোনও ত্রুটি না হলে আউটপুট হবে "সংযোগ সফল!"। "হোস্ট" - আপনি এখানে "লোকালহোস্ট", "ব্যবহারকারী" লিখতে পারেন - এখানে আপনাকে অবশ্যই ডাটাবেস ব্যবহারকারীর নাম, "পাসওয়ার্ড" লিখতে হবে - এখানে আপনাকে অবশ্যই ডাটাবেস পাসওয়ার্ড, "ডাটাবেস নাম" লিখতে হবে - এখানে আপনাকে অবশ্যই ডাটাবেসের নাম লিখতে হবে।