I'm receiving this error when trying to just run a simple query on my database.
My code is as follows (I left the first part default but I actually have it filled out with my information on my python script):
import mysql.connector import sshtunnel sshtunnel.SSH_TIMEOUT = 5.0 sshtunnel.TUNNEL_TIMEOUT = 5.0 with sshtunnel.SSHTunnelForwarder( ('your SSH hostname'), ssh_username='your PythonAnywhere username', ssh_password='the password you use to log in to the PythonAnywhere website', remote_bind_address=('your PythonAnywhere database hostname, eg. yourusername.mysql.pythonanywhere-services.com', 3306) ) as tunnel: connection = mysql.connector.connect( user='your PythonAnywhere username', password='your PythonAnywhere database password', host='127.0.0.1', port=tunnel.local_bind_port, database='your database name, eg yourusername$mydatabase', ) cursor = connection.cursor() cursor.execute("select * from semesters") for i in cursor: print(i) connection.close()
I just take the default code and I run a simple execute command from mysql.connector. However I get the error in the title and I'm not sure what I am doing wrong. Here is the full error message:
Traceback (most recent call last): File "C:\Users\Jaden\python_datebase\database_connect.py", line 17, in <module> cursor = connection.cursor() File "E:\Python 3.9\lib\site-packages\mysql\connector\connection.py", line 809, in cursor raise errors.OperationalError("MySQL Connection not available.") mysql.connector.errors.OperationalError: MySQL Connection not available.
Again, in my actual code, I do not have the fill in the blanks in the sshtunnel and connection parts left as default. Any help would be appreciated.