اگر با نرم افزار XAMPP سروکار داشته باشید قطعا حداقل یکبار در اجرای آن به خطا برخورده اید. و یا اگر این طور نباشد در آینده این اتفاق خواهد افتاد. برای حل این مشکلات راه حل های بسیار ساده ای وجود دارد که در ادامه به بررسی آنها خواهیم پرداخت.
XAMPP چیست؟
XAMPP یک بسته نرمافزاری است که برای سهولت در نصب و پیکربندی محیط توسعه وب بر روی کامپیوترها استفاده میشود. این بسته شامل چندین نرمافزار است که برای توسعه و اجرای وبسایتها و برنامههای وب استفاده میشود. نام XAMPP از اولین حرفهای Apache، MySQL، PHP و Perl گرفته شده است که همگی اجزای این بسته هستند. استفاده از XAMPP به توسعهدهندگان وب کمک میکند تا بدون نیاز به نصب و پیکربندی جداگانه این نرمافزارها، به راحتی وبسایتها و برنامههای خود را توسعه و تست کنند.
اگر به تازگی یادگیری وردپرس را شروع کرده باشید احتمالا تهیه یک هاست و دامنه واقعی برای شما چندان صرف اقتصادی نداشته باشد و بخواهید در ابتدا یک سرور محلی روی سیستم خود داشته باشید. اما برای استفاده از هر ابزاری باید راه های رفع خطاهای احتمالی را نیز بدانید.
رفع خطای MySQL در XAMPP
یکی از رایج ترین مشکلات، خطای استارت شدن پایگاه داده MySQL میباشد اما این مشکل عموما به دو دلیل رخ میدهد:
- خطا در بارگذاری فایل های پوشه Data.
- اشغال بودن پورت پیشفرض اجرای پایگاه داده.
پورت پیشفرض پایگاه داده در زمپ پورت 3306 است و این پورت معمولا توسط نرم افزار های دیگر اشغال نمیشود. تنها برخی از نرم افزار های مدیریت دیتابیس و پایگاه داده از جمله MySQL از آن استفاده میکند پس اگر با نرم افزار های مدیریت پایگاه داده دیگری سروکار نداشته باشید و تنها از زمپ استفاده میکنید احتمالا مشکل شما با راه حل اول حل خواهد شد.
راه حل اول:
برای اطمینان بیشتر از این که مشکل شما مربوط به پوشه Data برنامه است روی دکمه Logs در جلوی MySQL کلیک کنید و با باز کردن فایل mysql_error در نوت پد، به انتهای آن رفته و آخرین خطاها را مشاهده کنید.
اگر با همچین عبارتی مواجه شدید میتوانید مطمئن باشید که مشکل شما با استفاده از این راه حل به خوبی برطرف میشود
برای حل آن مراحل زیر را دنبال کنید.
- ابتدا همه سرویس های زمپ را stop کرده و آن را به طور کامل ببندید(فراموش نکنید اجرای آن را در پس زمینه هم متوقف کنید)
- به مسیر نصب زمپ بروید و پوشه پایگاه داده خود را را باز کنید. مسیر پیشفرض در صورتی که موقع نصب آن را تغییر نداده باشید این مسیر است. C:\xampp\mysql
- در این پوشه یک پوشه با نام data وجود دارد، نام آن را به data-old یا هر نام دیگری که خواستید تغییر دهید چون قرار است مجدد پوشه data را خودمان بسازیم.
- پوشه جدیدی بسازید و نام آن را data قرار دهید.
- یک پوشه دیگر به نام backup وجود دارد. آن را باز کنید و تمام محتویات آن را در پوشه data جدید کپی کنید
- در پوشه data-old فقط همه پوشه هایی که وجود دارد را به جز این چهار پوشه mysql, test, performance_schema و phpmyadmin کپی کرده و در پوشه data که خودتان ساختید Paste کنید.
- مجددا به پوشه data-old برگردید و فایل ibdata1 را هم کپی کرده و در پوشه data بریزید(توجه کنید که فعلا تا از اجرای صحیح پایگاه داده مطمئن نشدید هیچ کدام فایل ها و پوشه ها را از مسیر قبلی خود حذف یا cut نکنید)
- معمولا در این مرحله باید مشکل شما حل شده باشد و میتوانید برنامه زمپ را اجرا کرده و سرویس های خود را استارت کنید اما برای اطمینان بهتر است قبل از اجرای آن یکبار سیستم خود را ری استارت کنید.
مشکل پورت MySql در Xampp
اگر فکر میکنید مشکل شما از فایل های Data نیست پس احتمالا به هر دلیلی پورت مورد استفاده برای پایگاه داده شما اشغال شده. در ابتدا به این موضوع اشاره کردیم که پورت پیشفرض 3306 است و برای این که سرویس شما بتواند شروع به کار کنم باید این پورت از قبل اشغال نشده باشد. پس برای حل مشکل باید برنامه ای که آن را اشغال کرده پیدا کرده و آن را آزاد کنید.
اما اصولا در بیشتر مواقع به هر دلیلی امکان آزاد سازی آن برای شما وجود ندارد و میتوانید به جای این کار پورت پیشفرض MySQL را تغییر دهید.
برای انجام این کار مراحل زیر را دنبال کنید.
- با کلیک بر روی گزینه config در جلوی سرویس Apache، فایل PHP(php.ini) را در نوت پد باز کنید
- با زدن دکمه ترکیبی Ctrl + F کادر جستجو را باز کرده و عدد 3306 را در آن جستجو کنید.
- در کل فایل هرجا این عدد استفاده شده بود را به عدد 3307 تغییر دهید و آن را ذخیره کرده و ببندید.
- این بار با زدن دکمه config در جلوی سرویس MySQL فایل my.ini را باز کرده و درست مثل فایل قبلی تمام اعداد 3306 را با 3307 جایگزین کنید.
- زمپ را کاملا ببندید و سیستم خود را ری استارت کنید. اکنون باید بتوانید زمپ و سرویس پایگاه داده آن را را بدون مشکل اجرا کنید.
در صورتی که هیچ کدام این راه حل ها جواب نداد ممکن است مجبور باشید برنامه را به کلی حذف نصب کرده و مجددا نصب کنید.