ฉันมีเงินช่วยเหลือต่อไปนี้สำหรับผู้ใช้ / ฐานข้อมูล
mysql> SHOW GRANTS FOR 'username'@'localhost';
+---------------------------------------------------------------------------+
| Grants for username@localhost                                             |
+---------------------------------------------------------------------------+
| GRANT USAGE ON *.* TO 'username'@'localhost' IDENTIFIED BY PASSWORD 'xxx' |
| GRANT ALL PRIVILEGES ON `userdb`.* TO 'username'@'localhost'              |
+---------------------------------------------------------------------------+
เพื่อให้สามารถเข้าถึงภายนอกไปยังฐานข้อมูลที่ฉันจำเป็นต้องเปลี่ยนแปลง localhost %ไป วิธีหนึ่งในการทำเช่นนี้คือการREVOKEอนุญาตทั้งหมดและตั้งค่าอีกครั้ง ปัญหาคือมีชุดรหัสผ่านที่ฉันไม่ทราบดังนั้นหากฉันเพิกถอนการอนุญาตฉันไม่สามารถตั้งค่ากลับคืนได้
มีวิธีการเปลี่ยนชื่อโฮสต์localhostเป็น%(และกลับมาอีกครั้ง) โดยไม่เพิกถอนสิทธิ์หรือไม่
mysqlเดตuserSETHost= 'localhost'userWHEREHost= '%'userและUser= 'XXXdbusr';