32

I'd like to use the mysql-connector library for python 3. I could use pymysql instead, but mysql-connector already has a connection pool implementation, while pymysql doesn't seem to have one. So this would be less code for me to write.

However, when I do

$ pip3 search mysql-connector

I find that these 3 libraries are available:

mysql-connector-repackaged     - MySQL driver written in Python
mysql-connector-python-rf      - MySQL driver written in Python
mysql-connector-python         - MySQL driver written in Python

This is very confusing. Anybody knows which one I should use and why?

Thanks for your help.

John Smith Optional
  • 22,259
  • 12
  • 43
  • 61

4 Answers4

20

The main differences between them are:

  • mysql-connector-repackaged: is old, do not use it

  • mysql-connector-python 2.0.4: is the original uploaded by MySQL. But it has the problem that does not works with Django >= 1.8. MySQL did not upload yet their stable version 2.1.3 to this repo.

  • mysql-connector-python-rf 2.1.3: is the solution to all your problems if you use Django >= 1.8

KGs
  • 913
  • 11
  • 19
9

I was just asking myself similar question and I think I found the "fresh" answer. Here is info from two weeks ago: https://github.com/pypa/warehouse/issues/5537

It seems that currently a long-inactive person is owner of the mysql-connector name, hence MySQL developers release under name mysql-connector-python.

bez imienny
  • 106
  • 1
  • 3
5

If I were to base my assessment on the goodness of a package by how many people have downloaded it, I would suggest you choose mysql-connector-python-rf 2.1.3.

mysql-connector-python-rf worked for me with pip whereas mysql-connector-python gave me issues.

James Tobin
  • 3,070
  • 19
  • 35
  • 1
    The stats must be wrong. Even very obscure libraries have more hits than 5 downloads a month. I guess the stats are wrong because mysql-connector-python is externally hosted (you have to install it using --allow-external). – John Smith Optional Dec 31 '15 at 21:58
  • the 5 downloads in the past month is seemingly because everyone downloads it straight from dev.mysql.com instead of from pypi – James Tobin Dec 31 '15 at 22:04
  • 5
    Just want to callout that `mysql-connector-python` has been more active than the old `rf` package in the last 6-9ish months. It's on version 8.0.11 now (and I believe it's now the more preferred) but :shrugs:. – wspurgin Jun 25 '18 at 19:19
1

I'd recommend using mysql-connector-python nowadays, it's the official release from Oracle and still gets updated.

mysql-connector-repackaged     - last updated: Mar 11, 2012 (version 0.3.1)
mysql-connector-python-rf      - last updated: Feb 4, 2017 (version 2.2.2)
mysql-connector-python         - last updated: Dec 7, 2021 (version 8.0.28)
ATH
  • 666
  • 6
  • 13