On Tue, Aug 13, 2019 at 9:59 AM Chris Angelico <ros...@gmail.com> wrote: > > On Tue, Aug 13, 2019 at 11:33 PM Larry Martell <larry.mart...@gmail.com> > wrote: > > > > I am trying to install MySQLdb (https://pypi.org/project/mysqlclient/) > > for python3.6 on RHEL7. > > > > When I import it, it fails: > > > > # python3.6 > > Python 3.6.8 (default, Jun 11 2019, 15:15:01) > > [GCC 4.8.5 20150623 (Red Hat 4.8.5-39)] on linux > > Type "help", "copyright", "credits" or "license" for more information. > > >>> import MySQLdb > > Traceback (most recent call last): > > File "<stdin>", line 1, in <module> > > File > > "/usr/local/lib64/python3.6/site-packages/mysqlclient-1.4.4-py3.6-linux-x86_64.egg/MySQLdb/__init__.py", > > line 18, in <module> > > from . import _mysql > > ImportError: > > /usr/local/lib64/python3.6/site-packages/mysqlclient-1.4.4-py3.6-linux-x86_64.egg/MySQLdb/_mysql.cpython-36m-x86_64-linux-gnu.so: > > undefined symbol: mysql_kill > > > > Has anyone seen and resolved this? > > Not specifically, but that looks like a versioning conflict. Most > likely, your mysqlclient is too old for MySQLdb to connect to. > > Did you get one of them from your system package manager and the other > from pip? If so, try to get both from the same place.
So I have MySQL from the system package manager, but mysqlclient is not available there. And I was not able to get that from pip either, as the install failed. I had to download the source, edit the site.cfg file and build it. But I just found python36-mysql.x86_64 as a package so I uninstalled mysqlclient and installed that from the repo. That did not get the above error, but now I get this: raise ImproperlyConfigured('mysqlclient 1.3.13 or newer is required; you have %s.' % Database.__version__) django.core.exceptions.ImproperlyConfigured: mysqlclient 1.3.13 or newer is required; you have 1.3.12. -- https://mail.python.org/mailman/listinfo/python-list