Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

como poner una tabla en modo solo lectura?

Estas en el tema de como poner una tabla en modo solo lectura? en el foro de Mysql en Foros del Web. Buen día compañeros Tengo el siguiente dilema Tengo una aplicacion que consta de dos partes, una parte es una interfaz grafica desarrollda en php la ...
  #1 (permalink)  
Antiguo 18/01/2011, 03:29
 
Fecha de Ingreso: agosto-2005
Mensajes: 5
Antigüedad: 14 años, 4 meses
Puntos: 0
como poner una tabla en modo solo lectura?

Buen día compañeros

Tengo el siguiente dilema

Tengo una aplicacion que consta de dos partes, una parte es una interfaz grafica desarrollda en php la cual manipula una base de datos mysql y la otra parte es un software hecho en C que utiliza la misma base de datos mysql (hace select,update e insert)

Toda la aplicacion corre en sistemas embebidos unix (openSuse), el software que esta hecho en C levanta varios procesos y subprocesos los cuales hacen uso de la base de datos, por lo que hay varios procesos de lectura y escritura en la db al mismo tiempo.

mi problema es que hay veces que el sistema embebido se tiene que apagar subitamente (corte total de energia) y si el software en C estaba realizando algun proceso de escritura o lectura alguna de mis tablas puede llegar a corromperse y marcarmela como "crashed and needs to be repaired"

en mi software en C ya implemente una parte que checa si la tabla esta corrupta e intenta repararla, pero hay unas tablas que solo las necesito manipular desde la interfaz grafica y que el soft en C solo las lea (solo leer la info dentro, no realizara ninguna otra operacion de escritura).

Lo que quiero es encontrar la forma que desde mis scripts php pueda manipular una tabla y una vez terminada la manipulacion, dejar esa tabla en modo de solo lectura, para que mi soft en C solo pueda leer la tabla y no escribir nada en ella.

De igual forma cuando necesite manipular los valores de esa tabla, quiero que desde mi script php, desbloquear esa tabla, escribir en ella y despues volver a dejarla en modo de solo lectura

Como podria realizar esto?

he checado con lock tables y unlock tables, pero no me sirven, porque aunque reinicie el sistema embebido, quiero que la tabla siga manteniendose en modo de solo lectura y que solo pueda ser manipulada desde mi script en php

gracias
  #2 (permalink)  
Antiguo 18/01/2011, 03:57
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 11 años, 10 meses
Puntos: 574
Respuesta: como poner una tabla en modo solo lectura?

La solución es usar usuarios (sql) distintos con privilegios distintos, de tal forma que el usuario que usa la conexión del programa en C tenga privilegios de lectura y escritura en la o las tablas que desees y solo de lectura en las otras, lo mismo para el usuario que usa la conexión de la interface grafica pero sobre tablas distintas...

5.5.2. Adding User Accounts
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.

Etiquetas: lectura, modo, poner, tablas
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:26.