- 正しいポートを指定しましたか?
- MySQLサーバーは実行されていますか?
- ファイアウォールはアクセスをブロックしていますか?
- MySQLサーバーから匿名ユーザーアカウントを削除してみますか?
指定されていない場合のデフォルトのポートは3306です。それ以外の場合は、コードに問題はありません。問題はMySQLサーバーにあるか、接続がファイアウォールまたはサーバーファイアウォールによってブロックされています。ポート3306が開いていて、ブロックされていないことを確認してください。
db = mysql.connector.connect(user='xxx', password='xxx', host='xxx.db.1and1.com', port=3306)