با سلام، خیلی سریع و بدون مقدمه این آمزوش رو پیش میرم، آموزش نصب phpmyadmin روی سرور لینوکسی (اوبونتو).
پیش نیاز های آموزش:
- ابونتو سرور (من روی نسخه ۲۰.۰۴ (اوبونتو فوکال) این آموزش رو پیش رفتم)
- نصب و کانف بودن LAMP (Linux, Apache, MySQL, and PHP)
قدم نخست – نصب phpMyadmin
خب از APT برای نصب phpMyadmin از رپوزیتوری های پیشفرض اوبونتو استفاده می کنیم.
sudo apt update
اگر LAMP را نصب کرده باشید احتمالا یه تعداد از پیش نیاز های نصب phpMyadmin را نصب کرده اید، ولی بنا بر احتیاط، پکیج های زیر را نصب کنید.
sudo apt install phpmyadmin php-mbstring php-zip php-gd php-json php-curl
خب بعد از شروع به نصب phpMyadmin یک صفحه ای نمایش داده می شود که به صورت پیش فرض apache2 انتخاب شده، فقط توجه داشته باشید حتما روی apache2 بروید و space را بزنید تا انتخاب شود و سپس enter را بزنید.
صفحه ی dbconfig-common
که نمایش داده شد، حتما yes را بزنید.
سپس از شما رمز عبور برای phpMyadminخواهد خواست.
نکته، اگر پس از ورود رمز عبور، phpMyadmin اروری مشابه تصویر زیر نشون داد، abort کنید.
اما دلیل ارور فوق چیست، موقع نصب MySQL احتمال قوی Validate Password plugin را فعال کرده اید. همین افزونه می تواند منجر به ارور فقو شود و در واقع نمی تواند پسوورد برای کاربر phpMyadmin انتخاب کند.
خب برای حل این قضیه همان طور که گفتم، abort را بزنید، سپس وارد mysql شود:
sudo mysql
یا اگر ورود با رمزعبور را برای root فراهم کرده اید، دستور زیر را اجرا کرده و رمز عبور را وارد کنید:
mysql -u root -p
حال داخل mysql دستور زیر را برای غیرفعال کردن Validate Password component استفاده کنید.
mysql> UNINSTALL COMPONENT "file://component_validate_password";
حال از mysql خارج شوید:
mysql> exit
حال مجدد اقدام به نصب phpMyadmin کنید:
sudo apt install phpmyadmin
همین که phpMyadmin نصب شد، می توانید مجدد “file://component_validate_password”; فعال کنید.
mysql> INSTALL COMPONENT "file://component_validate_password";
برای تمام کردن فرایند کانفیگ آپاچی و پی اچ پی جهت کار با phpMyadmin ، تنها کار باقیمانده، فعال کردن mbstring
می باشد.
sudo phpenmod mbstring
سپس نوبت به ری استارت آپاچی می رسد:
sudo systemctl restart apache2
کانفیگ دسترسی با رمزعبور برای اکانت root مای اسکیو ال:
برای ورود به mySql دستور زیر را بزنید:
sudo mysql
حال با استفاده از دستور زیر، بررسی کنید که چه روش های authentication برای هر کاربر MySQL وجود دارد:
mysql> SELECT user,authentication_string,plugin,host FROM mysql.user;
خروجی :
+------------------+-------------------------------------------+-----------------------+-----------+ | user | authentication_string | plugin | host | +------------------+-------------------------------------------+-----------------------+-----------+ | root | | auth_socket | localhost | | mysql.session | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | caching_sha2_password | localhost | | mysql.sys | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | caching_sha2_password | localhost | | debian-sys-maint | *8486437DE5F65ADC4A4B001CA591363B64746D4C | caching_sha2_password | localhost | | phpmyadmin | *5FD2B7524254B7F81B32873B1EA6D681503A5CA9 | caching_sha2_password | localhost | +------------------+-------------------------------------------+-----------------------+-----------+ 5 rows in set (0.00 sec)
برای تعیین رمز root از دستور زیر استفاده کنید:
ALTER USER 'root'@'localhost' IDENTIFIED WITH caching_sha2_password BY 'password';
حال مجدد متد های authenticationا بررسی کنید تا مطمین شوید که کاربر root به صورت auth_socket
نباشد.
نکته: توجه داشته باشید که پلاگین caching_sha2_password
پلاگین جدید پیشنهادی MySQLمی باشد و انکریپت امن تری را برای رمزعبور نسبت به پلاگین های قبلی ایجاد می کند. اگرچه بعضی از نسخه های PHP به صورت مطمین با caching_sha2_password
کار نمی کنند، البته PHPگزارش داده که از نمسخه ۷.۴ این مشکل را حل کرده، منتهی می توانید بجایcaching_sha2_password
از mysql_native_password
استفاده کرد.
حال با آدرس زیر به phpMyadmin دسترسی خواهید داشت:
http://your_domain_or_IP/phpmyadmin
اگر با آدرس فوق دسترسی نداشتید، ابتدا فایل apache2.conf را با دستور زیر ویرایش کنید:
sudo nano /etc/apache2/apache2.conf
در انتهای فایل، خط زیر را اضافه کنید:
Include /etc/phpmyadmin/apache.conf
حال apache را ری استارت کنید:
sudo systemctl restart apache2
ایا ازین اموزش در کنار انجینکس هم میشه استفاده کرد؟؟
منظورتون رو کامل متوجه نشدم، در کنار انجینیکس میتونید نصب کنید و مشکلی در کل با همدیگه ندارند و دسترسیش جدا زا nginixمیاد بالا، اگر منظورتون دسترسی بهش از طریق انجینیکس باشه که باید براش بلاک سرور تعریف کنید
سلام و عرض خسته نباشید
یه دنیا ممنون بابت این مقاله هر کاری میکردم درست نمیشد کارتون عالیه
سلام، خداروشکر که مفید بود:) موفق باشی آقا یونس
فقط یه سوال
مثل wamp که پوشه www داشت حالا واسه lamp هم همینجوریه؟
بله مشابه هستند