MySQL DB with MySQL Client Install Failure

Installing MySQL Client fails in Django. See Error Messages Below.

Is there an elegant solution available for Django 4.0.6 and MySQL 8.0.29
and MySQL Client 2.1.1

macOS Monterey 12.4 Chip Apple M1 MAX Memory 64GB

IF not, how do we proceed with Mosh Purchased Courses?
Are the following instructions viable:

https://www.dev2qa.com/how-to-connect-mysql-databse-in-django-project/

Installing mysqlclient…
Error: An error occurred while installing mysqlclient!
Error text: Collecting mysqlclient
Downloading mysqlclient-2.1.1.tar.gz (88 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 88.1/88.1 kB 167.8 kB/s eta 0:00:00
Preparing metadata (setup.py): started
Preparing metadata (setup.py): finished with status ‘error’

error: subprocess-exited-with-error

× python setup.py egg_info did not run successfully.
│ exit code: 1
╰─> [16 lines of output]
/bin/sh: mysql_config: command not found
/bin/sh: mariadb_config: command not found
/bin/sh: mysql_config: command not found
Traceback (most recent call last):
File “”, line 2, in
File “”, line 34, in
File “/private/var/folders/67/g6ljn0wn3gd2hz1n0_9p0dtc0000gn/T/pip-install-lxstynij/mysqlclient_aaa08edd50934ae9a0946d998dab1cd2/setup.py”, line 15, in
metadata, options = get_config()
File “/private/var/folders/67/g6ljn0wn3gd2hz1n0_9p0dtc0000gn/T/pip-install-lxstynij/mysqlclient_aaa08edd50934ae9a0946d998dab1cd2/setup_posix.py”, line 70, in get_config
libs = mysql_config(“libs”)
File “/private/var/folders/67/g6ljn0wn3gd2hz1n0_9p0dtc0000gn/T/pip-install-lxstynij/mysqlclient_aaa08edd50934ae9a0946d998dab1cd2/setup_posix.py”, line 31, in mysql_config
raise OSError(“{} not found”.format(_mysql_config_path))
OSError: mysql_config not found
mysql_config --version
mariadb_config --version
mysql_config --libs
[end of output]

note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed

× Encountered error while generating package metadata.
╰─> See above for output.

note: This is an issue with the package mentioned above, not pip.
hint: See above for details.

This is likely caused by a bug in mysqlclient. Report this to its maintainers.
✘ Installation Failed

I had basically the same issue in Ubuntu, and found I needed to install the “python3-dev default-libmysqlclient-dev build-essential” despite already having installed MySQL previously and verifying it worked in my VS Code terminal.

I ran

sudo apt-get install python3-dev default-libmysqlclient-dev build-essential

and then was able to successfully install mysql client in my virtual environment! Please see what you need to run for your OS.

Reference: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output while installing mysqlclient - Stack Overflow

The url provided does not exist or is an incorrect url.

Appreciate your help. Could you check on the url needed?

Yep, does this work?

Also see their github for more installation info:

Had to use home-brew to install mysql and mysqlclient. Ran commands un these two commands in your terminal to add Homebrew to your PATH:
echo ‘eval “$(/opt/homebrew/bin/brew shellenv)”’ >> /Users/your profile/.zprofile
eval “$(/opt/homebrew/bin/brew shellenv)”
We’ve installed your MySQL database without a root password. To secure it run:
mysql_secure_installation

MySQL is configured to only allow connections from localhost by default. To connect run:
mysql -uroot
We’ve installed your MySQL database without a root password. To secure it run:
mysql_secure_installation

MySQL is configured to only allow connections from localhost by default

To connect run:
mysql -uroot
brew unlink mysql && brew link mysql

johnkpeterson@Johns-MacBook-Pro ~ % brew unlink mysql && brew link mysql

Unlinking /opt/homebrew/Cellar/mysql/8.0.30… 98 symlinks removed.

Linking /opt/homebrew/Cellar/mysql/8.0.30… 98 symlinks created.
mysql_secure_installation- Run these two commands in your terminal to add Homebrew to your PATH:

Appreciate all of the help

Thank You - Your suggestion:Thank you. Your suggestions. DATABASES = {‘default’:{ ‘ENGINE’: ‘mysql.connector.django’, ‘NAME’: ‘KMSFront’, ‘USER’: ‘root’, ‘PASSWORD’: ‘PWPWL’, ‘HOST’: ‘127.0.0.1’ ‘PORT’: 3306, ‘OPTIONS’: {‘autocommit’: True }}}. Error Message: “raise ImproperlyConfigured(django.core.exceptions.ImproperlyConfigured: ‘mysql.connector.django’ isn’t an available database backend or couldn’t be imported. Check above exception. Use one of the built-in backends, use ‘django.db.backends.XXX’, where XXX is one of: ‘mysql’, ‘oracle’, ‘postgresql’, ‘sqlite3’” Updated Environment = macOS Monterey V12.5 M1Max with Visual Studio Code + Python 3.10.6 + Django 4.1 + PIP3. Have successfully installed mysql-connector-python-8.0.30. Current dbsqlite3 has populated tables. When I run python manage.py migrate from dbsqlite3 to MySQL Community 8.0.30 the error messages include “Did you install mysqlclient.” Oracle documentation indicates the mysql-connector-python should be used and is all that is needed. Current DATABASES = { ‘default’: { ‘ENGINE’: ‘django.db.backends.mysql’, ‘NAME’: ‘DatabaseName’, (These are the same settings in MySQL Workbench and mySQL that is running in shared mode) ‘HOST’: ‘127.0.0.1:3306’, ‘USER’: ‘root’, ‘PASSWORD’: ‘DDDDDD’,

In some of the ways, spacing and the order of parameters in the MySql connection string does matters. So, stick to the standard format:

MysqlConn.ConnectionString = "Server=localhost;Port=1234;Database=My_Mysql_Database;Uid=root;Pwd=root;"

If the above connection string fails, try update your c# mysql connection string as shown below (without port variable as well):

MysqlConn.ConnectionString = "Server=localhost;Database=My_Mysql_Database;Uid=root;Pwd=root;"

Or, sometime the problem could be on your windows firewall, make sure your server allow access to all port associated with your mysql database.