Se puede bloquear una tabla globalmente en MyISAM?

Iniciado por Skeletron, 30 Junio 2013, 05:17 AM

0 Miembros y 1 Visitante están viendo este tema.

Skeletron

Hola gente.
Les comento la siguiente situacion:

Voy a mi MySQL Workbench (algo así como el IDE de MySQL) y ejecuto lo siguiente:
LOCK TABLES usuarios READ;

De esa manera queda bloqueada la lectura a USUARIOS
Luego voy a mi sitio web, y accedo al sistema con usuario y contraseña, y el usuario accede correctamente, o sea: SI puedo leer la tabla. Y no debería.

Como puedo hacer para bloquear la tabla de manera que NINGUNA OTRA CONEXION pueda acceder a leer a ella, temporalmente.

No busco alternativas. Solo quiero bloquear la tabla, forzar el bloqueo de lectura y escritura a una tabla y que nadie mas pueda acceder a ella. NEVER IN THE LIFE hasta que yo la vuelva a desbloquear (o hasta que se cierre la sesion, o timeout o lo que sea).

Alguien sabe como hacerlo?

La idea es que yo desde el IDE logre bloquear una tabla, y que al acceder desde la pagina web, todo quede "clavado" esperando que la tabla se libere.

Se puede?

Gracias.

1mpuls0

Todas las tablas bloqueadas por el flujo actual se liberan implícitamente cuando el flujo reliza otro LOCK TABLES, o cuando la conexión con el servidor se cierra.
http://dev.mysql.com/doc/refman/5.0/es/lock-tables.html

Y qué pasa si ejecutas directamente una consulta a la tabla de usuarios?, en lugar de hacerlo desde el sitio.

Saludos.
abc

Skeletron

En ese caso, está bloqueada...
O sea:
Si con el usuario "PEPE" bloqueo la tabla "USUARIOS", PEPE ya no puede acceder a ella, pero otros usuarios de MySQL SI pueden.