optimizar base datos prestashop

Optimizar la Base de Datos de Prestashop

Mantener la base de datos de nuestra tienda PrestaShop en producción es una tarea muy importante, principalmente una vez que la Tienda pasa a ser accesible a nivel global en Internet y periódicamente, cada cierto tiempo, para mantener las tablas en optimas condiciones y no dejar que algunas se llenen de registros innecesarios que solo contribuirán a que el sitio funcione más lento.

Si tu objetivo es vender y no hacer analítica de ventas a un nivel importante, para eso ya tienes excelentes herramientas como Google Analitycs que no recargan tu sitio con más módulos, te interesa aligerar el peso de determinadas tablas de tu base de datos que son verdaderos acumuladores de datos.

La mayoría de los CMS, incluido Prestashop, usados en tiendas online utilizan una base de datos MYSQL para almacenar información como pedidos, productos, visitantes, carritos abandonados, errores o intentos de acceso, etc, que hace que nuestra base de datos crezca desmesuradamente, y finalmente ocasione penalizaciones en el rendimiento.

Un sitio web PrestaShop con un tiempo ya en producción puede tener una base de datos con un peso importante, pudiendo rondar los 200 MB o más si tenemos muchos productos y principalmente si las tablas de estadísticas han crecido mucho. Adelgazar esta base de datos y dejarla en la mitad de su peso puede ayudarte a que las consultas devuelvan resultados de forma más rápida, ¿quieres saber como?…vamos a verlo juntos.

Habitualmente en PrestaShop la tablas que más registros van acumulando suelen ser:

ps_guest
ps_connections
ps_connections_page
ps_connections_source
ps_page_viewed

Previa copia de seguridad “siempre” es posible reducir el peso de estas tablas, ejecutando sentencias (de una en una) SQL como las siguientes, desde phpMyAdmin, SQL:

truncate table ps_page_viewed;
truncate table ps_connections_page;
truncate table ps_connections_source;
truncate table ps_connections;
truncate table ps_guest;

Otras tablas que afectan a los carritos, donde suelen acumularse consultas de carritos abandonados son:

ps_cart_product;
ps_cart;
ps_cart_discount;

Con las siguientes sentencias SQL podemos aliviar estos datos:

truncate table ps_cart_product;
truncate table ps_cart;
truncate table ps_cart_discount;

Recordar siempre hacer algún trabajo de recuperación, de forma que podamos conseguir alguna conversión con los datos obtenidos, la forma de llevar a cabo esta tarea podría ser mediante cupones de descuento, una campaña de mailing o una captación a través de redes sociales.

Otra tabla que podemos limpiar es la referente a las busquedas internas que hacen nuestros clientes mediante el buscador de nuestra tienda. Para ello ejecutamos la sentencia;

truncate table ps_search_index;

Si ahora intentamos realizar una búsqueda no obtendremos resultado alguno, por lo que debemos proceder a su regeneración.

Vamos a nuestro panel de administracion y en Preferencias -> Buscar y hacemos click en Reconstruir el índice completo. Si hemos dado de baja algún producto nos lo quitará automáticamente del buscador, tendremos de nuevo un índice de búsqueda actualizado de los productos actuales de nuestra tienda.

Y por último vamos a limpiar la base de datos referente a las páginas no encontradas de nuestra tienda, los famosos errores 404;

truncate table ps_pagenotfound;

Todas estas acciones de limpieza no afecta en la velocidad de carga de una tu tienda PrestaShop, pero si alivia el peso de la base de datos.

Insistimos en que es muy importante realizar estas tareas con precaución y siempre previa copia de seguridad de la base de datos. Una opción es exportar la base de datos, crear una base de datos nueva, importar la base de datos exportada y hacer las pruebas de sentencias SQL en la copia de la base de datos, de forma que puedas evaluar cuanto se reduce la misma y si luego su funcionamiento sigue siendo el correcto.

No confundir este tipo de optimizaciones de tablas específicas de PrestaShop con la reparación de bases de datos o tablas y registros concretos de una base de datos frente a errores o problemas.

Existen módulos, algunos de ellos gratuitos, que permiten llevar a cabo una optimización de la base de datos de una Tienda de PrestaShop, y de los cuales puedes hacer uso sin consideras que la optimización manual comporta para ti una tarea compleja.

Fuente: Webempresa

About the author: Franky Martin (ADMIN)

Leave a Reply

Your email address will not be published.

dieciocho − 3 =