পাইপ ইনস্টল মাইএসকিএল-পাইথন এনভায়রনমেন্ট এরিয়ারের সাথে ব্যর্থ হয়: মাইএসকিএল_কনফিগ পাওয়া যায় নি


823

এটি আমি পেয়েছি ত্রুটি

(mysite)zjm1126@zjm1126-G41MT-S2:~/zjm_test/mysite$ pip install mysql-python
Downloading/unpacking mysql-python
  Downloading MySQL-python-1.2.3.tar.gz (70Kb): 70Kb downloaded
  Running setup.py egg_info for package mysql-python
    sh: mysql_config: not found
    Traceback (most recent call last):
      File "<string>", line 14, in <module>
      File "/home/zjm1126/zjm_test/mysite/build/mysql-python/setup.py", line 15, in <module>
        metadata, options = get_config()
      File "setup_posix.py", line 43, in get_config
        libs = mysql_config("libs_r")
      File "setup_posix.py", line 24, in mysql_config
        raise EnvironmentError("%s not found" % (mysql_config.path,))
    EnvironmentError: mysql_config not found
    Complete output from command python setup.py egg_info:
    sh: mysql_config: not found

Traceback (most recent call last):

  File "<string>", line 14, in <module>

  File "/home/zjm1126/zjm_test/mysite/build/mysql-python/setup.py", line 15, in <module>

    metadata, options = get_config()

  File "setup_posix.py", line 43, in get_config

    libs = mysql_config("libs_r")

  File "setup_posix.py", line 24, in mysql_config

    raise EnvironmentError("%s not found" % (mysql_config.path,))

EnvironmentError: mysql_config not found

----------------------------------------
Command python setup.py egg_info failed with error code 1
Storing complete log in /home/zjm1126/.pip/pip.log
(mysite)zjm1126@zjm1126-G41MT-S2:~/zjm_test/mysite$ pip install mysql-python
Downloading/unpacking mysql-python
  Running setup.py egg_info for package mysql-python
    sh: mysql_config: not found
    Traceback (most recent call last):
      File "<string>", line 14, in <module>
      File "/home/zjm1126/zjm_test/mysite/build/mysql-python/setup.py", line 15, in <module>
        metadata, options = get_config()
      File "setup_posix.py", line 43, in get_config
        libs = mysql_config("libs_r")
      File "setup_posix.py", line 24, in mysql_config
        raise EnvironmentError("%s not found" % (mysql_config.path,))
    EnvironmentError: mysql_config not found
    Complete output from command python setup.py egg_info:
    sh: mysql_config: not found

Traceback (most recent call last):

  File "<string>", line 14, in <module>

  File "/home/zjm1126/zjm_test/mysite/build/mysql-python/setup.py", line 15, in <module>

    metadata, options = get_config()

  File "setup_posix.py", line 43, in get_config

    libs = mysql_config("libs_r")

  File "setup_posix.py", line 24, in mysql_config

    raise EnvironmentError("%s not found" % (mysql_config.path,))

EnvironmentError: mysql_config not found

----------------------------------------
Command python setup.py egg_info failed with error code 1
Storing complete log in /home/zjm1126/.pip/pip.log

এর সমাধানের জন্য আমি কী করতে পারি?


1
এই থ্রেড দেখুন: [mysql_config পাওয়া যায়নি ইনস্টল mysqldb পাইথন ইন্টারফেস] [1] :) [1] আমার জন্য কাজ: stackoverflow.com/questions/7475223/...
বিচ্ছিন্ন

আমি ম্যাক ওএস ব্যবহারকারী আমি এই সমস্যার সমাধান করছি stackoverflow.com/questions/50940302/…
প্যাট্রিসিও

উত্তর:


1397

দেখে মনে হচ্ছে আপনার সিস্টেমে mysql_config অনুপস্থিত বা ইনস্টলার এটি সন্ধান করতে পারে নি। নিশ্চিত হন যে mysql_config সত্যিই ইনস্টল করা আছে।

উদাহরণস্বরূপ দেবিয়ান / উবুন্টুতে আপনাকে অবশ্যই প্যাকেজটি ইনস্টল করতে হবে:

sudo apt-get install libmysqlclient-dev

হতে পারে mysql_config আপনার পথে নেই, আপনি যখন নিজের দ্বারা mysql স্যুটটি সংকলন করেন তখন এটি হবে।

আপডেট: ডেবিয়ান / উবুন্টু (2018 হিসাবে) এর সাম্প্রতিক সংস্করণের জন্য এটি

sudo apt install default-libmysqlclient-dev

24
এটি এখনও আমার জন্য একটি ত্রুটি তৈরি করেছে। আমি apt-get install python-mysqldbপরিবর্তে ব্যবহার ।
জোনাটান লিটকে

51
আমার 2 সি অভিজ্ঞতা: আমার sudo apt-get install libmysqlclient-devজন্য কাজ করেছে, sudo apt-get install python-mysqldbসাহায্য করেনি
এ্যানট্রপিক

20
@ জোনাটানলিটকে বিশ্বব্যাপী পাইথন-মাইসকিএলডিবি ধরণের ইনস্টল করা ভ্যুচুয়ালেনভ আইএমও-র বক্তব্যের বিপরীতে।
fncomp

42
মারিয়াডাবের জন্য, sudo apt-get install libmariadbclient-devকৌশলটি করেছিলেন।
ইউভিলিও

11
যদি এই সমাধানগুলি আপনার পক্ষে কাজ করে না, তবে আপনাকে এখনও পাইথন-ডেভ ইনস্টল করার প্রয়োজন হতে পারে:apt-get install python-dev
অণয়েজ

295

ম্যাক ওএসে, আমি সংশোধন করার জন্য টার্মিনালে কেবল এটি চালিয়েছি:

export PATH=$PATH:/usr/local/mysql/bin

এটি আমার কাছে পাওয়া দ্রুততম ফিক্স - এটি এটিকে পথে যুক্ত করে, তবে আমি মনে করি আপনি /etc/pathsযদি অন্য কোনও পরিবেশে মাইএসকিউএল-পাইথন ইনস্টল করার পরিকল্পনা করেন তবে স্থায়ীভাবে এটি যুক্ত করা (যেমন এটি যুক্ত করা ) ভাল।

(ওএসএক্স মাউন্টেন লায়নে পরীক্ষিত)


6
আপনি যদি বিটনামির এমএএমপি স্ট্যাক ব্যবহার ব্যবহার করে export PATH=$PATH:/Applications/mampstack-5.3.17-0/mysql/binথাকেন অন্যদিকে আপনি যদি এই বাণিজ্যিক এমএএমপি স্ট্যাকটি ব্যবহার করছেন তবে এটিকে আনইনস্টল করুন এবং বিটনামিটি পান কারণ এটি বিষ্ঠাযুক্ত এবং মাইএসকিএল শিরোনামগুলি অন্তর্ভুক্ত করে না।
টিমম্ম

3
পাথটিকে স্থায়ী করার জন্য এটি এর নীচে যুক্ত করুন /etc/paths- নতুন পাথটি অ্যাক্সেস করার জন্য আপনাকে একটি নতুন টার্মিনাল উইন্ডো খুলতে হবে।
রোজোকা

আমার সমস্ত ডেটাবেস অফিশিয়াল ভার্সনে থাকায় @ টিমিএমএম বেশ ব্যয়বহুল সমাধান: / এটিকে বাছাই করার কোনও অন্য উপায় আছে কি?
ভোল্টিল 3

1
খুব উপকারী. আপনি যদি এক্সএএমপিপি ব্যবহার করে থাকেন তবে এটি হিসাবে ব্যবহার করুনexport PATH=$PATH:/Applications/XAMPP/xamppfiles/bin
কেভিন লন্ডন

10
এটি শেষ পর্যন্ত ধন্যবাদ কাজ করে! এছাড়াও যদি mysqlইনস্টল না করা থাকে brew install mysqlতবে অবস্থান যেখানে রয়েছে তা ব্যবহার করুন /usr/local/bin/mysql(বা /usr/local/Cellar/mysql/VERSION/bin/এটি যদি সিমলিং না থাকে)।
আজিজ আল্টো

102
apt-get install libmysqlclient-dev python-dev

কৌতুক করতে দেখা গেছে।


2
হ্যাঁ, আমার জন্য কেবল লিবমিস্ক্লাইক্লেন্ট-দেব যথেষ্ট ছিল না, পাইথন-দেব খুব অনুপস্থিত ছিল।
অ্যান্ডারসন সান্টোস

উবুন্টুতে 12.04 (সুনির্দিষ্ট) (32-বিট) 10.04 (লুসিড) থেকে ইনপ্লেস আপগ্রেড করার পরে কেবল এই ত্রুটিগুলি সমাধান করে। বিশেষত অতিরিক্ত "অজগর-দেব"!
বরফ

আমার জন্যও কাজ করেছিলেন - পাইথন-দেব ছিল ধাঁধার শেষ টুকরো। ইতিমধ্যে পাইথন-মাইসকিএলডিবি ইনস্টল করা আছে, সুতরাং এটি অবশ্যই প্রয়োজনীয় সমস্ত কিছু নয়।
টিম এস

আপডেট: পাইথন 3 এর জন্য আপনাকে ইনস্টল করতে হবে python3-dev
সেজার

আমি এই কাজ করতে এবং ইনস্টল প্রয়োজন gccএকটি সফল ইনস্টল জন্য। এছাড়াও, এটি সম্ভবত সেরা কি না python-devযেমন, কিন্তু উল্লেখ বিশেষ সংস্করণ python2.7-dev, python3.6-devইত্যাদি
টিম Tisdall

89

উপরের ইস্যুটির জন্য বিভিন্ন উত্তর থাকতে পারে, নীচে একটি সমন্বিত সমাধান রয়েছে।

উবুন্টুর জন্য:

$ sudo apt update
$ sudo apt install python-dev
$ sudo apt install python-MySQLdb

CentOS এর জন্য:

$ yum install python-devel mysql-devel

Centos টিপ জন্য ধন্যবাদ। আমি সারা সকালে এটি তাড়া করে আসছি।
পিট ম্যাগসিগ

সম্ভবত যোগ python3-dev/python3-devel
জর্জি এম

36

আপনি যদি ম্যাক এ থাকেন তবে এটি বিশ্বব্যাপী ইনস্টল করুন

brew install mysql

তারপরে এভাবে রফতানি করুন

export PATH=$PATH:/usr/local/mysql/bin

আপনি যা পছন্দ করেন তা বিশ্বব্যাপী বা আপনার ভেন্টের তুলনায়

pip install MySQL-Python

দ্রষ্টব্য: বিশ্বব্যাপী পাইথন 3 এর জন্য ম্যাক হিসাবে পাইথন 2 এবং 3 উভয়ই থাকতে পারে

pip3 install MySQL-Python

34

আপনি মাইএসকিউএল সংযোগকারী / পাইথন ব্যবহার করতে পারেন

পাইপাইপ মাধ্যমে ইনস্টলেশন

pip install mysql-connector-python

মাইএসকিউএল সংযোগকারী / পাইথন 1.0.5 বিটা ঘোষণা ব্লগে আরও তথ্য পাওয়া যাবে ।

লঞ্চপ্যাডে লাইব্রেরির মাধ্যমে ডেটা কীভাবে যুক্ত করতে, সম্পাদনা করতে হবে বা সরাবেন তার একটি ভাল উদাহরণ রয়েছে


3
আমি যখন মাইএসকিএলডিবি এবং নিখোঁজ মাইএসকিএল_কনফিগ মেসে ছেড়ে দিয়েছি তখন এটিই আমার পক্ষে কাজ করেছিল। আমার উদ্দেশ্যে ভাল কাজ করে।
WH1tney

@ wjoba আপনি আরও ব্যাখ্যা করতে পারেন? আমি ইনস্টল করছি py-mysql2pgsqlএবং mysql_config জিনিসটির ত্রুটি খুঁজে পাচ্ছি finding আমি এমএএমপি ব্যবহার করছি। Mysqk সংযোজকটি কী করে?
ভোল্টিল 3

1
@ ভোলিটিল ৩ মাইএসকিএল-সংযোজক-পাইথন আমার জন্য মাইএসকিএল-পাইথনের প্রতিস্থাপনের বাইরে কাজ করেছিল। পাইপটির মাধ্যমে পূর্বের ইনস্টলটি কোনও সমস্যা ছাড়াই কাজ করেছে এবং মাইএসকিএল_কনফিগ ত্রুটি থেকে মুক্তি পেয়েছে কারণ (দেবের নিজস্ব ভাষায়) মাইএসকিএল সংযোগকারীটি "খাঁটি পাইথন এবং এটির জন্য অন্য কোনও মাইএসকিউএল সফ্টওয়্যার প্রয়োজন হয় না, সুতরাং কোনও সি লাইব্রেরি এবং সংকলন নেই।" আশা করি এইটি কাজ করবে. এই সমাধানে উল্লিখিত ইনস্টলেশনটি ব্যবহার করে দেখুন এবং এখনও আপনার ত্রুটির মুখোমুখি হচ্ছে কিনা তা দেখুন।
WH1tney

উবুন্টু 14/4 এ, আমি পেয়েছি: মাইএসকিএল-সংযোজক-পাইথন প্রয়োজনীয়তা পূরণকারী কোনও ডাউনলোড খুঁজে পাইনি
টিমো

এই আদেশটি সমস্ত কিছু চেষ্টা করার পরেও আমার পক্ষে কাজ করেছিল।
9:12

27

জন্য CentOS ব্যবহারকারী:

yum install -y mysql-devel python-devel python-setuptools

তারপর

pip install MySQL-python


যদি এই সমাধানটি কাজ না করে এবং gcc সংকলন ত্রুটিটি প্রিন্ট করে:
_mysql.c:29:20: error: Python.h: No such file or directory

আপনাকে এর Python.hমতো পথ নির্দিষ্ট করতে হবে :
pip install --global-option=build_ext --global-option="-I/usr/include/python2.6" MySQL-python


1
এটি এমন শোনাচ্ছে যেন পাইথন বাইনারি pipইনস্টল করার জন্য আপনার কাছে ফাইল অন্তর্ভুক্ত নেই । পাইথন নিজেই সাধারণত অন্তর্ভুক্ত অবস্থান সরবরাহ করে; ম্যানুয়ালি পথটি সম্ভবত উল্লেখ করা হচ্ছে ভুল সংস্করণটির দিকে নির্দেশ করছে ।
মার্টিজন পিটারস

sudo pip install MySQL-pythonএকটি ত্রুটির কারণে আমাকে একটি কাজ করতে হয়েছিল:copying build/lib.linux-x86_64-2.7/_mysql_exceptions.py -> /usr/lib64/python2.7/site-packages error: /usr/lib64/python2.7/site-packages/_mysql_exceptions.py: Permission denied
বেনিটাইজজ

18

আমি mysql-pythonএকটি আমাজন ইসি 2 লিনাক্স ইনস্ট্যান্সে ইনস্টল করার চেষ্টা করছিলাম এবং আমাকে এগুলি ইনস্টল করতে হয়েছিল:

yum install mysql mysql-devel mysql-common mysql-libs gcc

তবে আমি এই ত্রুটিটি পেয়েছি:

_mysql.c:29:20: fatal error: Python.h: No such file or directory

সুতরাং আমি ইনস্টল করেছি:

yum install python-devel

এবং এটি কৌতুক করেছে।


1
আমি ব্যবহার করেছি: sudo yum install mysql mysql-devel mysql-common mysql-libs gcc আমার ভ্যুচুয়ালেভের বাইরে। তারপরে, আমি আমার ভার্চুয়াল এনভিভিতে ফিরে এসে দৌড়ালাম pip install mysql-pythonএবং এটি কার্যকর হয়েছিল।
ট্যানডি

1
dnf install mysql-devel gccআমার জন্য কল্পনা করা হয়েছিল, এটি বিশ্রামের উপর নির্ভর করে
জেনস টিমারম্যান

python-develপাইথন ২.7 ব্যবহার করে এখন ত্রুটি ঘটবে, এই চেষ্টা করুনpython27-devel
সিজলিং কোড

8

যে কেউ মাইএসকিউএলের পরিবর্তে মারিয়াডিবি ব্যবহার করছেন, তার সমাধানটি হ'ল libmariadbclient-devপ্যাকেজটি ইনস্টল করা এবং সঠিক নামের সাথে কনফিগার ফাইলে একটি প্রতীকী লিঙ্ক তৈরি করা।

উদাহরণস্বরূপ এটি আমার পক্ষে কাজ করেছে:

ln -s /usr/bin/mariadb_config /usr/bin/mysql_config

2
এটি যে কোনও ক্ষেত্রেই একটি নির্দিষ্ট, জ্ঞাত ডেটাবেস সকেটে সংযোগ স্থাপন করতে চায় এমন ক্ষেত্রে একটি অপরিবর্তিত উত্তর কার্যকর। এটি আমাকে স্বতন্ত্র মাইএসকিএল ডাটাবেসে সংযোগ করতে সহায়তা করেছিল। এখানে বেশিরভাগ সমাধান কেবল এমএসকিএল ক্লায়েন্টকে পুনরায় ইনস্টল করার (বা দ্বিতীয় বা তৃতীয় ... ইত্যাদি) ইনস্টল করার পরামর্শ দেয়!
7yl4r


6

ওএসএক্স ম্যাভেরিক্স

অক্স ম্যাভেরিক্স এবং এক্সকোড বিকাশ সরঞ্জামগুলির মধ্যে পরিবর্তনের কারণে আপনি ইনস্টলেশনটিতে ত্রুটি পেতে পারেন

clang: error: unknown argument: '-mno-fused-madd' [-Wunused-command-line-argument-hard-error-in-future]

অতএব ব্যবহার করুন:

sudo ARCHFLAGS=-Wno-error=unused-command-line-argument-hard-error-in-future pip install mysql-python


5

মারিয়্যাডবি-র জন্য libmysqlclient-dev এর পরিবর্তে lib mariadb ক্লায়েন্ট-দেব ইনস্টল করুন

sudo apt-get install libmariadbclient-dev

মারিয়াডিবি

4

আপনার mysqlপ্রথমটি ইনস্টল করা উচিত :

yum install python-devel mysql-community-devel -y

তারপরে আপনি ইনস্টল করতে পারেন mysqlclient:

pip install  mysqlclient

2

কখনও কখনও ত্রুটি প্রকৃত কারণের উপর নির্ভর করে। আমাদের একটি কেস হয়েছিল যেখানে পাইথন-মাইসকিএলডিবি ডেবিয়ান প্যাকেজটির মাধ্যমে মাইএসকিএল-পাইথন ইনস্টল করা হয়েছিল।

এমন বিকাশকারী যিনি এটি জানেন না, দুর্ঘটনাক্রমে দৌড়েছিলেন pip uninstall mysql-pythonএবং তারপরে pip install mysql-pythonউপরের ত্রুটিটি দিয়ে পুনরুদ্ধার করতে ব্যর্থ হন ।

pip uninstall mysql-pythonডেবিয়ান প্যাকেজ সামগ্রীগুলি ধ্বংস করে দিয়েছিল এবং অবশ্যই pip install mysql-pythonব্যর্থ হয়েছে কারণ ডেবিয়ান প্যাকেজটির কোনও ডিভ ফাইলের প্রয়োজন নেই।

সেক্ষেত্রে সঠিক সমাধানটি apt-get install --reinstall python-mysqldbমাইএসকিএল-পাইথনকে তার মূল অবস্থায় ফিরিয়ে আনল।


2

টেরারফর্ম: হালকা ধারকটিতেও আমার একই সমস্যা ছিল। এটি আলপাইন ভিত্তিক।

সেখানে আপনাকে মারিয়াডব-দেব ইনস্টল করতে হবে:

apk add mariadb-dev

তবে এটি যথেষ্ট নয় কারণ অন্যান্য সমস্ত নির্ভরতাও মিস হয়েছে:

apk add python2 py2-pip gcc python2-dev musl-dev

2

ক্রম অনুসরণ করা।

pip install mysqlclient
sudo apt-get install python3-dev libmysqlclient-dev
pip install configparser 
sudo cp /usr/lib/python3.6/configparser.py /usr/lib/python3.6/ConfigParser.py 

তারপরে আবার এমওয়াইএসকিউএল-পাইথন ইনস্টল করার চেষ্টা করুন। আমার জন্য কাজ করেছে


1

ওএস এক্স সার্ভার 10.6.8 এ ইনস্টল করার চেষ্টা করার অনুরূপ সমস্যা ছিল। আমাকে যা করতে হয়েছিল তা এখানে। ব্যবহার:

মাইএসকিউএল-পাইথন 1.2.4b4 (উত্স) মাইএসকিউএল -5.6.19 (বাইনারি ইনস্টলার) পাইথন 2.7 (বাইনারি ইনস্টলার) দ্রষ্টব্য: ভার্চুয়ালেনভে ইনস্টল করা হচ্ছে ...

উত্স আনজিপ করুন, 'বিতরণ_সেটআপ.পি' খুলুন এবং বিতরণ সরঞ্জামের সর্বশেষতম সংস্করণটি ব্যবহার করতে ডিএএফএএল.এল.ভি. সংস্করণ সম্পাদনা করুন, যেমন:

DEFAULT_VERSION = "0.6.49"

সংরক্ষণ. 'সাইট.cfg' ফাইলটি খুলুন এবং মাইএসকিএল_কনফিগের পথটিকে আপত্তিহীন করুন যাতে এটি দেখতে কিছুটা (মাইএসকিএল_কনফিগের নিজের পথটিকে উল্লেখ করুন):

# The path to mysql_config.
# Only use this if mysql_config is not on your PATH, or you have some weird
# setup that requires it.
mysql_config = /usr/local/mysql/bin/mysql_config

এখন পরিষ্কার, বিল্ড এবং মেকিং ত্রুটি না পাওয়া 'mysql_config' দিয়ে ব্যর্থ হবে না। আশা করি এটি অন্য কাউকে তাদের পুরানো xserves ব্যবহার করার চেষ্টা করছে :-)


1

আপনার সুডো পথটি আপনার স্থানীয় পাথ সম্পর্কে জানে না ... সুপারসার মোডে যান, পাথ যুক্ত করুন এবং সেখান থেকে এটি ইনস্টল করুন।

sudo su
export PATH=$PATH:/usr/local/mysql/bin/
pip install mysql-python
exit

এবং আপনি ওএসএক্স-এ চলেছেন। এখন আপনার কাছে একটি আপডেটড গ্লোবাল অজগর রয়েছে।


1

আপনি যদি ভার্চুয়াল এনভিটিতে মাইএসকিউএল-পাইথন ইনস্টল করেন তবে আপনার পিপ সংস্করণটি পরীক্ষা করা উচিত, যদি সংস্করণটি 9.0.1 এর চেয়ে পুরানো হয় তবে দয়া করে এটি আপডেট করুন

pip install --upgrade pip

স্ট্যাকওভারফ্লো দেখুন / প্রশ্নগুলি / 757475৫২২৩/২ আমার মনে হয় না যে আপনার উত্তরটি সাহায্য করবে
লিনাস

0

MacOS মোজাভে-তে, mysql_config উপরের দিকে উল্লিখিত হিসাবে / usr / স্থানীয় / mysql / বিনের পরিবর্তে / usr / স্থানীয় / বিন / এ পাওয়া যায়, সুতরাং পথে কোনও কিছু যুক্ত করার দরকার নেই।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.