ตกลงเสียเวลามากกับเรื่องนี้ดังนั้นนี่คือบทสรุป ณวันที่ 19 มีนาคม 2019
หากคุณพยายามใช้ภาพ Docker โดยเฉพาะกับMySql 8+จากนั้นใช้SequelProเพื่อเข้าถึงฐานข้อมูลของคุณที่เรียกใช้บนคอนเทนเนอร์นักเทียบท่านั้นแสดงว่าคุณโชคไม่ดี
ดูที่ปัญหา sequelpro 2699
การตั้งค่าของฉันคือ sequelpro 1.1.2 โดยใช้ docker desktop 2.0.3.0 (mac - mojave) และลองใช้ mysql: ล่าสุด (v8.0.15)
ตามที่คนอื่น ๆ รายงานการใช้ mysql 5.7 ทำงานได้โดยไม่ต้องใช้อะไร
docker run -p 3306:3306 --name mysql1 -e MYSQL_ROOT_PASSWORD=secret -d mysql:5.7
แน่นอนว่าเป็นไปได้ที่จะใช้ MySql 8+ บนตัวเทียบท่าและในสถานการณ์นั้น (ถ้าจำเป็น) คำตอบอื่น ๆ ที่มีให้ที่นี่สำหรับcaching_sha2_password
ปัญหาประเภทใช้งานได้ แต่ผลที่ตามมาคือไม่ไปกับ MySql 8+
สุดท้ายผมทอดทิ้ง sequelpro (เพื่อนที่เชื่อถือได้จากด้านหลังใน 2013-2014) และติดตั้งแทนDBeaver ทุกอย่างทำงานนอกกรอบ สำหรับนักเทียบท่าฉันใช้:
docker run -p 3306:3306 --name mysql1 -e MYSQL_ROOT_PASSWORD=secret -d mysql:latest --default-authentication-plugin=mysql_native_password
คุณสามารถดูที่ฐานข้อมูล mysql ได้อย่างรวดเร็วโดยใช้:
docker exec -it mysql1 bash
mysql -u root -p
show databases;