вы должны предоставить указанному пользователю привилегию для доступа с определенного IP-адреса, например:
GRANT [привилегии | ВСЕ ПРИВИЛЕГИИ] НА schema.table TO 'username' @ 'hostname' IDENTIFIED BY«пароль»
с опцией GRANT;FLUSH PRIVILEGES;
- привилегиями могут быть имена операций, такие как select, drop и ... или если вы хотите предоставить все привилегии пользовательскому набору "ALL PRIVILEGES"
- schema.table может указывать только одну таблицу или что-то вроде . для поддержки всех схем и таблиц.
- имя пользователя, которое также называется ролью, очевидно, но это может быть%, чтобы предоставить всем пользователям данные привилегии.
- имя хоста может быть ip или именем хоста или как имя пользователя может быть%, чтобы предоставить указанным пользователям данные привилегии.
для дальнейшей информации можно использовать https://dev.mysql.com/doc/refman/8.0/en/grant.html, https://stackoverflow.com/a/6239145/2137378
Документация mysql гораздо предпочтительнее.проверьте версию MySQL и продолжайте документацию по точным версиям MySQL.
Определенно, вышеприведенные описания предназначены для того, чтобы механизм mysql знал своих удаленных пользователей, и если между этими двумя есть какие-то препятствия, такие как брандмауэр, нужно как-то устранить.Например, если вы используете Ubuntu, вы можете проверить, является ли брандмауэр основной проблемой, отключив его, используя:
sudo ufw disable
После отключения брандмауэра и предоставления привилегий удаленный доступ был в порядке, тогда вы знаете, что брандмауэр являетсявопрос.чтобы включить, если использовать:
sudo ufw enable