วิธีการเปลี่ยนรหัสผ่านรูทสำหรับ mysql และ phpmyadmin


41

ฉันได้ตั้งค่า mysql และ phpmyadmin และเลือกที่จะไม่ตั้งรหัสผ่านเมื่อติดตั้งหวังว่าเมื่อตั้งค่าแล้วฉันสามารถเข้าสู่ระบบด้วย root และไม่มีรหัสผ่าน แต่ฉันได้รับข้อผิดพลาดจาก phpmyadmin:

Login without a password is forbidden by configuration (see AllowNoPassword)

ก่อนหน้านี้ฉันย้ายโฟลเดอร์ phpmyadmin ไปแล้ว /var/www/

ฉันลองเปลี่ยนบรรทัดต่อไปนี้

$cfg['Servers'][$i]['AllowNoPassword'] = false;

ไปยัง

$cfg['Servers'][$i]['AllowNoPassword'] = true;

แต่ก็ยังไม่ประสบความสำเร็จดังนั้นฉันสงสัยว่ามีวิธีที่ฉันสามารถเปลี่ยนรหัสผ่านรูทสำหรับทั้งสองดังนั้นฉันสามารถเข้าถึง phpmyadmin และสร้างฐานข้อมูล

คำตอบ:


59

คุณสามารถเปลี่ยนรหัสผ่านรูทของ mysql ได้โดยเข้าสู่ระบบฐานข้อมูลโดยตรง ( mysql -h your_host -u root) จากนั้นเรียกใช้

SET PASSWORD FOR root@localhost = PASSWORD('yourpassword');

phpmyadmin ควรใช้รหัสผ่านนั้นจึงไม่แน่ใจว่าคุณหมายถึง "ทั้งคู่" อย่างไร

ตรวจสอบให้แน่ใจว่าได้ตั้งรหัสผ่านใหม่เป็น phpmyadmin config.inc.phpด้วยเช่นกันที่บรรทัด

$ cfg ['เซิร์ฟเวอร์'] [$ i] ['รหัสผ่าน'] = 'yourpassword';
มิฉะนั้น phpmyadmin อาจไม่ทำงานโดยใช้เสียงสะท้อน

ปฏิเสธการเข้าถึงสำหรับผู้ใช้ 'user' @ 'localhost' (ใช้รหัสผ่าน: YES)

1
ขอบคุณฉันไม่แน่ใจถ้าฉันต้องตั้งรหัสผ่านสำหรับทั้งคู่เพราะฉันเคยใช้ WAMP ในอดีตเท่านั้น
Jon

ฉันจะหา config.inc.php ได้ที่ไหน
Hrvoje T

2
ตกลงฉันพบแล้ว แต่ไม่มีบรรทัด `$ cfg ['เซิร์ฟเวอร์'] [$ i] ['รหัสผ่าน'] = 'yourpassword';
Hrvoje T

1
โดยทั่วไปแล้ว config.inc.php จะอยู่ใน /etc/phpmyadmin/config.inc.php
Jostino

27

ขึ้นอยู่กับการกำหนดค่าของคุณ ทำตามคำแนะนำด้านล่างเพื่อกำหนดค่า phpmyadmin ใหม่และรีเซ็ตรหัสผ่าน MySQL

  1. Ctrl + Alt + T เพื่อเรียกใช้เทอร์มินัล
  2. sudo dpkg-reconfigure phpmyadmin
  3. วิธีการเชื่อมต่อสำหรับฐานข้อมูล MySQL สำหรับ phpmyadmin: unix socket
  4. ชื่อผู้ใช้การบริหารฐานข้อมูล: root
  5. รหัสผ่านของผู้ใช้ที่เป็นผู้ดูแลระบบฐานข้อมูล: mysqlsamplepassword
  6. ชื่อผู้ใช้ MySQL สำหรับ phpmyadmin: root
  7. ชื่อฐานข้อมูล MySQL สำหรับ phpmyadmin: phpmyadmin
  8. เว็บเซิร์ฟเวอร์เพื่อกำหนดค่าใหม่โดยอัตโนมัติ: apache2
  9. ข้อผิดพลาด 1,045
  10. ไม่สนใจ
  11. sudo dpkg-reconfigure mysql-server-5.5
  12. รหัสผ่านใหม่สำหรับผู้ใช้ "root" ของ MySQL: mysqlsamplepassword
  13. ทำซ้ำรหัสผ่านสำหรับผู้ใช้ "root" ของ MySQL: mysqlsamplepassword
  14. หลังจากทั้งหมดนี้เรียกใช้คำสั่งต่อไปนี้ใน terminal เพื่อความปลอดภัยเซิร์ฟเวอร์ mysql ของคุณ sudo mysql_secure_installation

  15. ป้อนรหัสผ่านปัจจุบันสำหรับรูท (ป้อนไม่ได้): mysqlsamplepassword

  16. เปลี่ยนรหัสผ่านรูทหรือไม่ [Y / n] n
  17. ลบผู้ใช้ที่ไม่ระบุชื่อหรือไม่ [Y / n] y
  18. ไม่อนุญาตให้ล็อกอินรูทจากระยะไกล [Y / n] y
  19. ลบฐานข้อมูลทดสอบและเข้าถึงหรือไม่ [Y / n] y
  20. โหลดตารางสิทธิ์เดี๋ยวนี้หรือไม่ [Y / n] y

หวังว่าจะช่วย!

ขอให้มีความสุขมาก ๆ ในวันนี้!


สามารถเปลี่ยนรหัสผ่าน MySQL ได้sudo mysql_secure_installationเช่นกัน
2513149

12

ฉันเพิ่งเจอปัญหาเดียวกันนี้กับ Ubuntu 12.04 ฉันดูเหมือนไม่สามารถลงชื่อเข้าใช้ด้วยรูทและไม่มีรหัสผ่าน ฉันตั้งค่าการตั้งค่า AllowNoPassword เป็น TRUE ในการกำหนดค่า ต่อมาฉันพบว่าฉันแก้ไขไฟล์ config.inc.php ผิดเพื่อเพิ่มการตั้งค่า AllowNoPassword

Edit:
/etc/phpmyadmin/config.inc.php
Not:
/usr/share/phpmyadmin/config.inc.php

ผมเชื่อว่าอันแรกคือไฟล์ปรับแต่งโลคอลเดเบียนซึ่งจะแทนที่เวอร์ชั่น usr

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.