Their is a error when connecting Python with MySQL database


I am using a simple python function to connect to a MySQL database.I receive an error saying a variable is referenced before it is assigned, but this would not be the case if the connection had successfully established. Why is the connection failing?

I am using Ubuntu Linux 18.04. I am running xampp 7.3 to host the mySQL and apache servers and am using phpmyadmin to access the database.I am running my code with python 3.

This is my code:
import mysql.connector
from mysql.connector import Error

def connect():
“”" Connect to MySQL database “”"

    conn = mysql.connector.connect(host='localhost',

    if conn.is_connected():
        print('Connected to MySQL database')

except Error as e:


if name == ‘main’:

nd this is the error I receive:

Traceback (most recent call last):
File “”, line 23, in
File “”, line 19, in connect
UnboundLocalError: local variable ‘conn’ referenced before assignment AWS Certified
I am expecting a successful connection to the database. I believe something could be wrong with my configurations but don’t know where to start in solving the problem. Thank you.


Hi Soujanya Bargavi,

Let’s clear connectivity issues first. Can you connect to the database with telnet using the above address?

I mean something like the following:
$ telnet localhost 3306