MySQL Connector module of Python is used to connect MySQL databases with the Python programs, it does that using the Python Database API Specification v2.0 (PEP 249). It uses the Python standard library and has no dependencies.
Connecting to the Database
Themysql.connector library provides theconnect() method, which is used to establish a connection between the MySQL database and a Python application. This allows you to connect to bothlocalandcloud-based MySQL databases effortlessly.
Syntax:
Conn_obj = mysql.connector.connect(
host=<hostname>,
user=<username>,
passwd=<password>,
database=<database_name> # optional
)
connect() function accepts the following arguments.
- Hostname: It represents the server name or IP address on which MySQL is running.
- Username: It represents the name of the user that we use to work with the MySQL server. By default, the username for the MySQL database is root.
- Password: The password is provided at the time of installing the MySQL database. We don't need to pass a password if we are using the root.
- Database: It specifies the database name which we want to connect. This argument is used when we have multiple databases.
In the following example we will be connecting to MySQL database using connect() method.
1. Connecting to a Local MySQL Database
Here’s how to connect to a local MySQL database using themysql.connector.connect() method:
Pythonimportmysql.connector# Connecting from the serverconn=mysql.connector.connect(user='username',host='localhost',database='database_name')print(conn)# Disconnecting from the serverconn.close()
Output:

Also for the same, we can use connection.MySQLConnection() class instead of connect():
Example:
Pythonfrommysql.connectorimportconnection# Connecting to the serverconn=connection.MySQLConnection(user='username',host='localhost',database='database_name')print(conn)# Disconnecting from the serverconn.close()
Output:

Another way is to pass the dictionary in theconnect() function using '**' operator:
Example:
Pythonfrommysql.connectorimportconnectiondict={'user':'root','host':'localhost','database':'College'}# Connecting to the serverconn=connection.MySQLConnection(**dict)print(conn)# Disconnecting from the serverconn.close()Output:

Connecting to an Online MySQL Database
You can easily switch from connecting to a local MySQL database to an online MySQL database. All you need to do is modify the host parameter to theIP address orhostnameof your online database server.
Example
Pythonimportmysql.connectordataBase=mysql.connector.connect(host="your-cloud-database-host",# Replace with your cloud database hostuser="your-username",passwd="your-password",database="your-database-name")dataBase.close()
By changing the host value to point to the IP address or hostname of the cloud database, you can switch easily between a local and a cloud MySQL database without changing much of your code.
Explore
Python Fundamentals
Python Data Structures
Advanced Python
Data Science with Python
Web Development with Python
Python Practice