Algunas de las pruebas de mi unidad tardan 10-15 segundos solo para que mysql cree las tablas. Esto parece innecesariamente largo. Tiene que crear alrededor de 50 tablas, pero eso sigue siendo solo 3 tablas por segundo. Esto es una gran molestia cuando se ejecutan pruebas unitarias una y otra vez.¿Aumenta la velocidad para la creación de tablas MySQL en Django?
Como solución temporal, he estado ejecutando mis pruebas unitarias en sqlite3. Es increíblemente rápido, pero preferiría ejecutar mis pruebas en MySQL ya que eso es lo que ejecutan mis servidores en vivo.
Para ilustrar la diferencia de velocidad, cree un proyecto nuevo. Luego ejecuta syncdb en él usando mysql. Entonces pruébalo usando sqlite3.
[~/testproject] ./manage.py syncdb
Creating table auth_permission
Creating table auth_group
Creating table auth_user
Creating table auth_message
Creating table django_content_type
Creating table django_session
Creating table django_site
Para mí, se tardan unos 2 segundos en crear las tablas anteriores en MySQL. Sqlite3 es casi instantáneo.
Estoy ejecutando mysql en mi máquina de desarrollo. Aquí está mi my.cnf.
Por favor, sugiera cualquier sugerencia o modificación que pueda pensar que pueda ayudar a acelerar el tiempo de creación de la tabla de MySQL.
¿Su tabla MySQL es local o remota? – Martin
Es local en mi mac. Consulte my.cnf si lo desea: http://pastebin.com/m69af8ba3 – Gattster
"Preferiría ejecutar mis pruebas en MySQL" ¿Por qué? ¿No confías en la capa Django ORM? –