I am trying to install mysql-connector-python==1.0.12
as part of my project's automated installation, and I get the following error from pip install
:
Collecting mysql-connector-python==1.0.12 (from -r /tmp/requirements.txt (line 20))
Could not find a version that satisfies the requirement mysql-connector-python==1.0.12 (from -r /tmp/requirements.txt (line 20)) (from versions: )
No matching distribution found for mysql-connector-python==1.0.12 (from -r /tmp/requirements.txt (line 20))
Up until a few days ago it worked fine. I investigated a bit and found the following issue in bitbucket.org. Specifically, the following comment dated 28/12/2015:
That should be blank, per PEP 470 using PyPI to link to a package not
hosted by PyPI for automated installers to download (the /simple/
index) was deprecated and scheduled for removal. Maintainers of the
affected packages were emailed 3 months ago. The removal happened
earlier today (a bug caused some oackages like Twisted which were
hosted on PyPI to also have their links removed but that has been
remedied). The maintainers of MySQL-connector-python should either
upload to PyPI or direct their users to use either -f or
--extra-index-url with a repository they maintain.
How can I have the installation of mysql-connector-python==1.0.12
run smoothly?
Do I need to set up my own repository?
There are quite a few solutions, e.g. hosting a private repository, but the quickest was to change the requirements.txt
file to download from mysql's cdn.
i.e., to change:
mysql-connector-python==1.0.12
to
https://cdn.mysql.com/Downloads/Connector-Python/mysql-connector-python-2.1.15.tar.gz
For all the lazy people like me who had to google how the requirements file works
just do this ...
echo https://cdn.mysql.com/Downloads/Connector-Python/mysql-connector-python-2.1.3.tar.gz >> requirements.txt
then this.
sudo -H pip install -r ./requirements.txt
check it.
pip list | grep mysql
It should output:
mysql-connector-python (2.1.3)
happy days Thanks to @Amnon
Worked for me using
pip install mysql-connector-python-rf
.
More info here https://github.com/travis-ci/travis-ci/issues/5369
The above link did not work for me, or when trying to install to AWS Beanstalk. But the below link did work:
https://cdn.mysql.com/Downloads/Connector-Python/mysql-connector-python-2.0.4.zip#md5=3df394d89300db95163f17c843ef49df
If you are using a setup.py
script, keep the dependency listed in install_requies
but add the attribute depedency_links
to the setup function with a list and put the url to the package in there. Such as:
setup(
dependency_links=['http://cdn.mysql.com/Downloads/Connector-Python/mysql-connector-python-2.1.4.zip']
)
More is specified in the Packages Not On PyPI document.
Red Hat / CentOS
sudo yum install python-devel mysql-devel
sudo pip3 install mysql-connector
for other OS, see mysqlclient