https://dev.mysql.com/doc/refman/8.0/en/sha256-pluggable-authentication.html
ΠΠ·ΠΌΠ΅Π½ΠΈΡΡ: ΠΎΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° caching_sha2_password
ΡΠΆΠ΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π°. Π‘ΠΌ. β 794.
ΠΠΎΡ ΠΎΠΆΠ΅, ΡΡΠΎ ΠΎΡΠ½ΠΎΡΠΈΡΡΡ ΠΊ # 552, ΠΈ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΡΠΎΠ³ΠΎ, Π±ΡΠ΄Π΅Ρ Π»ΠΈ ΠΎΠ½ΠΎ ΠΏΡΠΈΠ½ΡΡΠΎ ΠΈΠ»ΠΈ Π½Π΅Ρ.
Π Π°Π½Π΅Π΅ Ρ ΡΠ΄Π΅Π»Π°Π» ΠΏΠ°ΡΡ, ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΠΈΠΉ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΈ Π½Π° ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠΉ ΠΏΠ°ΡΠΎΠ»Ρ (sha1), ΠΈ Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎ Π³ΠΎΠ»ΠΎΡΡΡ Π·Π° ΡΠΎ, ΡΡΠΎΠ±Ρ ΠΌΡ Π½Π°ΡΠ°Π»ΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ sha256 ΡΠ΅ΠΉΡΠ°Ρ.
ΠΡΠΎΡΡΠΎ Π΄ΡΡΠΆΠ΅ΡΠΊΠΎΠ΅ Π·Π°ΠΌΠ΅ΡΠ°Π½ΠΈΠ΅, ΡΡΠΎ Π² MySQL 8.0.4-rc ΠΏΠΎΡΠ²ΠΈΠ»ΡΡ Π½ΠΎΠ²ΡΠΉ ΡΡΠ°Π½Π΄Π°ΡΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π΄Π»Ρ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ: caching_sha2_password ΡΠ΅ΠΏΠ΅ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΏΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ.
ΠΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΠ»Π°Π³ΠΈΠ½ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ, ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌΡΠΉ go-sql-driver / mysql, Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΠ·Π΄Π°ΡΡ / ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ, ΡΡΠΎΠ±Ρ ΠΎΠ½ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈ Π΄ΡΡΠ³ΠΎΠ³ΠΎ.
Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΎΠ±Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡΡΠΈ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΠ»Π°Π³ΠΈΠ½ MySQL Native Password:
ALTER USER 'youruser'@'%' IDENTIFIED WITH 'mysql_native_password' BY 'secret';
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΡΠ²Π½ΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ allowNativePasswords = True Π² DSN.
(Π― ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π» ΠΏΠ»Π°Π³ΠΈΠ½Ρ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ Π² MySQL Connector / Python, Ρ Π·Π½Π°Ρ Π±ΠΎΠ»Ρ)
ΠΠ΄ΡΠ°Π²ΡΡΠ²ΡΠΉΡΠ΅, Π΅ΡΠ»ΠΈ Π²Π°ΠΌ Π½ΡΠΆΠ½Π° ΠΏΠΎΠΌΠΎΡΡ, ΠΈΠ½ΠΆΠ΅Π½Π΅ΡΡ MySQL, ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΠ΅ Π½Π°Π΄ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°Π΅ΠΌΡΠΌΠΈ ΠΌΠΎΠ΄ΡΠ»ΡΠΌΠΈ ΠΈ ΠΊΠΎΠ½Π½Π΅ΠΊΡΠΎΡΠ°ΠΌΠΈ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ, Π±ΡΠ΄ΡΡ ΡΠ°Π΄Ρ Π²Π°ΠΌ ΠΏΠΎΠΌΠΎΡΡ. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ²ΡΠ·Π°ΡΡΡΡ Ρ Π½Π°ΠΌΠΈ ΡΠ΅ΡΠ΅Π· MySQL Community Slack (http://lefred.be/mysql-community-on-slack/). Π‘ΠΎΡ
ΡΠ°Π½ΡΠΉΡΠ΅ Ρ
ΠΎΡΠΎΡΡΡ ΡΠ°Π±ΠΎΡΡ!
ΠΠ°ΡΠ΅ Π·Π΄ΠΎΡΠΎΠ²ΡΠ΅,
Π‘Π°ΠΌΡΠΉ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ
ΠΡΠΎΡΡΠΎ Π΄ΡΡΠΆΠ΅ΡΠΊΠΎΠ΅ Π·Π°ΠΌΠ΅ΡΠ°Π½ΠΈΠ΅, ΡΡΠΎ Π² MySQL 8.0.4-rc ΠΏΠΎΡΠ²ΠΈΠ»ΡΡ Π½ΠΎΠ²ΡΠΉ ΡΡΠ°Π½Π΄Π°ΡΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π΄Π»Ρ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ: caching_sha2_password ΡΠ΅ΠΏΠ΅ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΏΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ.
ΠΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΠ»Π°Π³ΠΈΠ½ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ, ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌΡΠΉ go-sql-driver / mysql, Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΠ·Π΄Π°ΡΡ / ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ, ΡΡΠΎΠ±Ρ ΠΎΠ½ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈ Π΄ΡΡΠ³ΠΎΠ³ΠΎ.
Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΎΠ±Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡΡΠΈ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΠ»Π°Π³ΠΈΠ½ MySQL Native Password:
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΡΠ²Π½ΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ allowNativePasswords = True Π² DSN.
(Π― ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π» ΠΏΠ»Π°Π³ΠΈΠ½Ρ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ Π² MySQL Connector / Python, Ρ Π·Π½Π°Ρ Π±ΠΎΠ»Ρ)