ไม่พบ mysql_config เมื่อทำการติดตั้งอินเตอร์เฟสของ mysqldb python


478

ฉันพยายามรับสคริปต์ Python เพื่อให้ทำงานบนเซิร์ฟเวอร์ linux ที่ฉันเชื่อมต่อผ่านทาง ssh สคริปต์ใช้ mysqldb ฉันมีส่วนประกอบอื่น ๆ ทั้งหมดที่ฉันต้องการ แต่เมื่อฉันพยายามติดตั้ง mySQLdb ผ่าน setuptools อย่างเช่น:

python setup.py install

ฉันได้รับรายงานข้อผิดพลาดต่อไปนี้ที่เกี่ยวข้องกับmysql_configคำสั่ง

sh: mysql_config: command not found
Traceback (most recent call last):
  File "setup.py", line 15, in <module>
    metadata, options = get_config()
  File "/usr/lib/python2.5/MySQL-python-1.2.3/setup_posix.py", line 43, in get_config
    libs = mysql_config("libs_r")
  File "/usr/lib/python2.5/MySQL-python-1.2.3/setup_posix.py", line 24, in mysql_config
    raise EnvironmentError("%s not found" % (mysql_config.path,))
EnvironmentError: mysql_config not found

มีคนอื่นพบข้อผิดพลาดนี้และถ้าเป็นเช่นนั้นคุณแก้ไขได้อย่างไร / ฉันจะทำอย่างไรเพื่อติดตั้ง mysqldb ให้สำเร็จ?


1
สวัสดี @ user904542 - ฉันได้แก้ไขคำถามของคุณเพื่อหวังว่าจะทำให้กระชับและได้รับคำตอบ :) หากคุณไม่ชอบหรือต้องการให้รายละเอียดเพิ่มเติมมีลิงก์แก้ไขใต้คำถามของคุณโดยตรง สามารถใช้เพื่อย้อนกลับไปที่ต้นฉบับของคุณหรือเพิ่มการเปลี่ยนแปลงที่ฉันทำ

3
ฉันพบปัญหาเดียวกันเนื่องจากฉันติดตั้ง mysql จากแหล่งที่มา หากคุณทำเช่นนั้นให้เรียกใช้สิ่งนี้เพื่อให้ mysql_config พร้อมใช้งาน: sudo ln -s / usr / local / mysql / bin / mysql_config / usr / bin / mysql_config หรือเพิ่ม / usr / local / mysql / bin / ไปยังเส้นทางของคุณ
Thi Duong Nguyen

หากคุณติดตั้ง mysql ไว้แล้วความคิดเห็นข้างต้นโดย Thi Duong Nguyen จะแก้ปัญหาโดยการสร้าง symlink ไปยังไฟล์ mysql_config ในไดเรกทอรี / usr / bin ซึ่งอยู่ในเส้นทางที่หลามจะค้นหา
Alex Boschmans

2
เพียงทำสิ่งนี้ ------------- apt-get install python-mysqldb
shadow0359

@AlexBoschmans การเชื่อมโยงที่/usr/binไม่ถูกต้องจะusr/local/my...เห็นคำตอบของ Thi
Timo

คำตอบ:


701

mySQLdb เป็นอินเทอร์เฟซหลามสำหรับ mysql แต่ไม่ใช่ mysql เอง และเห็นได้ชัดว่า mySQLdb ต้องการคำสั่ง 'mysql_config' ดังนั้นคุณต้องติดตั้งก่อน

คุณสามารถยืนยันได้ว่าคุณทำหรือไม่ได้ติดตั้ง mysql เองโดยใช้ "mysql" จากเชลล์หรือไม่? ที่ควรให้คำตอบนอกเหนือจาก "mysql: command not found"

คุณใช้ linux รุ่นใด Mysql ได้รับการทำแพ็กเกจไว้ล่วงหน้าสำหรับลีนุกซ์ส่วนใหญ่ ตัวอย่างเช่นสำหรับ debian / ubuntu การติดตั้ง mysql นั้นง่ายเหมือน

sudo apt-get install mysql-server

mysql-config อยู่ในแพ็คเกจอื่นซึ่งสามารถติดตั้งได้ (อีกครั้งสมมติว่า debian / ubuntu):

sudo apt-get install libmysqlclient-dev

หากคุณกำลังใช้ mariadb การแทนที่เพื่อใช้ mysql ให้รัน

sudo apt-get install libmariadbclient-dev

การอ้างอิง: https://github.com/JudgeGirl/Judge-sender/issues/4#issuecomment-186542797


1
กำลังอ่านรายการแพ็กเกจ ... เสร็จสิ้นการสร้างแผนผังการพึ่งพาการอ่านข้อมูลสถานะ ... เสร็จสิ้นหมายเหตุเลือก libmysqlclient15-dev แทนที่จะเป็น libmysqlclient-dev แพคเกจบางอย่างไม่สามารถติดตั้งได้ นี่อาจหมายความว่าคุณได้ร้องขอสถานการณ์ที่เป็นไปไม่ได้หรือถ้าคุณกำลังใช้การกระจายที่ไม่เสถียรซึ่งแพ็คเกจที่จำเป็นบางอย่างยังไม่ได้ถูกสร้างหรือย้ายออกจากขาเข้า ข้อมูลต่อไปนี้อาจช่วยในการแก้ไขสถานการณ์: แพคเกจต่อไปนี้มีการพึ่งพาแบบ unmet: libmysqlclient15-dev: ขึ้นอยู่กับ: zlib1g-dev แต่จะไม่ได้รับการติดตั้ง E: แพ็คเกจที่เสียหาย
user904542

2
ควร 'sudo apt-get install mysql' ควรเป็น 'sudo apt-get install mysql-server' หรือไม่
Kohanz

4
โปรดทราบว่าสำหรับ Debian มันsudo apt-get install mysql-serverและsudo apt-get install mysql-client
Marc Juchli

2
ในที่สุดเราสามารถยอมรับได้ว่า 'pip' เป็นความล้มเหลวที่ยิ่งใหญ่หรือไม่? ข้อผิดพลาดเช่นนี้เป็นความเจ็บปวดและดูเหมือนว่าจะเกิดขึ้นกับแพ็คเกจส่วนใหญ่ Python ต้องการโซลูชันใหม่เพื่อการจัดการบรรจุภัณฑ์
Eddie Sullivan

3
สำหรับฉันใน Debian มันเป็น libmysqlclient-dev ในความเป็นจริงฉันได้ติดตั้งทั้ง libmariadbclient-dev libmysqlclient-dev
mirek

187

ฉันติดตั้งpython-mysqlบน Ubuntu 12.04 โดยใช้

pip install mysql-python

ครั้งแรกที่ฉันมีปัญหาเดียวกัน:

Not Found "mysql_config"

สิ่งนี้ใช้ได้สำหรับฉัน

$ sudo apt-get install libmysqlclient-dev

จากนั้นฉันก็มีปัญหานี้:

...
_mysql.c:29:20: error fatal: Python.h: No existe el archivo o el directorio

compilación terminada.

error: command 'gcc' failed with exit status 1

จากนั้นฉันก็ลองด้วย

apt-get install python-dev

แล้วฉันก็มีความสุข :)

pip install mysql-python
    Installing collected packages: mysql-python
      Running setup.py install for mysql-python
        building '_mysql' extension
        gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -Dversion_info=(1,2,4,'beta',4) -D__version__=1.2.4b4 -I/usr/include/mysql -I/usr/include/python2.7 -c _mysql.c -o build/temp.linux-x86_64-2.7/_mysql.o -DBIG_JOINS=1 -fno-strict-aliasing -g
        In file included from _mysql.c:44:0:
        /usr/include/mysql/my_config.h:422:0: aviso: se redefinió "HAVE_WCSCOLL" [activado por defecto]
        /usr/include/python2.7/pyconfig.h:890:0: nota: esta es la ubicación de la definición previa
        gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-Bsymbolic-functions -Wl,-z,relro build/temp.linux-x86_64-2.7/_mysql.o -L/usr/lib/x86_64-linux-gnu -lmysqlclient_r -lpthread -lz -lm -lrt -ldl -o build/lib.linux-x86_64-2.7/_mysql.so

Successfully installed mysql-python
Cleaning up...

1
ทำงานบน openSUSE ด้วยซึ่ง "libmysqlclient-dev" กลายเป็น "libmysqlclient-devel" ตอนนี้แพ็คเกจ pip ติดตั้งได้ดี ขอบคุณ
pbarill

ขอบคุณ! ใช้งานได้กับ Ubuntu 14.04.1 LTS
Krasimir

การติดตั้งส่วนหัวของ dev dev แก้ไขข้อผิดพลาด Python.h ที่หายไป ขอบคุณ
Natus Drew

3
หากใช้ python3.x ให้ทดลองใช้กับ apt-get install python3-dev
เลโกลัสบลูม

สิ่งนี้ไม่ได้ผลสำหรับฉันในวันที่ 14.04 - "E: แพ็คเกจ 'python-dev' ไม่มีตัวเลือกการติดตั้ง"
Rene Wooller

46

(เฉพาะกับ Mac OS X)

ฉันได้ลองหลาย ๆ อย่างแล้ว แต่ชุดคำสั่งเหล่านี้ใช้ได้ผลสำหรับฉันในที่สุด

  1. ติดตั้ง mysql
    brew install mysql
  2. brew unlink mysql
  3. brew install mysql-connector-c
  4. เพิ่มโฟลเดอร์ bin mysql ไปที่ PATH
    export PATH=/usr/local/Cellar/mysql/8.0.11/bin:$PATH
  5. mkdir /usr/local/Cellar/lib/
  6. สร้าง symlink
    sudo ln -s /usr/local/Cellar/mysql/8.0.11/lib/libmysqlclient.21.dylib /usr/local/Cellar/lib/libmysqlclient.21.dylib
  7. brew reinstall openssl(ที่มา )
  8. สุดท้ายติดตั้ง mysql-client
    LIBRARY_PATH=$LIBRARY_PATH:/usr/local/opt/openssl/lib/ pip install mysqlclient

อัปเดต: ในกรณีที่ไม่สามารถใช้งานได้ @vinyll แนะนำให้รันbrew link mysqlก่อนขั้นตอนที่ 8


2
เพียงแค่ใช้ขั้นตอนที่ 1-4 จากนั้นทำงาน ขอบคุณ!
kujiy

สำหรับขั้นตอนที่ 4 ใช้brew info mysqlเพื่อรับพา ธ ที่ถูกต้อง / จริงไปยังการติดตั้ง mysql จากนั้นเพื่อให้การPATHเปลี่ยนแปลงมีอยู่ให้ทำexport PATH..ใน ~ / .bash_profile ของคุณ
Gino Mempin

ขั้นตอนที่ 1-4 กับbrew link --overwrite mysql-connector-cงานใน Mac ของฉัน
Hunger

ในที่สุดมันก็ใช้ได้กับ Catalina ของฉัน ใช้ระบุ open ssl มีความสำคัญมาก
มีความสุขมากขึ้น

4
ฉันต้องทำbrew link mysqlก่อนขั้นตอนที่ 8 เพื่อให้มันทำงานได้
vinyll

37

ที่ Red Hat ฉันต้องทำ

sudo yum install mysql-devel gcc gcc-devel python-devel
sudo easy_install mysql-python

จากนั้นก็ใช้งานได้


3
ทำงานให้ฉันใน CentOS 7:yum install MySQL-python
hudolejev

2
หากคุณจำเป็นต้องติดตั้งMySQL-pythonเป็นแพคเกจหลามหรือกำลังใช้ virtualenv yum install mysql-devel; venv/bin/pip install MySQL-pythonอาจช่วยเหลือนี้:
hudolejev

2
หากคุณใช้ MariaDB บน ​​CentOS 7 ให้รันsudo yum install mariadb-develก่อนจากนั้นคุณสามารถติดตั้ง mysqlclient ได้ด้วยpip install mysqlclient
Belter

คุณได้รับ gcc-devel rpm จากที่ไหน
Fayaz

yum install mysql-develCentos 8
Diego AndrésDíaz Espinoza

33

ด้านล่างใช้ได้กับฉันใน Ubuntu 12.04 LTS:

apt-get install libmysqlclient-dev python-dev

แม้ว่ามันจะใช้ได้ดี แต่ฉันก็ยังคงทำสิ่งต่อไปนี้:

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

27

mysql-pythonผมได้รับข้อผิดพลาดเดียวกันในขณะที่พยายามที่จะติดตั้ง

นี่คือวิธีที่ฉันแก้ไขมัน

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

ปัญหาคือว่าตัวติดตั้งไม่สามารถหา mysql_config ในเส้นทางเริ่มต้น ตอนนี้มันสามารถ .. และมันใช้งานได้ ..

 15 warnings generated.
    clang -bundle -undefined dynamic_lookup -Wl,-F. build/temp.macosx-10.8-intel-2.7/_mysql.o -L/usr/local/mysql/lib -lmysqlclient_r -lz -lm -lmygcc -o build/lib.macosx-10.8-intel-2.7/_mysql.so -arch x86_64

Successfully installed mysql-python
Cleaning up...

หวังว่านี่จะช่วยได้

ขอบคุณ


ฉันมีปัญหาเดียวกันกับการติดตั้ง MySQL ในเครื่อง Mac ที่ใช้ OSX 10.9.4 (Mavericks) วิธีนี้ใช้ได้ผลสำหรับฉันเช่นกัน
Deepend

20

ฉันแก้ไขปัญหานี้ด้วยขั้นตอนต่อไปนี้:

sudo apt-get install libmysqlclient-dev
sudo apt-get install python-dev
sudo python setup.py install

1
เมื่อใช้งาน> = Debian Stretch ตรวจสอบให้แน่ใจว่าได้ติดตั้งdefault-libmysqlclient-devเนื่องจากlibmysqlclient-devแพ็คเกจปกติไม่มีตัวเลือกการติดตั้ง
Bono


11

ขั้นที่ 1: - ติดตั้ง Python3 และ Python3-dev ทั้งคู่

sudo apt-get install python3 python3-dev

ขั้นตอนที่ 2: - ติดตั้ง Python & Mysql Connector

sudo apt-get install libmysqlclient-dev

ขั้นที่ 3: - ติดตั้งไคลเอนต์ python mysql

sudo apt-get install mysqlclient

นี่จะช่วยแก้ปัญหาของคุณ


ขั้นตอนที่ 2 แก้ไขสิ่งนี้ให้ฉัน
saltchicken

นี่เป็นการแก้ไขปัญหาของฉันซึ่งทำให้ฉันติดขัดเป็นเวลา 3 ชั่วโมง .. ขอบคุณมาก !!!
Yeojin

10

หากคุณใช้งาน macOS และติดตั้ง mysql@5.7 ผ่านทาง Brew install แล้ว:

  1. brew install mysql-connector-c
  2. brew unlink mysql@5.7
  3. brew link --overwrite --dry-run mysql@5.7 ก่อนเพื่อดูว่า symlink กำลังถูกเขียนทับ
  4. brew link --overwrite --force mysql@5.7 เพื่อเขียนทับ symlink ที่เกี่ยวข้องกับ mysql ด้วย mysql@5.7
  5. pip install mysqlclient


9

MySQL-pythonแพคเกจคือการใช้mysql_configคำสั่งเพื่อเรียนรู้เกี่ยวกับmysqlการกำหนดค่าบนโฮสต์ของคุณ โฮสต์ของคุณไม่มีmysql_configคำสั่ง

แพ็คเกจไลบรารีการพัฒนา MySQL (MySQL-devel-xxx) จาก dev.mysql.com ให้คำสั่งนี้และไลบรารีที่จำเป็นสำหรับแพ็คเกจ MySQL-python MySQL-develแพคเกจที่พบในการดาวน์โหลด - พื้นที่เซิร์ฟเวอร์ชุมชน ชื่อแพ็กเกจไลบรารีการพัฒนา MySQL เริ่มต้นด้วยMySQL-develและแตกต่างกันไปตามเวอร์ชัน MySQL และแพลตฟอร์มลินุกซ์ (เช่นMySQL-devel-5.5.24-1.linux2.6.x86_64.rpm)

โปรดทราบว่าคุณไม่จำเป็นต้องติดตั้งเซิร์ฟเวอร์ mysql


8

แพ็คเกจ libmysqlclient-dev เลิกใช้แล้วดังนั้นใช้คำสั่งด้านล่างเพื่อแก้ไข

แพ็กเกจ libmysqlclient-dev ไม่พร้อมใช้งาน แต่ถูกอ้างถึงโดยแพ็กเกจอื่น นี่อาจหมายความว่าแพ็คเกจขาดหายไปล้าสมัยหรือมีอยู่ในแหล่งอื่นเท่านั้น

sudo apt-get install default-libmysqlclient-dev



5

สำหรับ Alpine Linux:

$ apk add mariadb-dev mariadb-client mariadb-libs

MariaDB เป็นการนำมาใช้แทน MySQLและกลายเป็นมาตรฐานใหม่ของ Alpine 3.2 ดูhttps://bugs.alpinelinux.org/issues/4264


1
ซึ่งทำให้ภาพอัลไพน์ของฉันเกือบ 500MiB ฉันมาอัลไพน์สำหรับขนาดภาพที่เล็กลง
ospider

ฉันต้องติดตั้ง python3-dev สำหรับ lib เพื่อสร้างด้วย
ospider

4

ฉันคิดว่าบรรทัดต่อไปนี้สามารถดำเนินการได้บนสถานี

 sudo ln -s /usr/local/zend/mysql/bin/mysql_config /usr/sbin/

ไดเร็กทอรี mysql_config นี้ใช้สำหรับเซิร์ฟเวอร์ zend บน MacOSx คุณสามารถทำได้สำหรับ linux เช่นบรรทัดต่อไปนี้

sudo ln -s /usr/local/mysql/bin/mysql_config /usr/sbin/

นี่เป็นไดเรกทอรีเริ่มต้น linux mysql


4

ฉันมีปัญหานี้และแก้ไขได้หากเพิ่ม symlink ไป mysql_configให้

ฉันได้ติดตั้ง mysql กับ homebrew และเห็นสิ่งนี้ในผลลัพธ์

Error: The `brew link` step did not complete successfully

ขึ้นอยู่กับว่าคุณจะได้รับmysqlมันจะอยู่ในสถานที่ที่แตกต่างกัน ในกรณีของฉัน/usr/local/Cellar/mysql
เมื่อคุณรู้ว่ามันอยู่ที่ไหนคุณควรจะสามารถเชื่อมโยงสัญลักษณ์ไปยังที่หลามกำลังมองหามัน /usr/local/mysql

สิ่งนี้ใช้ได้สำหรับฉัน

ln -s /usr/local/Cellar/mysql/<< VERSION >>/bin/mysql_config   /usr/local/mysql/bin/mysql_config

4

ผมมีปัญหาเดียวกัน. ฉันแก้ไขได้โดยทำตามบทช่วยสอนนี้เพื่อติดตั้ง Python กับ python3-dev บน Ubuntu 16.04:

sudo apt-get update
sudo apt-get -y upgrade
sudo apt-get install -y python3-pip
sudo apt-get install build-essential libssl-dev libffi-dev python3-dev

และตอนนี้คุณสามารถตั้งค่าสภาพแวดล้อมเสมือนจริงของคุณ:

sudo apt-get install -y python3-venv
pyvenv my_env
source my_env/bin/activate


2

sudo apt-get install python-mysqldb

Python 2.5 หรือไม่ ดูเหมือนว่าคุณกำลังใช้เซิร์ฟเวอร์ Ubuntu รุ่นเก่ามาก (Hardy 8.04?) - โปรดยืนยันว่าใช้เซิร์ฟเวอร์ Linux รุ่นใด

python-mysql ค้นหาบนฐานข้อมูลแพคเกจ ubuntu

ข้อมูลเพิ่มเติมบางส่วน:

จาก README ของ mysql-python -

Red Hat Linux .............

MySQL-python บรรจุล่วงหน้าใน Red Hat Linux 7.x และใหม่กว่า ซึ่งรวมถึง Fedora Core และ Red Hat Enterprise Linux คุณสามารถสร้างแพ็คเกจ RPM ของคุณเองตามที่อธิบายไว้ข้างต้น

Debian GNU / Linux ................

บรรจุเป็นpython-mysqldb_ ::

# apt-get install python-mysqldb

หรือใช้ Synaptic

.. _ python-mysqldb: http://packages.debian.org/python-mysqldb

อูบุนตู ......

เหมือนกับ Debian

เชิงอรรถ: ถ้าคุณใช้การกระจายเซิร์ฟเวอร์ที่เก่ากว่า Ubuntu 10.04 จริงๆแสดงว่าคุณไม่ได้รับการสนับสนุนอย่างเป็นทางการและควรอัปเกรดเร็วกว่าในภายหลัง


ฉันสามารถยืนยันสำหรับ Debian 10 sudo apt-get install python-mysqldb
Tedo Vrbanec

นี่คือทั้งหมดที่คุณต้องทำ: dev.mysql.com/doc/connector-python/en/…
Abhinandan Dubey

2

วิธีนี้ใช้สำหรับผู้ที่รู้ว่าติดตั้ง Mysql แล้ว แต่ยังไม่พบ mysql_config สิ่งนี้จะเกิดขึ้นหากการติดตั้ง python ไม่พบ mysql_config ในเส้นทางของระบบของคุณซึ่งส่วนใหญ่จะเกิดขึ้นหากคุณทำการติดตั้งผ่าน. dmg Mac Package หรือติดตั้งที่เส้นทางที่กำหนดเอง วิธีที่ง่ายที่สุดและรับรองโดย MySQLdb คือการเปลี่ยนsite.cfg ค้นหา mysql_config ซึ่งอาจอยู่ใน/ usr / local / mysql / bin /และเปลี่ยนตัวแปรคือmysql_configเช่นเดียวกับด้านล่างและเรียกใช้การติดตั้งอีกครั้ง อย่าลืมยกเลิกการแสดงความคิดเห็นโดยลบ "#"

เปลี่ยนบรรทัดด้านล่าง

"#mysql_config = / usr / local / bin / mysql_config"

ถึง

"mysql_config = / usr / local / mysql / bin / mysql_config"

ขึ้นอยู่กับเส้นทางในระบบของคุณ

โดยวิธีที่ฉันใช้การติดตั้งหลามหลังจากเปลี่ยนsite.cfg

sudo /System/Library/Frameworks/Python.framework/Versions/2.7/bin/python setup.py ติดตั้ง


2

จนถึงตอนนี้โซลูชันทั้งหมด (Linux) ต้องการsudoหรือสิทธิ์ในการติดตั้ง sudoนี่คือวิธีการแก้ปัญหาหากคุณไม่ได้มีสิทธิและไม่มีราก (ไม่sudo apt install ...):

  1. ดาวน์โหลดไฟล์. deb จาก libmysqlclient-dev เช่นจากมิเรอร์นี้
  2. นำทางไปยังไฟล์ที่ดาวน์โหลดและเรียกใช้dpkg -x libmysqlclient-dev_<version tag>.deb .ซึ่งจะแตกโฟลเดอร์ที่เรียกว่าusrนี้จะแยกโฟลเดอร์ที่เรียกว่า
  3. Symlink ./usr/bin/mysql_configไปยังที่ที่คุณพบ$PATH:

    ln -s `pwd` /usr/bin/mysql_config FOLDER_IN_YOUR_PATH

  4. มันควรจะสามารถค้นหา mysql_config

ทดสอบบน Ubuntu 18.04


ใช้งานได้ใน CentOS 7 หรือไม่ สมมติว่าฉันไม่มีการเข้าถึงรูทหรือติดตั้ง dpkg ฉันจะเข้าหามันได้อย่างไร?
Sohil

ไม่จำเป็นต้องรูทตราบใดที่คุณทำงานในสภาพแวดล้อมเสมือนของคุณเอง
BlackBear

2

สำหรับ macOS Mojave จำเป็นต้องมีการกำหนดค่าเพิ่มเติมสำหรับคอมไพเลอร์เพื่อค้นหาopensslคุณอาจต้องตั้งค่า:

export LDFLAGS="-L/usr/local/opt/openssl/lib"
export CPPFLAGS="-I/usr/local/opt/openssl/include"

2

ฉันคิดว่าวิธีที่สะดวกที่สุดในการแก้ปัญหานี้ในปี 2020 คือการใช้แพ็คเกจหลามอื่น เราไม่จำเป็นต้องติดตั้งซอฟต์แวร์ไบนารีอื่น ๆ

ลองสิ่งนี้

pip install mysql-connector-python

แล้ว

import mysql.connector

mydb = mysql.connector.connect(
          host="",
          user="",
          passwd="",
          database=""
          )      
cursor = mydb.cursor( buffered=True)
cursor.execute('show tables;')
cursor.execute('insert into test values (null, "a",10)')
mydb.commit()
mydb.disconnect()


1

ฉันพบปัญหาเดียวกันเพียงเพิ่มเส้นทางที่ * mysql_config * อาศัยอยู่กับตัวแปรสภาพแวดล้อม PATH และใช้งานได้สำหรับฉัน



1

ในฐานะที่เป็นข้อผิดพลาดที่แท้จริงคือ

gcc ... -I/usr/include/python2.7 ...

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

และถ้าคุณไม่สามารถติดตั้งแพ็กเกจ python-dev หรือ python-devel คุณสามารถดาวน์โหลดไฟล์เก็บถาวรด้วยแหล่งไพ ธ อนรุ่นที่ต้องการได้จากhttp://hg.python.org/และวางไฟล์ส่วนหัวไว้ในโฟลเดอร์ที่เหมาะสมสำหรับการรวม


1

เพียงพิมพ์:

$ sudo apt-get install python-dev
$ venv/bin/pip install MySQL-python

วิธีนี้จะช่วยแก้ปัญหานี้ได้


3
หากคุณได้รับข้อผิดพลาดกับ mysql_config ให้ทำดังนี้:sudo apt-get install libmysqlclient-dev
Luciano D. Mota

1

ใน CentOS 7 ควรทำสิ่งต่อไปนี้:

#step1:install mysql 
https://dev.mysql.com/doc/mysql-yum-repo-quick-guide/en/

#step2:
sudo yum install mysql-devel
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.