Mysql
 sql >> Database >  >> RDS >> Mysql

Django + MySQL su Mac OS 10.6.2 Snow Leopard

Alla fine ho risolto il mio problema, ovviamente con l'aiuto inconscio e cosciente dei molti post, blog e registri di posta che ho letto. Darei dei link se potessi ricordare.

In poche parole, ho reinstallato TUTTO usando MacPorts.

Dopo aver modificato ~/.bash_profile e commentato tutte le modifiche precedenti a ${PATH}, ho scaricato dmg per Snow Leopard ed ha eseguito la sua installazione.

Quindi apri il terminale ed esegui l'aggiornamento automatico.

sudo port selfupdate
sudo port install python26

Quella seconda parte, l'installazione di Python 2.6, ha richiesto un'eternità. Ma quando è stato completato, mi ha chiesto quanto segue:

To fully complete your installation and make python 2.6 the default, please run

sudo port install python_select  
sudo python_select python26

Ho fatto entrambe le cose e sono andate veloci.

Ho dimenticato di menzionare quanto sia utile il comando "ricerca porta". Ho cercato "mysql" e simili per trovare la cosa da digitare dopo "installa". Ma ho proceduto alla reinstallazione sia del client che del server per MySQL. Forse l'ho fatto in ordine inverso, ma il risultato finale ha funzionato bene.

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.

Quindi naturalmente:

sudo port install mysql5-server

Adoro il modo in cui le tante installazioni di macports ti danno feedback su cosa fare dopo. Al termine dell'installazione del server, diceva quanto segue:

******************************************************
* In order to setup the database, you might want to run
* sudo -u _mysql mysql_install_db5
* if this is a new install
******************************************************

Era una nuova installazione per me (non aveva schemi locali). Per completezza e per riferimento personale, ecco l'output dell'esecuzione di quel 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/

Quasi fatto. In precedenza nella mia "ricerca di porte" mi sono imbattuto in questo interessante porto:

py26-mysql @ 1.2.2 (python, devel, database) Interfaccia Python su mysql

Con molte, molte speranze che questo mi avrebbe fornito il pacchetto MySQLdb, l'ho installato (e lo ha fatto).

sudo port install py26-mysql

Dopodiché ho acceso l'interprete Python e ho tentato di importare MySQLdb, la cosa che mi ostacolava tutto questo 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
>>> 

Un avviso, ma ha funzionato!!

Solo un'altra cosa:

sudo port install py26-django

Dopo tutto questo sono stato finalmente in grado di avviare il mio progetto Django e di connettermi in remoto al server MySQL della mia azienda!! Potrebbe non essere stato necessario reinstallare Django utilizzando MacPorts, ma non avrei rischiato complicazioni.