Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
SQL Server 2000/2005/2008, Express, Access, MySQL, Oracle
Gestione accessi concorrenziali mysql server 5.0
venerdì 04 settembre 2009 - 10.45
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
melmar20
Profilo
| Junior Member
150
messaggi | Data Invio:
ven 4 set 2009 - 10:45
ciao a tutti,
avendo appreso, grazie alla grandiosa risposta che mi è stata data in un post precedente, che su mysql server si può accedere con lo stesso account da diverse postazioni e lavorare su di esso da entrambe ,interrogandolo ed aggiornandolo.
La domanda sorge spontanea : come bisogna comportarsi per quel che riguarda l'accesso alle risorse??
Vale a dire se un pc sta facendo una SELECT ed un utente su di un'altro pc sta facendo un UPDATE sulla stessa tabella, il sistema va in crash oppure viene gestito automaticamente anche l'accesso alle risorse (le TABLE) ??
lbenaglia
Profilo
| Guru
5.625
messaggi | Data Invio:
ven 4 set 2009 - 21:40
>Vale a dire se un pc sta facendo una SELECT ed un utente su di
>un'altro pc sta facendo un UPDATE sulla stessa tabella, il sistema
>va in crash oppure viene gestito automaticamente anche l'accesso
>alle risorse (le TABLE) ??
Tutti i DBMS utilizzano sistemi per gestire la concorrenza mediante meccanismi di locking o row versioning.
Per quanto concerne MySQL puoi dare un'occhiata al seguente paragrafo:
http://dev.mysql.com/doc/refman/5.0/en/innodb-transaction-model.html
Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org
melmar20
Profilo
| Junior Member
150
messaggi | Data Invio:
ven 4 set 2009 - 21:54
quindi se ho ben capito, io non devo preoccuparmi affatto delle transazioni concorrenziali, fa tutto il dbms.
Giusto??
lbenaglia
Profilo
| Guru
5.625
messaggi | Data Invio:
ven 4 set 2009 - 21:59
>quindi se ho ben capito, io non devo preoccuparmi affatto delle
>transazioni concorrenziali, fa tutto il dbms.
>
>Giusto??
Fino ad un certo punto
Il DBMS si preoccupa di mantenere una congruenza e consistenza dei dati, tu dovrai occuparti del resto.
Devi progettare le tue applicazioni in modo da locckare le righe per il minor tempo possibile onde evitare di "ammazzare" la scalabilità del sistema.
Inoltre devi intercettare eventuali situazioni di blocking che causano timeout o peggio deadlock che comportano il rollback automatico di una delle due transazioni.
Il discorso è complesso ed interessante ma non può essere affrontato in due righe su un forum, occorre documentarsi a fondo prima di scrivere 1 sola riga di codice
Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !