disponibilidad comandos clusvcadm cluster alta mysql concurrency temp-tables

mysql - comandos - clusvcadm



¿Es la tabla temporal de MySQL un recurso compartido? (2)

Tengo un procedimiento almacenado de MySQL que utiliza una tabla temporal. Supongamos que el nombre de mi tabla es ''temp'' y lo uso para almacenar algunos datos intermedios. Se creará al comienzo del procedimiento y se eliminará al final.

CREATE PROCEDURE p() BEGIN CREATE TEMPORARY TABLE /`temp/`(...); INSERT INTO /`temp/` VALUES(...); DROP TEMPORARY TABLE /`temp/`; END;

El problema es que este procedimiento almacenado puede ser usado por diferentes usuarios al mismo tiempo, por lo que quiero saber si esto puede causar algún problema (es decir, cualquier conflicto en los datos insertados en la tabla temporal). En otras palabras, ¿es la tabla temporal un recurso compartido dentro de diferentes llamadas al mismo SP?


La tabla temporal es visible solo para la sesión actual .

Entonces, si tiene varias sesiones simultáneas, cada una tendrá su propia tabla temporal independiente con el mismo nombre.

Documentación: http://dev.mysql.com/doc/refman/5.1/en/create-table.html , ctrl + f para "Puede usar el TEMPORAL"


No, una tabla temporal está limitada al alcance de su conexión de base de datos. Puede usar la tabla temporal en llamadas subsiguientes al procedimiento durante la misma conexión de base de datos, pero otras conexiones no pueden acceder a ella. Pueden crear una tabla con el mismo nombre, pero cada tabla temporal será independiente. Las tablas temporales desaparecen al cerrar la conexión.