Articles of innodb

Fallo de la restricción de clave externa falsa

Recibo este mensaje de error: ERROR 1217 (23000) en la línea 40: No se puede eliminar o actualizar una fila primaria: falla una restricción de clave externa … cuando trato de dejar caer una mesa: DROP TABLE IF EXISTS `area`; … definido así: CREATE TABLE `area` ( `area_id` char(3) COLLATE utf8_spanish_ci NOT NULL, `nombre_area` varchar(30) […]

¿Cómo puedo verificar el tipo de motor MySQL para una tabla específica?

Mi base de datos MySQL contiene varias tablas que usan diferentes motores de almacenamiento (específicamente myisam e innodb). ¿Cómo puedo saber qué tablas están usando qué motor?

¿Por qué el autoincrement de MySQL aumenta en las inserciones fallidas?

Un compañero de trabajo me hizo conocer un comportamiento MySQL muy extraño. Suponiendo que tiene una tabla con un campo auto_increment y otro campo que está configurado como único (por ejemplo, un campo de nombre de usuario). Al intentar insertar una fila con un nombre de usuario que ya está en la tabla, la inserción […]

MySQL InnoDB clave externa entre diferentes bases de datos

Me gustaría saber si es posible en InnoDB en MySQL tener una table con clave externa que haga referencia a otra tabla en una database diferente. Y si es así, ¿cómo se puede hacer esto?

¿Cómo manejo esta condición de carrera en django?

Se supone que este código debe obtener o crear un objeto y actualizarlo si es necesario. El código está en uso de producción en un sitio web. En algunos casos, cuando la base de datos está ocupada, lanzará la excepción “DoesNotExist: MyObj query query does not exist”. # Model: class MyObj(models.Model): thing = models.ForeignKey(Thing) owner […]

Evitar el incremento automático en la inserción duplicada de MySQL

Usando MySQL 5.1.49, estoy tratando de implementar un sistema de etiquetado, el problema que tengo es con una tabla con dos columnas: id(autoincrement) , tag(unique varchar) (InnoDB) Al utilizar la consulta, INSERT IGNORE INTO tablename SET tag=”whatever” , el valor del id incremento automático aumenta incluso si se ignoró el inserto. Normalmente, esto no sería […]

MySQL InnoDB no libera espacio en disco después de eliminar filas de datos de la tabla

Tengo una tabla MySQL usando el motor de almacenamiento InnoDB; contiene alrededor de 2M filas de datos. Cuando eliminé las filas de datos de la tabla, no se publicó el espacio de disco asignado. Tampoco se redujo el tamaño del archivo ibdata1 después de ejecutar el comando optimize table . ¿Hay alguna manera de recuperar […]

¿Cuál es la diferencia entre MyISAM e InnoDB?

Entiendo que esta pregunta se ha hecho antes, pero la mayoría de las veces se pregunta en relación con una base de datos o tabla específica. No puedo encontrar una respuesta en este sitio que describa los dos motores y sus diferencias sin respeto a la base de datos específica de alguien. Quiero ser capaz […]

MySql: MyISAM vs. Inno DB!

¿Cuáles son las diferencias entre los tipos MyISAM e Inno DB en MySql?

MySQL AUTO_INCREMENT no ROLLBACK

Estoy usando el campo AUTO_INCREMENT de MySQL e InnoDB para admitir transacciones. Me di cuenta cuando revertir la transacción, el campo AUTO_INCREMENT no se revierte? Descubrí que fue diseñado de esta manera, pero ¿hay alguna solución para esto?