Am un mic script Python pentru a colecta temele elevilor și scorurile online ale cursurilor din tabelul allstudentsAnswers20BE.
Acest lucru funcționează excelent pe vechea mea pagină web de găzduire web partajată.
Pe noul server cloud Ubuntu 20.04, mi se refuză conexiunea.
Nu am experiență în rularea unui server cloud.
Am permis porturile 33060 și 3306 în UFW
IP-ul meu este acasă nu este fix.
Când rulez scriptul meu Python, primesc această eroare când încerc să mă conectez la serverul cloud
pymysql.err.OperationalError: (1130, „183.206.16.30” nu este permis să
conectați-vă la acest server MySQL")
netstat spune că mysqld ascultă pe 33060 și 3306, așa că le-am permis pe ambele în firewall-ul ufw
Conectându-mă la serverul cloud prin ssh, am rulat:
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
Am schimbat adresa de legătură a liniei la 0.0.0.0 (am încercat și *)
Am repornit mysql: sudo systemctl restart mysql
Trebuie să mai existe ceva care trebuie setat, partea serverului.
Orice sfaturi despre ce ar putea fi, vă rog, chiar am nevoie de asta pentru a funcționa.
Am primit și aceste informații (presupunem că ip-ul meu cloud este 123.456.789.123):
pedro@ebs-105422:~$ nc -v -w 2 123.456.789.123 3306
Conexiunea la portul 123.456.789.123 3306 [tcp/mysql] a reușit!
pedro@ebs-105422:~$
Asta înseamnă că mysqld ascultă pe 3530? Sau acesta este PID-ul mysqld??
pedro@ebs-105422:~$ sudo netstat -tap | grep mysql
tcp 0 0 0.0.0.0:mysql 0.0.0.0:* ASCULTĂ 3530/mysqld
tcp6 0 0 [::]:33060 [::]:* ASCULTĂ 3530/mysqld
pedro@ebs-105422:~$
Mai jos este de la mysql pe server, confirmând portul 3306
mysql> arată variabilele unde variabile_name în ('hostname','port');
+---------------+------------+
| Nume_variabilă | Valoare |
+---------------+------------+
| numele gazdă | ebs-105422 |
| port | 3306 |
+---------------+------------+
2 rânduri în set (0,01 sec)
mysql>