For a very easy use, I recommend installing pymysql, sqlalchemy and pandas. Then it is so easy like:
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import os
from sqlalchemy import create_engine
user = os.environ['MdB_USER']
host = os.environ['MdB_HOST']
passwd = os.environ['MdB_PASSWD']
db = os.environ['MdB_DB_17']
port = '3306'
sel = """SELECT
N__2_658345A AS NII,
O__3_500684A AS OIII,
H__1_486133A AS Hb,
H__1_656281A AS Ha,
OXYGEN,
logU_mean AS logU
FROM tab_17 WHERE ref = 'BOND'
AND HbFrac > 0.95
LIMIT 10000
"""
sqlEngine = create_engine(f'mysql+pymysql://{user}:{passwd}@{host}:{port}/{db}')
with sqlEngine.connect() as db_con:
df = pd.read_sql(sel, con=db_con)
f, ax = plt.subplots()
sc = ax.scatter(np.log10(df['NII']/df['Ha']), np.log10(df['OIII']/df['Hb']), c=12+df['OXYGEN'], edgecolor='None')
ax.set_xlabel("log [NII]/Ha")
ax.set_ylabel("log [OIII]/Hb")
cb = f.colorbar(sc, ax=ax)
cb.set_label("12 + log O/H")