У меня есть небольшой скрипт на Python для сбора домашних заданий учащихся и оценок онлайн-классов из таблицы allstudentsAnswers20BE.
Это прекрасно работает на моей старой веб-странице общего веб-хостинга.
На новом облачном сервере Ubuntu 20.04 мне отказывают в соединении.
У меня нет опыта работы с облачным сервером.
Я разрешил порты 33060 и 3306 в UFW
Мой ip дома не закреплен.
Когда я запускаю свой скрипт Python, я получаю эту ошибку при попытке подключения к облачному серверу.
pymysql.err.OperationalError: (1130, "183.206.16.30" не разрешено
подключиться к этому серверу MySQL")
netstat говорит, что mysqld прослушивает 33060 и 3306, поэтому я разрешил оба в брандмауэре ufw
Подключившись к облачному серверу по ssh, я запустил:
судо нано /etc/mysql/mysql.conf.d/mysqld.cnf
Я изменил строку bind-address на 0.0.0.0 (также пробовал *)
Я перезапустил mysql: sudo systemctl перезапустить mysql
Должно быть что-то еще, что нужно настроить, на стороне сервера.
Любые советы, что это может быть, пожалуйста, мне действительно нужно, чтобы это работало.
Я также получил эту информацию (предположим, что мой облачный IP-адрес 123.456.789.123):
pedro@ebs-105422:~$ nc -v -w 2 123.456.789.123 3306
Подключение к порту 123.456.789.123 3306 [tcp/mysql] выполнено успешно!
педро@ebs-105422:~$
Означает ли это, что mysqld прослушивает 3530?? Или это PID mysqld??
pedro@ebs-105422:~$ sudo netstat -tap | grep mysql
tcp 0 0 0.0.0.0:mysql 0.0.0.0:* ПРОСЛУШАТЬ 3530/mysqld
tcp6 0 0 [::]:33060 [::]:* ПРОСЛУШАТЬ 3530/mysqld
педро@ebs-105422:~$
Ниже из mysql на сервере, подтверждающий порт 3306
mysql> показать переменные, где имя_переменной в ('hostname','port');
+---------------+------------+
| Имя_переменной | Значение |
+---------------+------------+
| имя хоста | ebs-105422 |
| порт | 3306 |
+---------------+-------------+
2 ряда в сете (0,01 сек)
mysql>