{"id":594,"date":"2016-06-22T16:00:36","date_gmt":"2016-06-22T20:00:36","guid":{"rendered":"http:\/\/www.chaosrequiem.com\/main\/?p=594"},"modified":"2017-03-08T21:04:29","modified_gmt":"2017-03-09T01:04:29","slug":"optimizar-base-de-datos-mysql","status":"publish","type":"post","link":"https:\/\/chaosrequiem.com\/main\/optimizar-base-de-datos-mysql\/","title":{"rendered":"Como optimizar una base de datos Mysql"},"content":{"rendered":"<p>Hace unas semanas tuve la tarea de optimizar una base de datos mysql, as\u00ed que hoy voy a compartir\u00a0mi experiencia y describir lo que hice\u00a0para lograrlo.<\/p>\n<p>Cosas de las que <strong>NO voy a hablar\u00a0<\/strong>y que debes revisar antes de seguir:<\/p>\n<ul>\n<li><strong>Problemas de espacio con la\u00a0base de datos:<\/strong>\u00a0se supone que si tu\u00a0p\u00e1gina web est\u00e1 en continuo crecimiento, debes tener un buen plan en tu\u00a0hosting para no tener que preocuparte por problemas de espacio en disco. En mi caso, el sitio en el que trabaj\u00e9 contaba con un buen plan de VPS (Servidor Virtual Privado), as\u00ed que el espacio no era\u00a0el problema (la base de datos podr\u00eda pesar tantos\u00a0GB como quisiera).<\/li>\n<li><strong>Normalizaci\u00f3n de DB:\u00a0<\/strong>si has aplicado algo de ingenier\u00eda en tu base de datos\u00a0desde el principio, no tendr\u00edas que estar viendo este detalle ahora, salvo por supuesto\u00a0que se haya realizado grandes cambios en el sitio y se tenga que &#8220;reestructurar&#8221; la base de datos. En cualquier caso, no se hablar\u00e1 de esto aqu\u00ed porque hay mucha informaci\u00f3n en internet al respecto.<\/li>\n<li><strong>Problemas de servidor:<\/strong>\u00a0si eres el administrador del sitio, debes asegurarte que el problema no tiene nada que ver con tu servidor o servicio de hosting. Por ejemplo, hostings como\u00a0Godaddy son conocidos por ser de los peores del mercado (aun con la enorme publicidad con la que cuenta), as\u00ed que antes de realizar cualquier acci\u00f3n brusca en tu sitio web, cerci\u00f3rate primero que el problema no sea \u00e9se.<\/li>\n<li><strong>Crear un backup de tu base de datos:\u00a0<\/strong>Esto deber\u00eda estar de forma impl\u00edcita desde el comienzo de cualquier art\u00edculo o tutorial. Sin importar qu\u00e9 &#8220;optimizaci\u00f3n&#8221; vayas a realizar, o qu\u00e9 tan confiable sea\u00a0el art\u00edculo que te indique cambios a realizar\u00a0en una base de datos, por al amor de Dios <strong>SIEMPRE haz una copia de respaldo (backup) <\/strong>de toda tu base de datos.<\/li>\n<\/ul>\n<hr \/>\n<h2>Entonces, \u00bfcu\u00e1l fue exactamente el problema que tuve?<\/h2>\n<p>El sitio web en el que trabaj\u00e9 era <strong>enorme<\/strong> y\u00a0las <strong>tablas<\/strong> donde se guardaban los detalles de las <strong>\u00f3rdenes de compra<\/strong>, simplemente <strong>no dejaban de crecer<\/strong>. La cantidad de\u00a0tuplas que almacenaba cada tabla iba desde <strong>70k<\/strong> hasta <strong>300k<\/strong>,\u00a0las cuales\u00a0continuaban aumentando cada d\u00eda.<\/p>\n<p>Esto ocasionaba que el <strong>sitio web se colgara<\/strong>\u00a0o se pusiera <strong>muy\u00a0lento<\/strong> cuando comenzaban a ejecutarse <strong>consultas relacionadas a las compras<\/strong>, como por ejemplo: historial de compras del cliente, estad\u00edsticas de la tienda, reportes diversos, etc.<\/p>\n<p>En algunos casos lo\u00a0recomendable ser\u00eda simplemente subir a un plan superior de VPS, pero despu\u00e9s de analizar su base de datos me di cuenta que aquello no servir\u00eda de nada y el sitio seguir\u00eda lento.<\/p>\n<p>Quiz\u00e1s alguno de ustedes se haya hecho la pregunta:<\/p>\n<p><span style=\"color: #000080;\"><em>Hey, si tu problema solamente radica en las\u00a0\u00f3rdenes de compra, <strong>\u00bfentonces\u00a0por qu\u00e9 simplemente no eliminaste las \u00f3rdenes de compras viejas?\u00a0<\/strong><\/em><\/span><\/p>\n<p>Lastimosamente eso no se puede realizar en la mayor\u00eda de los casos, ya que como dije antes toda esa informaci\u00f3n es de <strong>bastante utilidad<\/strong>\u00a0para el sitio al sacar <strong>historiales<\/strong> y <strong>estad\u00edsticas<\/strong> diversas, ya sea para los <strong>clientes<\/strong> como tambi\u00e9n para los <strong>administradores<\/strong> del sitio. Adem\u00e1s, las bases de datos est\u00e1n hechas precisamente para eso: <strong>ALMACENAR DATOS<\/strong>, de modo que no se deber\u00eda ELIMINAR nada, salvo por supuesto &#8220;informaci\u00f3n basura&#8221; que realmente no tenga utilidad alguna en el sitio.<\/p>\n<p><span style=\"color: #000080;\"><span style=\"color: #000000;\">Bueno, ya le di demasiadas vueltas al asunto.<\/span> <strong>AHORA VAYAMOS AL GRANO!<\/strong><\/span><\/p>\n<hr \/>\n<h2>Soluci\u00f3n<\/h2>\n<p>Despu\u00e9s de buscar bastante por la red y preguntar en foros, finalmente logr\u00e9\u00a0<strong>optimizar la base de datos<\/strong>\u00a0realizando \u00fanicamente\u00a0<strong>dos acciones<\/strong>:<\/p>\n<h3>1) Cambiar el motor de almacenamiento a InnoDB<\/h3>\n<p>La base de datos del sitio estaba usando el motor de almacenamiento\u00a0<strong>MyISAM,<\/strong>\u00a0el cual ten\u00eda entendido\u00a0proporcionaba una <strong>alta velocidad de acceso<\/strong>, sobre todo cuando solamente se necesita &#8220;leer datos&#8221; y no as\u00ed en la &#8220;escritura&#8221;. As\u00ed que como el sitio se lenteaba al leer datos para los reportes y estad\u00edsticas, pues pens\u00e9 que el problema no ten\u00eda que ver con MyISAM.<\/p>\n<p>Sin embargo llegu\u00e9 a descubrir que lo m\u00e1s recomendable era siempre manejar InnoDB,\u00a0aunque\u00a0lo m\u00e1s experimentados en el tema saben en qu\u00e9 casos conviene mejor usar MyISAM.\u00a0En todo caso, si no sabes qu\u00e9 motor de almacenamiento usar en mysql, <strong>ve siempre por InnoDB<\/strong>.<\/p>\n<p>Personalmente al principio cre\u00ed que iba a ser mucho m\u00e1s lento el sitio con InnoDB, pero todas mis dudas y temores fueron disueltos\u00a0cuando apliqu\u00e9 la \u00faltima acci\u00f3n que describo abajo.<\/p>\n<h3>2) Agregar una gran cantidad de \u00edndices<\/h3>\n<p>He aqu\u00ed el factor m\u00e1s importante para\u00a0optimizar una base de datos&#8230; <span style=\"text-decoration: underline;\"><strong>la creaci\u00f3n de \u00edndices<\/strong><\/span>.<\/p>\n<p>Si bien ya sab\u00eda que los \u00edndices agilizan bastante las\u00a0consultas, me di cuenta de mi error al percatarme de que no ten\u00eda una buena cantidad\u00a0de \u00edndices en mi base de datos.<\/p>\n<p>Sin entrar en muchos detalles, les dir\u00e9 que existen varios\u00a0tipos de \u00edndices, pero de momento solo\u00a0nos interesar\u00e1n los siguientes\u00a0dos:<\/p>\n<ul>\n<li><strong>\u00cdndices de claves primarias:\u00a0<\/strong>es decir el\u00a0<em><strong>primary key<\/strong><\/em>\u00a0con el que estoy seguro que cuentan todas sus bases de datos. No pueden tener valores duplicados.<\/li>\n<li><strong>\u00cdndices ordinarios:\u00a0<\/strong>aquellos que son creados de forma &#8220;manual&#8221; y que\u00a0no tienen nada que ver con la llave primaria de la tabla. Estos \u00edndices pueden tener valores duplicados siempre y cuando su campo no tenga el atributo UNIQUE.<\/li>\n<\/ul>\n<p>Para optimizar nuestra base de datos, tendremos que crear una buena cantidad de \u00edndices &#8220;ordinarios&#8221; para agilizar nuestras\u00a0consultas.<\/p>\n<hr \/>\n<h2>\u00bfY c\u00f3mo creo \u00edndices para mi tabla?<\/h2>\n<p>Lo primero que debes hacer es\u00a0<strong>IDENTIFICAR<\/strong>\u00a0qu\u00e9\u00a0campos deber\u00edan\u00a0tener \u00edndices. Esto debe ser analizado para cada tabla. Por lo general deber\u00edas\u00a0crear un \u00edndice a todo campo o columna que trabaje como <strong>llave for\u00e1nea<\/strong> o\u00a0<strong>foreign key<\/strong>. Es decir, aquellos campos que sirven para conectar tus tablas\u00a0en consultas matriciales.<\/p>\n<p>Por ejemplo, si tengo la tabla <strong>&#8220;order_detail&#8221;<\/strong> y uno de sus campos es <strong>&#8220;customer_id&#8221;<\/strong>, entonces obviamente\u00a0que a trav\u00e9s del campo &#8220;customer_id&#8221; puedo obtener informaci\u00f3n de una tabla <strong>&#8220;customer_information&#8221; <\/strong>realizando una consulta matricial.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-615\" src=\"http:\/\/www.chaosrequiem.com\/main\/wp-content\/uploads\/2016\/06\/indices_tabla_ejemplo.png\" alt=\"indices_tabla_ejemplo\" width=\"647\" height=\"324\" srcset=\"https:\/\/chaosrequiem.com\/main\/wp-content\/uploads\/2016\/06\/indices_tabla_ejemplo.png 647w, https:\/\/chaosrequiem.com\/main\/wp-content\/uploads\/2016\/06\/indices_tabla_ejemplo-300x150.png 300w, https:\/\/chaosrequiem.com\/main\/wp-content\/uploads\/2016\/06\/indices_tabla_ejemplo-600x300.png 600w, https:\/\/chaosrequiem.com\/main\/wp-content\/uploads\/2016\/06\/indices_tabla_ejemplo-400x200.png 400w\" sizes=\"auto, (max-width: 647px) 100vw, 647px\" \/><\/p>\n<p>Por lo tanto, yo deber\u00eda <strong>agregar un \u00edndice<\/strong> para este campo realizando la siguiente consulta:<\/p>\n<pre class=\"brush: sql; title: ; notranslate\" title=\"\">\r\n\r\nALTER TABLE `order_detail` ADD INDEX ( `customer_id` ) ;\r\n\r\n<\/pre>\n<p>Y listo!\u00a0El \u00edndice se crear\u00e1 correctamente en la base de datos. Esta consulta\u00a0s\u00f3lo debe realizarse una sola vez, similar a la creaci\u00f3n de <strong>llaves primarias<\/strong>.<\/p>\n<p>Esto nos servir\u00e1 de mucho cuando se ejecute una consulta\u00a0que involucren las tablas &#8220;order_detail&#8221; y &#8220;customer_information&#8221;, ya que gracias al \u00edndice creado ahora se ejecutar\u00e1 <strong>mucho m\u00e1s r\u00e1pido<\/strong> sin importar la cantidad de tuplas que tengan dichas tablas (lean acerca de <strong>\u00edndices<\/strong> si quieren saber el por qu\u00e9).<\/p>\n<p>Ahora s\u00f3lo toca <strong>crear los \u00edndices<\/strong> que vean convenientes <strong>para cada tabla<\/strong>, ya que uno solo no basta.<\/p>\n<p>Por ejemplo, en la misma\u00a0tabla <strong>&#8220;order_detail&#8221;<\/strong> yo podr\u00eda\u00a0tener campos como <strong>&#8220;address_id&#8221;, &#8220;shipping_id&#8221;, &#8220;coupon_id&#8221;<\/strong>, etc. de modo que me corresponder\u00eda crear un \u00edndice para cada campo mencionado. Luego deber\u00eda\u00a0ponerme a examinar cada tabla de la base de datos y crear los \u00edndices respectivos.<\/p>\n<p>Y eso es todo. Una vez hayan agregado una buena cantidad de \u00edndices (si su DB es grande), ver\u00e1n los\u00a0<strong>GRANDES RESULTADOS\u00a0<\/strong>al volver a navegar en\u00a0su sitio web o sistema:\u00a0historiales, reportes, estad\u00edsticas y toda informaci\u00f3n extensa ser\u00e1 ejecutada en un <strong>abrir y cerrar de ojos<\/strong>.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-596\" src=\"http:\/\/www.chaosrequiem.com\/main\/wp-content\/uploads\/2016\/06\/mission-complete-stamp-small.jpg\" alt=\"mission-complete-stamp-small\" width=\"423\" height=\"150\" srcset=\"https:\/\/chaosrequiem.com\/main\/wp-content\/uploads\/2016\/06\/mission-complete-stamp-small.jpg 423w, https:\/\/chaosrequiem.com\/main\/wp-content\/uploads\/2016\/06\/mission-complete-stamp-small-300x106.jpg 300w\" sizes=\"auto, (max-width: 423px) 100vw, 423px\" \/><\/p>\n<hr \/>\n<h2>Notas finales<\/h2>\n<ul>\n<li>En mi caso tuve que agregar alrededor de <strong>300 \u00edndices<\/strong> para optimizar mi\u00a0base de datos.<\/li>\n<li>Si el <strong>nombre<\/strong> de <strong>todos<\/strong> los campos de tu base de datos siguen alg\u00fan est\u00e1ndar o nomenclatura, te dar\u00e1s cuenta que puedes <strong>agilizar<\/strong> el proceso de creaci\u00f3n de \u00edndices mediante un <strong>simple script PHP <\/strong>(tarea para la casa).\u00a0Todo depende del patr\u00f3n que veas en los nombres, por ejemplo: tu script podr\u00eda crear un \u00edndice en todos los campos cuyo nombre termine en <strong>&#8220;_id&#8221;<\/strong>.<\/li>\n<li>Si tu base de datos pesa demasiado y te toma mucho tiempo crear\u00a0un backup, una\u00a0buena alternativa seria usar SSH para conectarte de manera remota al servidor de tu sitio y de esta forma crear un backup a trav\u00e9s de <strong>mysqldump<\/strong>. Obviamente, todo esto tiene que ser hecho desde la consola\/terminal (como Putty) y a trav\u00e9s de comandos. Quiz\u00e1s uno de estos d\u00edas cree un art\u00edculo m\u00e1s detallado sobre este tema.<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Hace unas semanas tuve la tarea de optimizar una base de datos mysql, as\u00ed que hoy voy a compartir\u00a0mi experiencia y describir lo que hice\u00a0para lograrlo. Cosas de las que NO voy a hablar\u00a0y que debes revisar antes de seguir: Problemas de espacio con la\u00a0base de datos:\u00a0se supone que si tu\u00a0p\u00e1gina web est\u00e1 en continuo&hellip;&nbsp;<a href=\"https:\/\/chaosrequiem.com\/main\/optimizar-base-de-datos-mysql\/\" rel=\"bookmark\"><span class=\"screen-reader-text\">Como optimizar una base de datos Mysql<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":605,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"neve_meta_sidebar":"","neve_meta_container":"","neve_meta_enable_content_width":"","neve_meta_content_width":0,"neve_meta_title_alignment":"","neve_meta_author_avatar":"","neve_post_elements_order":"","neve_meta_disable_header":"","neve_meta_disable_footer":"","neve_meta_disable_title":"","footnotes":""},"categories":[54,38],"tags":[72,138,121,122,120,119],"class_list":["post-594","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-informatica","category-tutoriales","tag-base-de-datos","tag-informatica","tag-innodb","tag-myisam","tag-mysql","tag-optimizar"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Como optimizar una base de datos Mysql - Chaos Requiem<\/title>\n<meta name=\"description\" content=\"Hace unas semanas tuve la tarea de optimizar una base de datos mysql, as\u00ed que hoy voy a compartir mi experiencia y describir lo que hice para lograrlo.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/chaosrequiem.com\/main\/optimizar-base-de-datos-mysql\/\" \/>\n<meta property=\"og:locale\" content=\"es_MX\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Como optimizar una base de datos Mysql - Chaos Requiem\" \/>\n<meta property=\"og:description\" content=\"Hace unas semanas tuve la tarea de optimizar una base de datos mysql, as\u00ed que hoy voy a compartir mi experiencia y describir lo que hice para lograrlo.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/chaosrequiem.com\/main\/optimizar-base-de-datos-mysql\/\" \/>\n<meta property=\"og:site_name\" content=\"Chaos Requiem\" \/>\n<meta property=\"article:published_time\" content=\"2016-06-22T20:00:36+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2017-03-09T01:04:29+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/chaosrequiem.com\/main\/wp-content\/uploads\/2016\/06\/database-mysql.png\" \/>\n\t<meta property=\"og:image:width\" content=\"300\" \/>\n\t<meta property=\"og:image:height\" content=\"300\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Lev\u00ed\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Lev\u00ed\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/chaosrequiem.com\\\/main\\\/optimizar-base-de-datos-mysql\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/chaosrequiem.com\\\/main\\\/optimizar-base-de-datos-mysql\\\/\"},\"author\":{\"name\":\"Lev\u00ed\",\"@id\":\"https:\\\/\\\/chaosrequiem.com\\\/main\\\/#\\\/schema\\\/person\\\/4e911944eec9b2e118805c6a3743af83\"},\"headline\":\"Como optimizar una base de datos Mysql\",\"datePublished\":\"2016-06-22T20:00:36+00:00\",\"dateModified\":\"2017-03-09T01:04:29+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/chaosrequiem.com\\\/main\\\/optimizar-base-de-datos-mysql\\\/\"},\"wordCount\":1444,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/chaosrequiem.com\\\/main\\\/#\\\/schema\\\/person\\\/4e911944eec9b2e118805c6a3743af83\"},\"image\":{\"@id\":\"https:\\\/\\\/chaosrequiem.com\\\/main\\\/optimizar-base-de-datos-mysql\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/chaosrequiem.com\\\/main\\\/wp-content\\\/uploads\\\/2016\\\/06\\\/database-mysql.png\",\"keywords\":[\"base de datos\",\"informatica\",\"innodb\",\"myisam\",\"mysql\",\"optimizar\"],\"articleSection\":[\"Inform\u00e1tica\",\"Tutoriales\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/chaosrequiem.com\\\/main\\\/optimizar-base-de-datos-mysql\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/chaosrequiem.com\\\/main\\\/optimizar-base-de-datos-mysql\\\/\",\"url\":\"https:\\\/\\\/chaosrequiem.com\\\/main\\\/optimizar-base-de-datos-mysql\\\/\",\"name\":\"Como optimizar una base de datos Mysql - Chaos Requiem\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/chaosrequiem.com\\\/main\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/chaosrequiem.com\\\/main\\\/optimizar-base-de-datos-mysql\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/chaosrequiem.com\\\/main\\\/optimizar-base-de-datos-mysql\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/chaosrequiem.com\\\/main\\\/wp-content\\\/uploads\\\/2016\\\/06\\\/database-mysql.png\",\"datePublished\":\"2016-06-22T20:00:36+00:00\",\"dateModified\":\"2017-03-09T01:04:29+00:00\",\"description\":\"Hace unas semanas tuve la tarea de optimizar una base de datos mysql, as\u00ed que hoy voy a compartir mi experiencia y describir lo que hice para lograrlo.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/chaosrequiem.com\\\/main\\\/optimizar-base-de-datos-mysql\\\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/chaosrequiem.com\\\/main\\\/optimizar-base-de-datos-mysql\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/chaosrequiem.com\\\/main\\\/optimizar-base-de-datos-mysql\\\/#primaryimage\",\"url\":\"https:\\\/\\\/chaosrequiem.com\\\/main\\\/wp-content\\\/uploads\\\/2016\\\/06\\\/database-mysql.png\",\"contentUrl\":\"https:\\\/\\\/chaosrequiem.com\\\/main\\\/wp-content\\\/uploads\\\/2016\\\/06\\\/database-mysql.png\",\"width\":300,\"height\":300},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/chaosrequiem.com\\\/main\\\/optimizar-base-de-datos-mysql\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Inicio\",\"item\":\"https:\\\/\\\/chaosrequiem.com\\\/main\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Como optimizar una base de datos Mysql\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/chaosrequiem.com\\\/main\\\/#website\",\"url\":\"https:\\\/\\\/chaosrequiem.com\\\/main\\\/\",\"name\":\"Chaos Requiem\",\"description\":\"Un peque\u00f1o rinc\u00f3n donde pensamientos, ideas y sue\u00f1os muertos cobran vida por un instante.\",\"publisher\":{\"@id\":\"https:\\\/\\\/chaosrequiem.com\\\/main\\\/#\\\/schema\\\/person\\\/4e911944eec9b2e118805c6a3743af83\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/chaosrequiem.com\\\/main\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/chaosrequiem.com\\\/main\\\/#\\\/schema\\\/person\\\/4e911944eec9b2e118805c6a3743af83\",\"name\":\"Lev\u00ed\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/chaosrequiem.com\\\/main\\\/wp-content\\\/uploads\\\/2015\\\/03\\\/cr-logo-2.png\",\"url\":\"https:\\\/\\\/chaosrequiem.com\\\/main\\\/wp-content\\\/uploads\\\/2015\\\/03\\\/cr-logo-2.png\",\"contentUrl\":\"https:\\\/\\\/chaosrequiem.com\\\/main\\\/wp-content\\\/uploads\\\/2015\\\/03\\\/cr-logo-2.png\",\"width\":109,\"height\":32,\"caption\":\"Lev\u00ed\"},\"logo\":{\"@id\":\"https:\\\/\\\/chaosrequiem.com\\\/main\\\/wp-content\\\/uploads\\\/2015\\\/03\\\/cr-logo-2.png\"},\"url\":\"https:\\\/\\\/chaosrequiem.com\\\/main\\\/author\\\/orchestra-conductor\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Como optimizar una base de datos Mysql - Chaos Requiem","description":"Hace unas semanas tuve la tarea de optimizar una base de datos mysql, as\u00ed que hoy voy a compartir mi experiencia y describir lo que hice para lograrlo.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/chaosrequiem.com\/main\/optimizar-base-de-datos-mysql\/","og_locale":"es_MX","og_type":"article","og_title":"Como optimizar una base de datos Mysql - Chaos Requiem","og_description":"Hace unas semanas tuve la tarea de optimizar una base de datos mysql, as\u00ed que hoy voy a compartir mi experiencia y describir lo que hice para lograrlo.","og_url":"https:\/\/chaosrequiem.com\/main\/optimizar-base-de-datos-mysql\/","og_site_name":"Chaos Requiem","article_published_time":"2016-06-22T20:00:36+00:00","article_modified_time":"2017-03-09T01:04:29+00:00","og_image":[{"width":300,"height":300,"url":"https:\/\/chaosrequiem.com\/main\/wp-content\/uploads\/2016\/06\/database-mysql.png","type":"image\/png"}],"author":"Lev\u00ed","twitter_misc":{"Escrito por":"Lev\u00ed","Tiempo de lectura":"7 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/chaosrequiem.com\/main\/optimizar-base-de-datos-mysql\/#article","isPartOf":{"@id":"https:\/\/chaosrequiem.com\/main\/optimizar-base-de-datos-mysql\/"},"author":{"name":"Lev\u00ed","@id":"https:\/\/chaosrequiem.com\/main\/#\/schema\/person\/4e911944eec9b2e118805c6a3743af83"},"headline":"Como optimizar una base de datos Mysql","datePublished":"2016-06-22T20:00:36+00:00","dateModified":"2017-03-09T01:04:29+00:00","mainEntityOfPage":{"@id":"https:\/\/chaosrequiem.com\/main\/optimizar-base-de-datos-mysql\/"},"wordCount":1444,"commentCount":0,"publisher":{"@id":"https:\/\/chaosrequiem.com\/main\/#\/schema\/person\/4e911944eec9b2e118805c6a3743af83"},"image":{"@id":"https:\/\/chaosrequiem.com\/main\/optimizar-base-de-datos-mysql\/#primaryimage"},"thumbnailUrl":"https:\/\/chaosrequiem.com\/main\/wp-content\/uploads\/2016\/06\/database-mysql.png","keywords":["base de datos","informatica","innodb","myisam","mysql","optimizar"],"articleSection":["Inform\u00e1tica","Tutoriales"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/chaosrequiem.com\/main\/optimizar-base-de-datos-mysql\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/chaosrequiem.com\/main\/optimizar-base-de-datos-mysql\/","url":"https:\/\/chaosrequiem.com\/main\/optimizar-base-de-datos-mysql\/","name":"Como optimizar una base de datos Mysql - Chaos Requiem","isPartOf":{"@id":"https:\/\/chaosrequiem.com\/main\/#website"},"primaryImageOfPage":{"@id":"https:\/\/chaosrequiem.com\/main\/optimizar-base-de-datos-mysql\/#primaryimage"},"image":{"@id":"https:\/\/chaosrequiem.com\/main\/optimizar-base-de-datos-mysql\/#primaryimage"},"thumbnailUrl":"https:\/\/chaosrequiem.com\/main\/wp-content\/uploads\/2016\/06\/database-mysql.png","datePublished":"2016-06-22T20:00:36+00:00","dateModified":"2017-03-09T01:04:29+00:00","description":"Hace unas semanas tuve la tarea de optimizar una base de datos mysql, as\u00ed que hoy voy a compartir mi experiencia y describir lo que hice para lograrlo.","breadcrumb":{"@id":"https:\/\/chaosrequiem.com\/main\/optimizar-base-de-datos-mysql\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/chaosrequiem.com\/main\/optimizar-base-de-datos-mysql\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/chaosrequiem.com\/main\/optimizar-base-de-datos-mysql\/#primaryimage","url":"https:\/\/chaosrequiem.com\/main\/wp-content\/uploads\/2016\/06\/database-mysql.png","contentUrl":"https:\/\/chaosrequiem.com\/main\/wp-content\/uploads\/2016\/06\/database-mysql.png","width":300,"height":300},{"@type":"BreadcrumbList","@id":"https:\/\/chaosrequiem.com\/main\/optimizar-base-de-datos-mysql\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Inicio","item":"https:\/\/chaosrequiem.com\/main\/"},{"@type":"ListItem","position":2,"name":"Como optimizar una base de datos Mysql"}]},{"@type":"WebSite","@id":"https:\/\/chaosrequiem.com\/main\/#website","url":"https:\/\/chaosrequiem.com\/main\/","name":"Chaos Requiem","description":"Un peque\u00f1o rinc\u00f3n donde pensamientos, ideas y sue\u00f1os muertos cobran vida por un instante.","publisher":{"@id":"https:\/\/chaosrequiem.com\/main\/#\/schema\/person\/4e911944eec9b2e118805c6a3743af83"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/chaosrequiem.com\/main\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":["Person","Organization"],"@id":"https:\/\/chaosrequiem.com\/main\/#\/schema\/person\/4e911944eec9b2e118805c6a3743af83","name":"Lev\u00ed","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/chaosrequiem.com\/main\/wp-content\/uploads\/2015\/03\/cr-logo-2.png","url":"https:\/\/chaosrequiem.com\/main\/wp-content\/uploads\/2015\/03\/cr-logo-2.png","contentUrl":"https:\/\/chaosrequiem.com\/main\/wp-content\/uploads\/2015\/03\/cr-logo-2.png","width":109,"height":32,"caption":"Lev\u00ed"},"logo":{"@id":"https:\/\/chaosrequiem.com\/main\/wp-content\/uploads\/2015\/03\/cr-logo-2.png"},"url":"https:\/\/chaosrequiem.com\/main\/author\/orchestra-conductor\/"}]}},"_links":{"self":[{"href":"https:\/\/chaosrequiem.com\/main\/wp-json\/wp\/v2\/posts\/594","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/chaosrequiem.com\/main\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/chaosrequiem.com\/main\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/chaosrequiem.com\/main\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/chaosrequiem.com\/main\/wp-json\/wp\/v2\/comments?post=594"}],"version-history":[{"count":24,"href":"https:\/\/chaosrequiem.com\/main\/wp-json\/wp\/v2\/posts\/594\/revisions"}],"predecessor-version":[{"id":622,"href":"https:\/\/chaosrequiem.com\/main\/wp-json\/wp\/v2\/posts\/594\/revisions\/622"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/chaosrequiem.com\/main\/wp-json\/wp\/v2\/media\/605"}],"wp:attachment":[{"href":"https:\/\/chaosrequiem.com\/main\/wp-json\/wp\/v2\/media?parent=594"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/chaosrequiem.com\/main\/wp-json\/wp\/v2\/categories?post=594"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/chaosrequiem.com\/main\/wp-json\/wp\/v2\/tags?post=594"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}