2012-02-09 50 views
5

Tenemos una instalación que actualmente ejecuta Magento CE v1.5 (se ha actualizado con el tiempo, creo que comenzó aproximadamente en 1.1). La tabla sales_flat_quote actualmente tiene más de 550,000 filas. Un gran porcentaje de estos tienen un nullcustomer_id y tienen muchos meses. No puedo pensar en una razón para mantenerlos cerca, ya que son viejos y no están asociados con un cliente. No hay forma de que nadie pueda volver a acceder a esa cotización.¿Se pueden eliminar de forma segura entradas antiguas en sales_flat_quote?

Parece extraño que Magento no parezca tener una funcionalidad incorporada para eliminar lo que parece ser información basura (tienen un cron para eliminar las comillas, pero hasta donde puedo decir, solo quita las comillas que son se establece en is_active false, que hasta donde yo sé solo ocurre cuando una cotización se convierte en una orden).

Esencialmente, lo que estoy preguntando es ... a) ¿Es seguro eliminar estas entradas? b.) ¿Cuál es la mejor manera de hacerlo (sql puro, a través del modelo, alguna opción en el panel de control que me he perdido, etc.)?

Respuesta

5

Hemos tenido varios sitios que necesitaban que se borrara la información de la orden después de pasar del desarrollo a la producción. Lo hicimos al truncar el sales_flat_* y varias otras tablas. No tuvimos ningún problema con eso. Sin embargo, recomiendo probar cualquier edición directa de la base de datos en una COPIA de su base de datos.

También puede eliminar registros de sales_flat_quote incluso si no elimina los registros de pedidos correspondientes u otras tablas en sales_flat_*. Sin embargo, probablemente solo deba eliminar registros en la tabla de cotizaciones que tengan más de 30 días de antigüedad, para que los clientes tengan acceso a los carritos recientes.

Aquí hay una publicación muy útil de los foros de Magento Commerce. http://www.magentocommerce.com/boards/viewthread/1680/P405/

+0

Después de ejecutar muchas pruebas que finalmente terminamos la supresión de todo, desde la mesa sales_flat_quote de nuestro sitio vivo usando MySQL (DELETE en vez de TRUNCATE). Hasta este momento no hemos tenido efectos adversos. –

+0

Si no truncas las otras tablas sales_flat_ *, puedes terminar con algunos comentarios en nuevos pedidos que se transfieren desde el anterior, especialmente si restableces el id auto_increment. – seanbreeden

+0

Por lo que puedo decir, todas las demás tablas relacionadas con citas tienen restricciones de claves externas cuando sea necesario. No se restableció nada más, simplemente eliminé filas de las tablas manteniendo cualquier incremento. –

Cuestiones relacionadas