sql >> Database >  >> RDS >> Mysql

mysql-python:een volledig stand-alone _mysql.so bouwen op Mac OS X?

Maakt niet uit, kwam er zelf achter na wat meer graven. Het is eigenlijk vrij eenvoudig; Ik zal de oplossing hier opnemen voor het geval iemand anders het nodig heeft:

  1. Haal de bron-tarball van MySQL van mysql.com (niet de platformspecifieke binaire tarball)

  2. Pak het uit, voer ./configure uit met alle opties die bij uw doeleinden passen, maar u heeft --enable-static . nodig . Voor de zekerheid heb ik --disable-shared . toegevoegd , hoewel het misschien niet strikt noodzakelijk is. Ik heb het volgende gebruikt, de jouwe kan op andere punten afwijken:

    (Wat betreft de karakterset- en sorteerparameters hier:ze kunnen in dit geval helemaal niet nodig zijn, omdat ik MySQL daarna ga verwijderen, maar aangezien alle clientverbindingen een of andere tekenset / sortering gebruiken, bedek ik mijn basis UTF-8 -wijs voor het geval de standaard karakterset/sortering die door MySQLdb wordt gebruikt, wordt beïnvloed door hoe _mysql.so is samengesteld -- wijzere mannen dan ik zouden dit op de een of andere manier willen bevestigen.)

  3. Download de nieuwste bron-tarball van mysql-python van http://pypi.python.org/pypi /MySQL-python

  4. Pak het uit, en in site.cfg set static = True en mysql_config = /usr/local/mysql-src/bin/mysql_config (of welk pad je ook kiest tijdens configure ).

  5. Voer python setup.py build uit . Sommige architectuurgerelateerde fouten kunnen aan het einde van het compileren verschijnen, maar ze kunnen worden genegeerd.

  6. Voer sudo python setup.by install uit . Dit creëert een .egg in uw site-packages directory en voegt het toe aan het easy_install.pth-bestand.

  7. Je bent klaar! U kunt nu alle sporen van MySQL verwijderen, evenals de mysql-python-bronnen. Het ei kan ongewijzigd worden gekopieerd naar andere Macs met dezelfde versie van OS X. Ik kopieer het graag naar verschillende virtuele omgevingen die zijn gemaakt met virtualenv terwijl we spreken.

Dit werkte op 10.5, ik zal het binnenkort testen op 10.6 en, als er iets anders moet, meld de resultaten hier.



  1. SQL Server op Linux

  2. Hoe de n'th hoogste waarde van een kolom te vinden?

  3. Hoe kan ik executemany gebruiken om een ​​lijst met woordenboeken in Python in MySQL in te voegen?

  4. Tabel automatisch vernieuwen zonder pagina te vernieuwen PHP MySQL