Какую базу данных проще всего развернуть с помощью django в Mac OS X? - PullRequest
1 голос
/ 18 июня 2011

Я пишу (надеюсь) небольшой проект, который в конечном итоге будет распространяться в двоичной форме для Mac OS.Я ищу способ развернуть эту вещь с базой данных, которая не имеет полностью испорченного процесса установки драйвера.Драйверу mysql требуется двоичный драйвер mysqldb, который очень удобен для компиляции, так же как и двоичный драйвер postgresql.

Я искал драйверы mysql для чистого python и нашел pymysql.Есть ли способ развернуть это как драйвер?Кто-нибудь может предложить способ легко распространять эти вещи?

Ответы [ 2 ]

4 голосов
/ 18 июня 2011

sqlite отлично справится с этой задачей, если не слишком интенсивно использовать базу данных.Поддержка по умолчанию в Django и самое лучшее: никаких дополнительных зависимостей не требуется.

0 голосов
/ 19 июня 2011

Если вы установите Python с помощью homebrew, вы обнаружите, что многие проблемы с бинарными драйверами просто исчезнут.

Homebrew: https://github.com/mxcl/homebrew

После того, как вы установили homebrew,установите python 2.7, используя:

brew install python --framework

Затем вы захотите изменить символическую ссылку OSX для текущей версии Python, чтобы она указывала на ссылку из homebrew.Моя символическая ссылка выглядит так:

/System/Library/Frameworks/Python.framework/Versions/Current -> /usr/local/Cellar/python/2.7.1/Frameworks/Python.framework/Versions/Current

Я не могу вспомнить, пришлось ли мне что-то делать, в основном цель такова, что когда вы запускаете python из терминала, он указывает на тот, что в / usr /local / Cellar.

Затем вы захотите easy_install pip, снова убедившись, что он использует правильную версию python.

Теперь вы сможете легко устанавливать пакеты python, даже те, которыеиспользовать двоичные файлыВот результаты свежего virtualenv:

(test)andrew-ingrams-imac:test andy$ 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

    warning: no files found matching 'MANIFEST'
    warning: no files found matching 'ChangeLog'
    warning: no files found matching 'GPL'
Installing collected packages: MySQL-python
  Running setup.py install for MySQL-python
    building '_mysql' extension
    /usr/bin/cc -fno-strict-aliasing -fno-common -dynamic -O3 -march=core2 -msse4.1 -w -pipe -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -Dversion_info=(1,2,3,'final',0) -D__version__=1.2.3 -I/usr/local/mysql/include -I/usr/local/Cellar/python/2.7.1/Frameworks/Python.framework/Versions/2.7/include/python2.7 -c _mysql.c -o build/temp.macosx-10.4-x86_64-2.7/_mysql.o -Os -g -fno-common -fno-strict-aliasing -arch x86_64
    /usr/bin/cc -L/usr/local/Cellar/readline/6.2.1/lib -bundle -undefined dynamic_lookup -L/usr/local/Cellar/readline/6.2.1/lib build/temp.macosx-10.4-x86_64-2.7/_mysql.o -L/usr/local/mysql/lib -lmysqlclient_r -lpthread -o build/lib.macosx-10.4-x86_64-2.7/_mysql.so -arch x86_64

    warning: no files found matching 'MANIFEST'
    warning: no files found matching 'ChangeLog'
    warning: no files found matching 'GPL'
Successfully installed MySQL-python
Cleaning up...
(test)andrew-ingrams-imac:test andy$ python
Python 2.7.1 (r271:86832, May 19 2011, 20:48:36) 
[GCC 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2335.9)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import MySQLdb
>>> 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...