| 1.2 Qu'est ce que MySQL?
 1 Informations générales
 Manuel de Référence MySQL 4.1 : Version Française
 
 . Histoire de MySQL
 ->Les fonctionnalités principales de MySQL
 . Jusqu'à quel point MySQL est il stable ?
 . Quelles tailles peuvent atteindre les tables MySQL
 . Compatibilité an 2000
 
 
 | 
  1.2.2 Les fonctionnalités principales de MySQL   
 
La liste suivante décrit les caractéristiques principales du
 
logiciel de bases de données MySQL
 . Voyez la  Plans de développements MySQL  pour plus
d'informations sur les fonctionnalités courantes et à venir.
 
     Interne et portabilité
    
Ecrit en C et C++. 
Testé sur un large éventail de compilateurs différents.
Fonctionne sur de nombreuses plates-formes.  Plate-formes supportées par MySQL .
Utilise GNU Automake, Autoconf et Libtool pour une meilleure portabilité.
Dispose d'API pour C, C++, Eiffel, Java, Perl, PHP, Python, Ruby et Tcl.
 Interfaces MySQL .
Complètement multi-threadé, grâce aux threads du noyau. Cela signifie que 
vous pouvez l'utiliser facilement sur un serveur avec plusieurs processeurs.
Fournit des moteurs de tables transactionnels et non-transactionnels.
Index  
B-tree
  très rapide, avec compression d'index.
Facilité relative à ajouter un nouveau moteur de table. C'est utile si 
vous voulez ajouter une interface SQL à votre base de donnée maison.
Système l'allocation mémoire très rapide, exploitant les threads.
Jointures très rapides, exploitant un système de jointures multiples en une seule
passe optimisé.
Tables en mémoire, pour réaliser des tables temporaires.
Les fonctions SQL sont implémentées grâce à une bibliothèque de classes 
optimisées, qui sont aussi rapides que possible! Généralement, il n'y a 
aucune allocation mémoire une fois que la requête a été initialisée.
Le code de  
MySQL
  est vérifié avec  
Purify
  (un utilitaire de
détection des fuites mémoires commercial) ainsi qu'avec Valgrind,
un outil GPL ( http://developer.kde.org/~sewardj/ ).
 
     Types de colonnes
    
Nombreux types de colonnes : entiers signés ou non, de 1, 2, 3, 4, et 8 
octets,  
FLOAT
 ,  
DOUBLE
 ,  
CHAR
 ,  
VARCHAR
 ,
 
TEXT
 ,  
BLOB
 ,  
DATE
 ,  
TIME
 ,  
DATETIME
 ,
 
TIMESTAMP
 ,  
YEAR
 ,  
SET
  et  
ENUM
 .
 Types de colonnes .
Enregistrements de taille fixe ou variable.
Toutes les colonnes ont des valeurs par défaut.
Vous pouvez utiliser la commande  
INSERT
  pour insérer un sous ensemble
de colonnes : les colonnes qui ne sont pas explicitement cités prennent
alors leur valeur par défaut.
 
     Commandes et fonctions
    
Support complet des opérateurs et fonctions dans la commande  
SELECT
  
et la clause  
WHERE
 . Par exemple :  
| 
mysql> SELECT CONCAT(first_name, " ", last_name)-> FROM tbl_name
 -> WHERE income/dependents > 10000 AND age > 30;
 | 
Support complet des clauses SQL  
GROUP BY
  et
 
ORDER BY
 .  Support des fonctions de groupages
( 
COUNT()
 ,  
COUNT(DISTINCT ...)
 ,
 
AVG()
 ,  
STD()
 ,
 
SUM()
 ,  
MAX()
  et  
MIN()
 ).
Support des clauses  
LEFT OUTER JOIN
  et  
RIGHT OUTER JOIN
  avec les
syntaxes ANSI SQL et ODBC.
Les alias de tables et colonnes sont compatibles avec le standard SQL92.
DELETE
 ,  
INSERT
 ,  
REPLACE
  et  
UPDATE
  retourne
le nombre de lignes affectées. Il est possible d'obtenir le nombre de lignes
trouvées en modifiant une option lors de la connexion au serveur.
La commande spécifique à  
MySQL
 
SHOW
  est utilisée pour obtenir
des informations sur les bases, tables et index. La commande  
EXPLAIN
  
sert à optimiser les requêtes.
Les noms de fonctions ne sont jamais en conflit avec les noms de tables ou colonnes.
Par exemple,  
ABS
  est un nom de colonne valide. La seule restriction est que,
lors d'un appel de fonction, aucun espace n'est toléré entre le nom de la fonction et
la parenthèse ouvrante  
'('
  suivante.   Est-ce que MySQL est sensible aux mots réservés ? .
Vous pouvez utiliser simultanément des tables de différentes bases (depuis la
version 3.22).
 
     Sécurité
    
Un système de droits et de mots de passe très souple et sécuritaire,
qui vérifie aussi les hôtes se connectant. Les mots de passe sont 
bien protégés, car tout les échanges de mot de passe sont chiffrés,
même lors des connexions.
 
     Charges supportées et limites
    
Gère les très grandes bases de données. Nous utilisons le  
serveur MySQL
  
avec des bases qui contiennent 50 millions de lignes et nous connaissons des
utilisateurs qui utilisent le  
serveur MySQL
  avec plus de 
60 000 tables et 5 000 000 000 (milliards) de lignes.
Jusqu'à 32 index sont permis par table. Chaque index est constitué de
1 à 16 colonnes ou parties de colonnes. La taille maximale d'un index est
de 500 octets (ce qui peut être configuré à la compilation du 
 
serveur MySQL
 . Un index peut utiliser un préfixe issu d'un champs
 
CHAR
  ou  
VARCHAR
 .
 
     Connexions
    
Les clients peuvent se connecter au serveur  
MySQL
  en utilisant les sockets
TCP/IP, les sockets Unix ou les pipes nommés sous NT.
Support de  
ODBC
  ( 
Open-DataBase-Connectivity
 ) pour Windows 32 bits 
(avec les sources).
Toutes les fonctions ODBC 2.5 et de nombreuses autres. Par exemple, vous pouvez
utiliser MS Access pour vous connecter au serveur  
MySQL
 .   What is ODBC? .
L'interface  
Connector/JDBC
  fournit le support pour les clients Java qui utilisent
JDBC. Ces clients peuvent être utilisés sur Windows et Unix.
Les sources de Connector/JDBC sont libres.
 MySQL et Java (JDBC) .
 
     Traductions
    
Le serveur fournit des messages d'erreurs au client dans de nombreuses
langues, y compris le français.
 Messages d'erreurs non-anglophones .
Support complet de plusieurs jeux de caractères, comprenant
 
ISO-8859-1
  (Latin1),  
german
 ,  
big5
 ,  
ujis
 , etc. Par exemple,
les caractères nordiques  
'Â'
 ,  
'ä'
  et  
'ö'
  
sont autorisés dans les noms de tables et colonnes.
Toutes les données sont sauvées dans le jeu de caractères choisi. Les 
comparaisons normales de chaînes sont insensibles à la casse.
Le tri est fait en fonction du jeu de caractères choisi (par défaut,
le jeu suédois). Il est possible de le changer lorsque le serveur  
MySQL
 
est démarré. Pour voir un exemple très avancé de tri, voyez le code
de tri pour le Tchèque. Le  
serveur MySQL
  supporte de nombreux jeux
de caractères qui peuvent être spécifié à la compilation et durant l'exécution.
 
     Clients et utilitaires
    
Inclut  
myisamchk
 , un utilitaire rapide pour vérifier les tables,
les optimiser et les réparer. Toutes les fonctionnalités de  
myisamchk
 
sont aussi disponibles via l'interface SQL.
 Administration de la base .
Tous les programmes  
MySQL
  peuvent être appelés avec l'option  
--help
  
ou  
-?
  pour obtenir de l'aide en ligne.
 |