I had this problem quite recently, even using the mysqlclient library compatible with python 3, and mysqlclient managed to solve my problem, albeit a little unorthodox. If you are using MySQL 8, try and see if this helps! :)
I just made a copy of the libmysqlclient.21.dylib file located in my last install of MySQL 8.0.13, which was in /usr/local/mysql/lib and transferred that copy under the same name to /usr/lib .
You will have to temporarily disable security integrity protection on your Mac, but do it because you do not have or cannot change permissions for anything in /usr/lib without disabling it. You can do this by booting into the recovery system, click "Utilities" in the menu at the top and open a terminal and enter csrutil disable in the terminal. Remember to re-enable security integrity protection when you do! The only difference from the above process is that you run csrutil enable instead.
You can learn more about how to disable and enable macro protection integrity protection.
source share