sql >> Databáze >  >> RDS >> Mysql

Jednodušší nastavení pro zápis do MySQL na OSX s Pythonem

Bohužel v tuto chvíli opravdu neexistuje žádné triviální řešení. Pokud potřebujete používat MySQL s Pythonem, nejjednodušším a nejspolehlivějším řešením na OS X je nainstalovat vše – Python, MySQLdb, jakékoli další potřebné Python balíčky třetích stran, klientské knihovny MySQL a v případě potřeby serverové knihovny a nástroje MySQL. – pomocí systému správy balíčků, jako je MacPorts . Pokus o instalaci různých komponent z různých zdrojů často naráží na problémy s nekompatibilními spustitelnými soubory a knihovnami:32bitové vs 64bitové, různá rozhraní ABI (10.3 vs 10.6) atd.

Pro systém s Xcode a základním systémem MacPorts nainstalován, můžete vše sestavit a nainstalovat jediným příkazem:

sudo port install py27-mysql

Pokud potřebujete také server MySQL:

sudo port install py27-mysql mysql5-server

Všechny spustitelné soubory nainstalované na MacPorts budou standardně nainstalovány v /opt/local , takže stačí spustit věci odtud:

/opt/local/bin/python2.7

Abyste to svým uživatelům usnadnili, měli byste být schopni používat MacPorts k sestavení sady nezbytných portů jako binárních archivů a nastavení skriptu pro instalaci základního systému MacPorts a poté vašich předem sestavených balíčků. Některé informace o tom najdete v průvodci MacPorts zde . Většina z toho je však pro MacPorty 2.0.x zastaralá. Dokud nebude průvodce aktualizován, začínají informace zde . Nejbezpečnějším přístupem by bylo vytvořit jinou sadu balíčků pro každé podporované vydání OS X. Mohlo by být možné sestavit jednu sestupně kompatibilní sadu na nejstarším potřebném systému:řekněme sestavit balíčky na 10.5, které by také fungovaly na systémech 10.6 a 10.7. Abyste zabránili interferenci s instalacemi MacPorts zákazníka, můžete také sestavit základní systém MacPorts ze zdroje a změnit kořen instalace na něco jiného než /opt/local .

Idiomatičtějším přístupem na OS X by bylo použití py2app k vytvoření balíčku aplikací, který zahrnuje Python a klientské knihovny MySQL. Nevím, jestli to někdo úspěšně udělal.

Další návrh:pokud opravdu nepotřebujete vzdálený server, zvažte použití SQLite. Podpora pro SQLite je součástí standardní knihovny Pythonu.




  1. Opakující se řádky na základě hodnoty sloupce v každém řádku

  2. Sloupec závisí na hodnotě jiného sloupce

  3. Mohu použít neagregované sloupce se skupinou podle?

  4. Chyba migrace php artisan:zadán název uzlu ani název_serveru nebo neznám