Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Django + MySQL no Mac OS 10.6.2 Snow Leopard


Eu finalmente resolvi meu próprio problema, é claro, com a ajuda subconsciente e consciente de muitas postagens, blogs e registros de e-mail que li. Eu daria links se eu pudesse lembrar.

Em poucas palavras, eu reinstalei TUDO usando MacPorts.

Depois de editar ~/.bash_profile e comentar todas as modificações anteriores em ${PATH}, baixei o arquivo dmg para Snow Leopard e percorreu sua instalação.

Em seguida, abri o terminal e executei a atualização automática.
sudo port selfupdate
sudo port install python26

Essa segunda parte, instalar o Python 2.6, demorou uma eternidade. Mas quando foi concluído, ele me alertou com o seguinte:
To fully complete your installation and make python 2.6 the default, please run

sudo port install python_select  
sudo python_select python26

Eu fiz os dois e eles foram rápidos.

Esqueci de mencionar o quão útil é o comando 'port search'. Eu procurei por 'mysql' e similares para encontrar o que digitar após 'instalar'. Mas continuei com a reinstalação do cliente e do servidor para o MySQL. Talvez eu tenha feito isso na ordem inversa, mas o resultado final funcionou bem.
sudo port install mysql5
...
--->  Installing mysql5 @5.1.41_0
The MySQL client has been installed.
If you also want a MySQL server, install the mysql5-server port.

Então naturalmente:
sudo port install mysql5-server

Eu amo como tantas das instalações do macports dão feedback sobre o que fazer a seguir. No final da instalação do servidor, ele disse o seguinte:
******************************************************
* In order to setup the database, you might want to run
* sudo -u _mysql mysql_install_db5
* if this is a new install
******************************************************

Foi uma nova instalação para mim (não tinha esquemas locais). Para completar e para minha própria referência, aqui está a saída da execução desse comando:
Installing MySQL system tables...
OK
Filling help tables...
OK

To start mysqld at boot time you have to copy
support-files/mysql.server to the right place for your system

PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
To do so, start the server, then issue the following commands:

/opt/local/lib/mysql5/bin/mysqladmin -u root password 'new-password'
/opt/local/lib/mysql5/bin/mysqladmin -u root -h iMac.local password 'new-password'

Alternatively you can run:
/opt/local/lib/mysql5/bin/mysql_secure_installation

which will also give you the option of removing the test
databases and anonymous user created by default.  This is
strongly recommended for production servers.

See the manual for more instructions.

You can start the MySQL daemon with:
cd /opt/local ; /opt/local/lib/mysql5/bin/mysqld_safe &

You can test the MySQL daemon with mysql-test-run.pl
cd /opt/local/mysql-test ; perl mysql-test-run.pl

Please report any problems with the /opt/local/lib/mysql5/bin/mysqlbug script!

The latest information about MySQL is available at http://www.mysql.com/
Support MySQL by buying support/licenses from http://shop.mysql.com/

Quase pronto. Anteriormente, na minha 'pesquisa de portas', me deparei com esta porta interessante:

py26-mysql @1.2.2 (python, devel, bancos de dados) Interface Python para mysql

Com muita, muita esperança de que isso me fornecesse o pacote MySQLdb, eu o instalei (e o fez).
sudo port install py26-mysql

Depois disso, acionei o interpretador python tentando importar o MySQLdb, a coisa que estava no meu caminho todo esse tempo.
iMac:~ drhoden$ python
Python 2.6.4 (r264:75706, Dec 15 2009, 18:00:14) 
[GCC 4.2.1 (Apple Inc. build 5646) (dot 1)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import MySQLdb
/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/MySQLdb/__init__.py:34: DeprecationWarning: the sets module is deprecated from sets import ImmutableSet
>>> 

Um aviso, mas funcionou!!

Só mais uma coisa:
sudo port install py26-django

Depois de tudo isso, finalmente consegui ativar meu projeto Django e me conectar remotamente ao servidor MySQL da minha empresa!! Pode não ter sido necessário reinstalar o Django usando MacPorts, mas eu não iria arriscar complicações.