BBD php5
Slt à tous,
J'aurais une petite question à propos de la BDD integré à php5 (SQLite)
J'ai lu que lorsque la base était en ecriture il y avait un lock sur la table, donc si je comprends bien lorsque j'entre une donnée dans la base ou que j'en modifie une, le reste du site ne pourra pas marche. Ca risque de causer des erreurs?
Si c'est bien cela c'est pas très pratique et pour un site qui fera appel pas mal à la base de donnée, ca pourrait poser un probléme?
Si quelqu'un peut m'eclairer sur ce point ca serait cool.
Merci d'avance
Cordialement
Raphaël
++
Si tu ne saisis pas bien SqlLite , reste Mysql
zebdinou pour les intimes / Blog : http://www.zebden.fr
Je sais qu'il reste mysql, mais à coté de ces defaults sqlite est plus rapide, enfin il a des avantages certains sur mysql, c'est pour cette raison que je me renseigne ;-) (je parle de ce que j'ai lu, j'ai pas encore testé donc j'ai pas vraiment d'avie sur la question)...
++
Raphaël
Franchement la difference est minime sur des petits sites ...
zebdinou pour les intimes / Blog : http://www.zebden.fr
Ok merci :D, dans ce cas là je vais rester sur mysql :D
++
Little
SQLite est une bonne alternative pour des sites moyens. Il est jusqu'à 10 fois plus rapide que mysql.
Etant donné qu'il travaille sur des fichiers textes, effectivement il y a un verou de posé sur le fichier lors de l'enregistrement ou la mise à jour de données.
Il faut donc savoir ou implémenter SQLite et ou implémenter une solution MySQL.
Par exemple pour un forum il sera plus judicieux de choisir MySQL (accès fréquent en lecture et en écriture).
Par contre pour une vitrine ou site ou seulement une personne aura accès à l'écriture (administrateur du site) la SQLite est plus avantageux.
Les avantages de SQLites sont nombreux par rapport à MySQL :
- La gestion des transactions
- La création de vue
- Les sub-select
- Les triggers
Et une fois que tu as l'habitude d'utiliser ces fonctionnalités, il deviet difficile de s'en passer :D
echo ’16i[q]sa[ln0=aln100%Pln100/snlbx]sbA0D4D465452snlbxq’|dc
Et en faisant un systéme avec lecture sur sqlite, et ecriture sur mysql, avec un cron qui met à jour une fois par nuit sqlite... Ca pourrait donner un truc pas mal?
Parce que moi mon probléme c'est que ce sera un top site annuaire avec vote, commentaire, enfin des données qui seront modifiés assez réguliérement si le site marche bien. Ce sera pas un top site générale, mais spécialisé à un type de site...
Qu'en pensez-vous?
++
Raphaël
Je ne vois pas pourquoi le verrou te dérange.
Au contraire, il permet d'éviter de corrompre l'intégrité de tes données.
Disons qu'en faite je suis pas sur d'avoir bien compris comment il marchait, mais voila ce que j'ai compris:
Si une personne ecrit un commentaire, lorsqu'elle va cliquer sur le bouton valider, l'ensemble des commentaire ne sera plus accessible durant une fraction de seconde? Donc si des gens veulent lire les commentaires exactement aux même moment ca risque de causer une erreur?
En plus il me semble que le lock se fait sur toute la base de donnée pas seulement sur la table où c'est en train d'écrire :
Ce verrouillage se fait au niveau du fichier, c’est donc toute la base de données qui est verrouillée et inaccessible aux autres accès
Je suis pas sur d'être dans le juste mais pour un site communautaire ca risque de poser des problémes?
++
Raphaël
Je ne sais pas comment cela est gérer avec MySQL, mais avec un vrai serveur de base de données, style Oracle (en simplifiant beaucoup), lorsque ta requete est soumise au SGBD, il la "stocke", et il ne te repond que lorsqu'il peut traiter ta requete.
Enfin... Il gere tout son truc tout seul en fonction des lock sur les tables.