Bonjour,
Je test actuellement un serveur SQL privé pour héberger ma base de données. Je n'ai pas de connaissance en la matière...
Est-ce que quelqu'un sait comment modifier le moteur de stockage d'une base de données sur un serveur SQL privé ?
Je suppose qu'on doit avoir accès à un fichier de config quelque part, mais où ?
Merci pour votre aide
Changer moteur de stockage BDD serveur SQL Privé
Sujets apparentés
- Lien database non établi
6992
06.12.2016 11:04
- "Connection timed out" - Connection MySQL privée via PHP
6931
13.02.2018 00:37
- Autoriser toutes les IP
5080
11.08.2018 19:16
- Help, Base de donnée pleine, supprimer product ID phpmyadmin
4965
12.06.2019 14:05
- Intégration de MongoDB
4929
12.10.2016 09:01
- Comment passer de MySQL 5.6 à MySQL 8.0 ?
4515
12.06.2019 15:49
- Connexion à base de données en utilisant ODBC
4426
04.09.2018 11:57
- Les connexions simultanées
4242
24.10.2019 13:23
- Exporter la base de données avec un script PHP
3976
05.10.2018 11:27
- [1034] Create index by sort failed
3556
06.03.2020 09:31
Bonjour Sylvain,
Que voulez-vous dire par moteur de stockage ?
Pour le moteur de base de données (par exemple MySQL, MariaDB, PostgreSQL, MongoDB) il faut supprimer l'instance et en créer une nouvelle avec le moteur désiré. (attention à bien sauvegarder vos données avant, en cas de suppression de l'instance, vous perdrez également l'accès aux sauvegardes liées à cette instance)
Concernant le moteur de stockage, pour MySQL/MariaDB nous laissons par défaut InnoDB que nous recommandons. Il vous est néanmoins possible de créer des objets en MyISAM, ce que nous déconseillons.
J'espère avoir répondu à vos interrogations, n'hésitez pas à faire un retour ici-même :)
Bonjour et merci pour votre réponse.


Je parle de ce moteur de stockage par défaut :
Sur mes bases SQL mutualisées, je n'ai pas le même moteur de stockage par défaut, il est bien en MyISAM :
conversion: https://sql.sh/1548-mysql-innodb-myisam
rapidement, pourquoi?
Très rapidement parce qu'il n'est pas transactionnel et n'est pas loggé. (ces 2 notions sont en fait étroitement liées)
Il y a beaucoup plus de risques de se retrouver avec une incohérence (pas de transaction), corrompre ou perdre des données (pas de log) avec MyISAM en cas d'arrêt "impromptu" de MySQL (dépassement de mémoire étant le cas le plus fréquent).
Le web regorge de DBAs compétents qui expliquent les avantages et inconvénients des différents moteurs de stockage, MyISAM et InnoDB au premier plan. :)
merci....
et très rapidement, innoDB est plus rapide en général avec des jointures, ou c'est similaire, selon toi?
Je ne suis pas DBA mais de mon point de vue, MyISAM est plus rapide en lecture notamment parce qu'il est plus "brut", plus simple, InnoDB étant plus complexe avec un système d'arbre et de feuilles. (de nombreux benchs sont dispo)
Au niveau de jointures, elles sont directement gérées par l'optimiseur, donc agnostiques du système de stockage sous-jacent ; si une jointure doit aller lire dans 4 tables par exemple, le temps qu'elle prendra serait la somme du temps (en très gros) :
Parsing de la requête et création du plan d'exécution
Lecture dans les index
Lecture dans les 4 tables
Mais je pense que la plus grosse variable est comment est construite la requête et sur quels indexes elle s'appuie.
A part si il y a vraiment beaucoup de données à lire, le temps de lecture des données dans les tables selon le moteur est négligeable
Évidemment il ne s'agit que de mon avis et beaucoup d'autres variables rentrent en compte :)
re merci, j'avais bien précisé rapidement, donc je comprends bien que tout n'est pas forcément abordé.
```text MyISAM est le moteur historique. En lecture seule, il est le plus rapide parce qu'il s'abstrait des règles d'intégrité des bases de données relationnelles (plus d'information sur l'intégrité des données ici : https://fr.wikipedia.org/wiki/Propri%C3%A9t%C3%A9s_ACID )
Par contre, il a de multiples points faibles :
* verrouillage par table : dès que le pourcentage d'écriture augmente, la concurrence des requêtes entraine des verrouillages qui augmentent considérablement le temps pour obtenir les résultats obtenus.
* en cas de crash, pas de log de transactions pour rejouer les requêtes qui seraient passées au travers des mailles du filet
* pour les sauvegardes, même topo, MyISAM ne permet pas de garantir la cohérence des données entre les tables d'un même schéma.
InnoDB répond à toutes ces faiblesses. Il avait néanmoins deux inconvénients majeurs :
* Pendant des années, il a été réputé pour être très lent. Et c'était le cas, parce qu'il s'assurait de l'intégrité des données à tout moment. Au fil des versions de MySQL / MariaDB, les performances ont explosé et sont maintenant largement utilisables sur des flux importants de données.
* Pas moyen d'avoir des index fulltext. Ca a été corrigé il y a quelques années.
Dans les dernières versions de MariaDB, un nouveau moteur de stockage "Aria" a été créé pour remplacer MyISAM. Il n'y a plus aucune raison d'utiliser MyISAM aujourd'hui. Aria et InnoDB font mieux.
Et surtout, pour les sysadmins, c'est un gage de sécurité parce qu'on ne peut plus perdre de données. ```