แค่ 2 เซ็นต์ของฉันในเรื่อง ฉันมีปัญหาเดียวกันกับการพยายามเชื่อมต่อจาก MySQL Workbench ฉันใช้เครื่องเสมือน bitnami-mysql เพื่อตั้งค่าแซนด์บ็อกซ์ในเครื่องสำหรับการพัฒนา
บทช่วยสอนของ Bitnami กล่าวว่าให้เรียกใช้คำสั่ง 'Grant All Privileges':
/opt/bitnami/mysql/bin/mysql -u root -p -e "grant all privileges on *.* to 'root'@'%' identified by 'PASSWORD' with grant option";
สิ่งนี้ไม่ได้ผลอย่างชัดเจนในที่สุดฉันก็ใช้งานได้โดยใช้คำตอบของ Mike Lischke
สิ่งที่ฉันคิดว่าเกิดขึ้นคือผู้ใช้ root @% มีข้อมูลประจำตัวที่เชื่อมโยงไม่ถูกต้อง ดังนั้นหากคุณได้พยายามแก้ไขสิทธิ์ของผู้ใช้และไม่ต้องเสี่ยงโชคลอง:
- การทิ้งผู้ใช้
- สร้างผู้ใช้อีกครั้ง
- ตรวจสอบให้แน่ใจว่าคุณมีการผูกที่ถูกต้องในไฟล์ config my.cnf ของคุณ ในกรณีของฉันฉันได้แสดงความคิดเห็นในบรรทัดเนื่องจากเป็นเพียงสำหรับสภาพแวดล้อมแซนด์บ็อกซ์
จากคอนโซล Mysql:
รายชื่อผู้ใช้ (มีประโยชน์ในการดูผู้ใช้ทั้งหมดของคุณ):
select user, host from mysql.user;
วางผู้ใช้ที่ต้องการ:
drop user '{{ username }}'@'%';
สร้างผู้ใช้และให้สิทธิ์:
CREATE USER '{{ username }}'@'%' IDENTIFIED BY '{{ password }}';
GRANT ALL PRIVILEGES ON *.* TO '{{ username }}'@'%' WITH GRANT OPTION;
เรียกใช้คำสั่งนี้:
FLUSH PRIVILEGES;
ค้นหาไฟล์ config mysql 'my.cnf' และมองหาบรรทัดที่มีลักษณะดังนี้:
bind-address=127.0.0.1
และแสดงความคิดเห็นโดยใช้ "#":
จากนั้นเริ่มบริการ mysql ของคุณใหม่
หวังว่านี่จะช่วยคนที่มีปัญหาเดียวกัน!