Python Application Connection to MySQL

MySQL is a highly popular open source database, used by developers all over the world. In this instruction we’ll show you how to connect your Python application, hosted within Jelastic Cloud, to this DB server.

1. In our example, we have both Python and MySQL servers within a single environment. You can create similar one, use separate environments for your app server and database or work with any external instances.

Python MySQL environment

2. Access your application server via Jelastic SSH Gate.

Jelastic SSH Gate

3. Now, install a MySQL connector for Python with the following command:

pip install mysql-connector==2.1.6

install MySQL connector for Python

Note: In order to use the newer version of the MySQL connector, you need to additionally install Protobuf C++ of the 2.6.0 version or above.

4. Next, let’s create a simple script to establish connection. You can use any preferable text editor for this task, as well as any filename with the .py extension (e.g. vim script.py).

import mysql.connector
from mysql.connector import errorcode
try:
 cnx = mysql.connector.connect(user='{user}', password='{password}', host='{host}', database='{database}')
except mysql.connector.Error as err:
 if err.errno == errorcode.ER_ACCESS_DENIED_ERROR:
   print("Something is wrong with your user name or password")
 elif err.errno == errorcode.ER_BAD_DB_ERROR:
   print("Database does not exist")
 else:
   print(err)
else:
 print("You are connected!")
 cnx.close()
Here, you need to adjust the connection string (all the required information is provided within email for your MySQL node):
  • {user} - username to log into database with
  • {password} - password for the appropriate user
  • {host} - link to your MySQL container
  • {database} - database to be accessed (e.g. the default mysql one)

MySQL connection script

This script will connect to the specified database server with the provided credentials and will print connection errors (if any) or just a “You are connected!” phrase.

5. So, let’s execute our code with the appropriate command:

python script.py

run DB connection script

If the “You are connected!” string appeared within terminal, the connection was successful. Now, you can be sure that you database server is accessible and can extend code to execute all of the required actions.