. Informations générales . Installer MySQL . Tutoriels d'introduction . Utiliser les programmes MySQL . Administration du serveur . Réplication de MySQL . Optimisation de MySQL . MySQL Scripts clients et utilitaires . Référence du langage MySQL . Structure du langage . Jeux de caractères et Unicode . Types de colonnes . Fonctions à utiliser dans les clauses SELECT et WHERE . Syntaxe des commandes SQL . Types de tables MySQL . Tables InnoDB . Introduction à MySQL Cluster . Introduction à MaxDB . Données spatiales avec MySQL . Procédures stockées et fonctions . API MySQL . Gestion des erreurs avec MySQL . Etendre MySQL . Problèmes et erreurs communes . Crédits . Historique des changements MySQL . Port vers d'autres systèmes . Variables d'environnement . Expressions régulières MySQL . Licence Publique Générale GNU . Index des commandes, types et fonctions SQL . Index conceptuel
|
Manuel de Référence MySQL 4.1 : Version Française
\input texinfo
Top, Introduction, (dir), (dir)
1 Informations générales
1.1 A propos du manuel
1.1.1 Conventions utilisées dans ce manuel
1.2 Qu'est ce que MySQL?
1.2.1 Histoire de MySQL
1.2.2 Les fonctionnalités principales de MySQL
1.2.3 Jusqu'à quel point MySQL est il stable ?
1.2.4 Quelles tailles peuvent atteindre les tables MySQL
1.2.5 Compatibilité an 2000
1.3 Qui est MySQL AB ?
1.3.1 Les services et le modèle d'affaire de MySQL AB
1.3.1.1 Support
1.3.1.2 Formation et certification
1.3.1.3 Conseil
1.3.1.4 Licences commerciales
1.3.1.5 Partenariats
1.3.2 Contacts
1.4 Support MySQL et licences
1.4.1 Support proposé par MySQL AB
1.4.2 Copyrights et licences utilisées par MySQL
1.4.3 Licences MySQL
1.4.3.1 Utiliser MySQL avec la licence commerciale
1.4.3.2 Utiliser MySQL sous licence GPL libre
1.4.4 Logos MySQL AB et marque déposée
1.4.4.1 Le logo original de MySQL
1.4.4.2 Logos MySQL qui peuvent être utilisés dans autorisation préalable
1.4.4.3 Quand avez vous besoin d'autorisation pour utiliser le logo MySQL?
1.4.4.4 Logos de partenariat MySQL AB
1.4.4.5 Utiliser le nom MySQL sur des documents imprimés ou des présentations
1.4.4.6 Utilisation du nom MySQL dans un nom de société ou de produit
1.5 MySQL Plan de développement
1.5.1 MySQL 4.0 en bref
1.5.1.1 Fonctionnalités disponibles en MySQL 4.0
1.5.1.2 MySQL Server intégré (embedded)
1.5.2 MySQL 4.1 en bref
1.5.2.1 Fonctionnalités disponibles en MySQL 4.1
1.5.2.2 Phases de publication
1.5.2.3 Utilisation immédiate en production
1.5.3 MySQL 5.0, les prochains développement
1.6 Les évolutions de MySQL (la liste des tâches)
1.6.1 Nouvelles fonctionnalités prévues pour la version 4.1
1.6.2 Nouvelles fonctionnalités prévues pour la version 5.0
1.6.3 Nouvelles fonctionnalités prévues pour 5.1
1.6.4 Ce qui doit être fait dans un futur proche
1.6.5 Ce qui est prévu à moyen terme
1.6.6 Ce qui n'est pas prévu
1.7 Sources d'informations MySQL
1.7.1 Listes de diffusion MySQL
1.7.1.1 Les listes de diffusion de MySQL
1.7.1.2 Poser des questions ou rapporter un bogue
1.7.1.3 Comment rapporter un bogue ou un problème
1.7.1.4 Conseils pour répondre sur la liste de diffusion
1.7.2 Support de la communauté MySQL sur IRC (Internet Relay Chat)
1.8 Quels standards respecte MySQL?
1.8.1 Quels standards suit MySQL ?
1.8.2 Sélectionner les modes SQL
1.8.3 Exécuter MySQL en mode ANSI
1.8.4 Extensions MySQL au standard SQL-92
1.8.5 Différences entre MySQL et le standard SQL-92
1.8.5.1 Sous-requêtes
1.8.5.2 SELECT INTO TABLE
1.8.5.3 Transactions et opérations atomiques
1.8.5.4 Procédures stockées et triggers
1.8.5.5 Les clés étrangères
1.8.5.6 Les vues
1.8.5.7 '--' comme début de commentaire
1.8.6 Comment MySQL gère les contraintes
1.8.6.1 Contrainte avec PRIMARY KEY / UNIQUE
1.8.6.2 Contraintes avec NOT NULL et DEFAULT
1.8.6.3 Constante avec ENUM et SET
1.8.7 Erreurs connues, et limitations de MySQL
1.8.7.1 Erreurs connues en 3.23 et corrigées ultérieurement
1.8.7.2 Erreurs de la version 4.0, corrigées plus tard
1.8.7.3 Bugs connus / limitations de MySQL
2 Installer MySQL
2.1 Notes générales à propos de l'installation
2.1.1 Systèmes d'exploitation supportés par MySQL
2.1.2 Choisir votre version de MySQL
2.1.2.1 Quelle version de MySQL utiliser ?
2.1.2.2 Choisir le format de distribution
2.1.2.3 Quand et comment sont publiées les nouvelles versions
2.1.2.4 Politique de publication : aucun bug connu dans les versions
2.1.2.5 Binaires compilés par MySQL AB
2.1.3 Comment obtenir MySQL ?
2.1.4 Vérifier l'intégrité des paquets avec MD5 ou GnuPG
2.1.4.1 Vérifier la signature MD5
2.1.4.2 Vérification de la signature avec GnuPG
2.1.4.3 Contrôle d'intégrité avec RPM
2.1.5 Dispositions d'installation
2.2 Installation standard rapide de MySQL
2.2.1 Installer MySQL sous Windows
2.2.1.1 Prérequis système sur Windows
2.2.1.2 Installation d'une distribution binaire sur Windows
2.2.1.3 Préparation de l'environnement MySQL de Windows
2.2.1.4 Choisir un serveur Windows
2.2.1.5 Démarrer le serveur pour la première fois
2.2.1.6 Lancer MySQL en ligne de commande
2.2.1.7 Lancer MySQL comme un service Windows
2.2.1.8 Faire fonctionner MySQL sous Windows
2.2.1.9 MySQL pour Windows face à MySQL pour Unix
2.2.2 Installer MySQL sous Linux
2.2.3 Installer MySQL sur Mac OS X
2.2.4 Installer MySQL sur NetWare
2.2.5 Vue d'ensemble de l'installation rapide
2.3 Installation de MySQL avec une distribution source
2.3.1 Installation depuis les sources : présentation
2.3.2 Options habituelles de configure
2.3.3 Installer à partir de l'arbre source de développement
2.3.4 Problèmes de compilation?
2.3.5 Notes relatives aux MIT-pthreads
2.3.6 La distribution source Windows
2.3.6.1 Compiler MySQL avec VC++
2.3.6.2 Compiler MySQL sur Windows à partir des sources de développement
2.3.7 Compiler les clients MySQL sous Windows
2.4 Procédure de post-installation
2.4.1 Post-installation sous Windows
2.4.2 Procédures de post-installation sous Unix
2.4.2.1 Problèmes d'exécution de mysql_install_db
2.4.2.2 Lancer et arrêter MySQL automatiquement
2.4.2.3 Problèmes de démarrage du serveur MySQL
2.4.3 Création des premiers droits MySQL
2.5 Changer de version de MySQL
2.5.1 Passer en de version 4.1 en version 5.0
2.5.2 Passer de la version 4.0 à la version 4.1
2.5.3 Passer de la version 3.23 à la version 4.0
2.5.4 Passer de la version 3.22 à la version 3.23
2.5.5 Passer de la version 3.21 à la version 3.22
2.5.6 Passer de la version 3.20 à la version 3.21
2.5.7 Mettre à jour MySQL sous Windows
2.5.8 Mise à jour des tables de droits
2.5.9 Migrer depuis une autre architecture
2.6 Notes spécifiques aux systèmes d'exploitation
2.6.1 Notes relatives à Linux (toutes versions)
2.6.1.1 Notes sur Linux
2.6.1.2 Notes relatives à Linux pour les distributions binaires
2.6.1.3 Notes sur la distribution source de Linux
2.6.1.4 Notes de post-installation pour Linux
2.6.1.5 Notes relatives à Linux x86
2.6.1.6 Notes relatives à Linux SPARC
2.6.1.7 Notes relatives à Linux Alpha
2.6.1.8 Note relative à Linux PowerPC
2.6.1.9 Notes relatives à Linux MIPS
2.6.1.10 Notes relatives à Linux IA64
2.6.2 Notes relatives à Mac OS X
2.6.2.1 Mac OS X 10.x
2.6.2.2 Mac OS X Server 1.2 (Rhapsody)
2.6.3 Notes pour Solaris
2.6.3.1 Notes relatives à Solaris 2.7/2.8
2.6.3.2 Remarques pour Solaris x86
2.6.4 Notes relatives à BSD
2.6.4.1 Notes relatives à FreeBSD
2.6.4.2 Notes concernant NetBSD
2.6.4.3 Notes relatives à OpenBSD 2.5
2.6.4.4 Notes relatives à OpenBSD 2.8
2.6.4.5 Notes relatives aux versions 2.x de BSD/OS
2.6.4.6 Notes relatives aux versions 3.x de BSD/OS
2.6.4.7 Notes relatives aux versions 4.x de BSD/OS
2.6.5 Notes sur les autres Unix
2.6.5.1 Notes relatives à la version 10.20 de HP-UX
2.6.5.2 HP-UX Version 11.x Notes
2.6.5.3 Notes relatives à IBM-AIX
2.6.5.4 Notes relatives à SunOS 4
2.6.5.5 Notes pour Alpha-DEC-UNIX ( Tru64 )
2.6.5.6 Notes pour Alpha-DEC-OSF/1
2.6.5.7 Notes relatives à SGI Irix
2.6.5.8 Notes sur SCO
2.6.5.9 Notes sur SCO UnixWare Version 7.1.x
2.6.6 Notes relatives à OS/2
2.6.7 Notes relatives à BeOS
2.7 Commentaires sur l'installation de Perl
2.7.1 Installer Perl sur Unix
2.7.2 Installer ActiveState Perl sur Windows
2.7.3 Problèmes lors de l'utilisation des interfaces Perl DBI et DBD
3 Tutoriels d'introduction
3.1 Connexion et déconnexion au serveur
3.2 Entrer des requêtes
3.3 Création et utilisation d'une base de données
3.3.1 Créer et sélectionner une base de données
3.3.2 Création d'une table
3.3.3 Charger des données dans une table
3.3.4 Récupérer des informations à partir d'une table
3.3.4.1 Sélectionner toutes les données
3.3.4.2 Sélectionner des lignes particulières
3.3.4.3 Sélectionner des colonnes particulières
3.3.4.4 Trier les enregistrements
3.3.4.5 Calcul sur les Dates
3.3.4.6 Travailler avec la valeur NULL
3.3.4.7 Recherche de modèles
3.3.4.8 Compter les lignes
3.3.4.9 Utiliser plus d'une table
3.4 Obtenir des informations à propos des bases de données et des tables
3.5 Utilisation de mysql en mode batch
3.6 Exemples de requêtes usuelles
3.6.1 La valeur maximale d'une colonne
3.6.2 La ligne contenant le maximum d'une certaine colonne
3.6.3 Maximum d'une colonne par groupe
3.6.4 La ligne contenant la plus grande valeur d'un certain champ par rapport à un groupe
3.6.5 Utiliser les variables utilisateur
3.6.6 Utiliser les clefs étrangères
3.6.7 Recherche sur deux clefs
3.6.8 Calcul du nombre de visites par jour
3.6.9 Utiliser AUTO_INCREMENT
3.7 Requêtes du projet Twin
3.7.1 Trouver tous les jumeaux répondant aux critères
3.7.2 Afficher une table avec l'état des paires de jumeaux
3.8 Utilisation de MySQL avec Apache
4 Utiliser les programmes MySQL
4.1 Présentation des logiciels MySQL
4.2 Appeler des programmes MySQL
4.3 Spécifier des options aux programmes
4.3.1 Options de ligne de commande de mysqld
4.3.2 Fichier d'options my.cnf
4.3.3 Utiliser les variables d'environnement pour spécifier des options
4.3.4 Utiliser les options pour configurer des variables de programme
5 Administration du serveur
5.1 Scripts serveur MySQL et utilitaires
5.1.1 Présentation des scripts serveurs et des utilitaires
5.1.2 mysqld-max , la version étendue du serveur mysqld
5.1.3 safe_mysqld , le script père de mysqld
5.1.4 Le script de démarrage mysql.server
5.1.5 mysqld_multi , un programme pour gérer plusieurs serveurs MySQL
5.2 Configuration de MySQL
5.2.1 Options de ligne de commande de mysqld
5.2.2 Le mode SQL du serveur
5.2.3 Variables serveur système
5.2.3.1 Variables système dynamiques
5.2.4 Variables de statut du serveur
5.3 Sécurité générale du serveur
5.3.1 Guide de sécurité
5.3.2 Protéger MySQL contre les attaques
5.3.3 Options de démarrage qui concernent la sécurité
5.3.4 Problèmes de sécurité avec LOAD DATA LOCAL
5.4 Règles de sécurité et droits d'accès au serveur MySQL
5.4.1 Rôle du système de privilèges
5.4.2 Comment fonctionne le système de droits
5.4.3 Droits fournis par MySQL
5.4.4 Se connecter au serveur MySQL
5.4.5 Contrôle d'accès, étape 1 : Vérification de la connexion
5.4.6 Contrôle d'accès, étape 2 : Vérification de la requête
5.4.7 Quand les modifications de privilèges prennent-ils effets ?
5.4.8 Causes des erreurs Access denied
5.4.9 Hashage de mots de passe en MySQL 4.1
5.4.9.1 Implications des modifications de mot de passe pour les applications
5.4.9.2 Gestion des mots de passe en MySQL 4.1.0
5.5 Gestion des comptes utilisateurs de MySQL
5.5.1 Nom d'utilisateurs MySQL et mots de passe
5.5.2 Ajouter de nouveaux utilisateurs à MySQL
5.5.3 Supprimer un compte utilisateur de MySQL
5.5.4 Limiter les ressources utilisateurs
5.5.5 Configurer les mots de passe
5.5.6 Garder vos mots de passe en lieu sûr
5.5.7 Utilisation des connexions sécurisées
5.5.7.1 Introduction aux connexions sécurisées
5.5.7.2 Pré requis aux connexions sécurisées
5.5.7.3 Configurer les certificats SSL pour MySQL
5.5.7.4 Options de GRANT avec SSL
5.5.7.5 Options SSL en ligne de commande
5.5.7.6 Connexion à MySQL à distance avec Windows et SSH
5.6 Prévention des désastres et restauration
5.6.1 Sauvegardes de base de données
5.6.2 Utilisation de myisamchk pour la maintenance des tables et leur recouvrement
5.6.2.1 Syntaxe de l'utilitaire myisamchk
5.6.2.2 Options générales de myisamchk
5.6.2.3 Options de vérifications pour myisamchk
5.6.2.4 Options de réparation de myisamchk
5.6.2.5 Autres options de myisamchk
5.6.2.6 Utilisation de la mémoire par myisamchk
5.6.2.7 Utiliser myisamchk pour restaurer une table
5.6.2.8 Comment vérifier la cohérence d'une table
5.6.2.9 Comment réparer des tables
5.6.2.10 Optimisation de table
5.6.3 Mettre en place un régime d'entretien de MySQL
5.6.4 Obtenir des informations sur une table
5.7 Localisation MySQL et utilisation internationale
5.7.1 Le jeu de caractères utilisé pour les données et le stockage
5.7.1.1 Jeu de caractères allemand
5.7.2 Langue des messages d'erreurs
5.7.3 Ajouter un nouveau jeu de caractères
5.7.4 Le tableau de définition des caractères
5.7.5 Support d'assemblage des chaînes
5.7.6 Support des caractères multi-octets
5.7.7 Problèmes avec les jeux de caractères
5.8 Les fichiers de log de MySQL
5.8.1 Le log d'erreurs
5.8.2 Le log général de requêtes
5.8.3 Le log de modification
5.8.4 Le log binaire
5.8.5 Le log des requêtes lentes
5.8.6 Entretien des fichiers de log
5.9 Faire fonctionner plusieurs serveurs MySQL sur la même machine
5.9.1 Utiliser plusieurs serveurs MySQL un serveur Windows
5.9.1.1 Lancer plusieurs serveurs depuis la console
5.9.1.2 Lancer plusieurs serveurs comme services Windows
5.9.2 Utiliser plusieurs serveurs sous Unix
5.9.3 Utiliser les clients dans un environnement multi-serveur
5.10 Cache de requêtes MySQL
5.10.1 Comment fonctionne le cache de requêtes
5.10.2 Options relatives au cache de requêtes dans un SELECT
5.10.3 Configuration du cache de requêtes
5.10.4 Statut du cache de requêtes et maintenance
6 Réplication de MySQL
6.1 Introduction à la réplication
6.2 Présentation de l'implémentation de la réplication
6.3 Détails d'implémentation de la réplication
6.3.1 Etat de réplication du maître
6.3.2 Etats du thread esclave d'E/S
6.3.3 Etats des esclaves de réplication
6.3.4 Fichiers de relais et de statut de la réplication
6.4 Comment mettre en place la réplication
6.5 Compatibilité de la réplication entre les versions de MySQL
6.5.1 Changer de version de réplication
6.5.2 Passer à la réplication version 4.0
6.5.3 Passer à la réplication version 5.0
6.6 Fonctionnalités de la réplication et problèmes connus
6.7 Options de démarrage de la réplication
6.8 FAQ de la réplication
6.9 Correction de problèmes courants
6.10 Rapporter des bugs de réplication
7 Optimisation de MySQL
7.1 Présentation de l'optimisation
7.1.1 Limitations et inconvénients des choix conceptuels de MySQL
7.1.2 Portabilité
7.1.3 Pour quoi avons nous utilisé MySQL ?
7.1.4 La suite de tests MySQL
7.1.5 Utiliser vos propres tests de performance
7.2 Optimisation des commandes SELECT et autres requêtes
7.2.1 Syntaxe de EXPLAIN (Obtenir des informations sur les SELECT )
7.2.2 Mesurer les performances d'une requête
7.2.3 Vitesse des requêtes SELECT
7.2.4 Comment MySQL optimise les clauses WHERE
7.2.5 Comment MySQL optimise la condition OR
7.2.6 Comment MySQL optimise IS NULL
7.2.7 Comment MySQL optimise DISTINCT
7.2.8 Comment MySQL optimise les clauses LEFT JOIN et RIGHT JOIN
7.2.9 Comment MySQL optimise ORDER BY
7.2.10 Comment MySQL optimise LIMIT
7.2.11 Comment éviter les scans de tables,,,
7.2.12 Vitesse des requêtes INSERT
7.2.13 Vitesses des commandes UPDATE
7.2.14 Rapidité des requêtes DELETE
7.2.15 Autres conseils d'optimisation
7.3 Verrouillage de tables
7.3.1 Méthodes de verrouillage
7.3.2 Problème de verrouillage de tables
7.4 Optimiser la structure de la base de données
7.4.1 Conception
7.4.2 Rendre vos tables aussi compactes que possible
7.4.3 Index de colonnes
7.4.4 Index sur plusieurs colonnes
7.4.5 Comment MySQL utilise les index
7.4.6 Le cache de clé des tables MyISAM
7.4.6.1 Accès au cache de clé partagé
7.4.6.2 Caches multiples de clés
7.4.6.3 Stratégie d'insertion au milieu
7.4.6.4 Pré-chargement des index
7.4.6.5 Taille des blocs du cache de clé
7.4.6.6 Restructurer le cache de clé
7.4.7 Comment MySQL compte les tables ouvertes
7.4.8 Quand MySQL ouvre et ferme les tables
7.4.9 Inconvénients de la création d'un grand nombre de tables dans la même base de données
7.5 Optimiser le serveur MySQL
7.5.1 Réglage du système, au moment de la compilation, et paramètres du démarrage
7.5.2 Réglage des paramètres du serveur
7.5.3 Influences de la compilation et des liaisons sur la vitesse de MySQL
7.5.4 Comment MySQL gère la mémoire
7.5.5 Comment MySQL utilise le DNS
7.6 Problèmes avec les disques
7.6.1 Utiliser des liens symboliques
7.6.1.1 Utiliser les liens symboliques pour les bases
7.6.1.2 Utiliser les liens symboliques avec les tables sous Unix
7.6.1.3 Utiliser des liens symboliques pour les bases de données sous Windows
8 MySQL Scripts clients et utilitaires
8.1 Présentation des scripts serveurs et utilitaires
8.2 myisampack , le générateur de tables MySQL compressées en lecture seule
8.3 mysql , l'outil en ligne de commande
8.3.1 Commandes mysql
8.3.2 Comment exécuter des commandes SQL depuis un fichier texte
8.3.3 Conseils avec mysql
8.3.3.1 Affichage des résultats verticalement
8.3.3.2 Utilisation de l'option --safe-updates
8.3.3.3 Désactiver la reconnexion automatique de mysql
8.4 mysqladmin , administration d'un serveur MySQL
8.5 mysqlbinlog , Exécuter des requêtes dans le log binaire
8.6 mysqlcc , MySQL Control Center
8.7 Utiliser mysqlcheck pour l'entretien et la réparation
8.8 mysqldump , sauvegarde des structures de tables et les données
8.9 mysqlhotcopy , copier les bases et tables MySQL
8.10 mysqlimport , importer des données depuis des fichiers texte
8.11 Afficher les bases, tables et colonnes
8.12 perror , expliquer les codes d'erreurs
8.13 L'utilitaire de remplacement de chaînes replace
9 Référence du langage MySQL
10 Structure du langage
10.1 Littéraux : comment écrire les chaînes et les nombres
10.1.1 Chaînes
10.1.2 Nombres
10.1.3 Valeurs hexadécimales
10.1.4 Valeurs booléennes
10.1.5 Valeurs NULL
10.2 Noms de bases, tables, index, colonnes et alias
10.2.1 Identifiants
10.2.2 Sensibilité à la casse pour les noms
10.3 Variables utilisateur
10.4 Variables système
10.4.1 Variables système structurées
10.5 Syntaxe des commentaires
10.6 Cas des mots réservés MySQL
11 Jeux de caractères et Unicode
11.1 Jeux de caractères et collation : généralités
11.2 Jeux de caractères et collation dans MySQL
11.3 Déterminer le jeu de caractères et la collation par défaut
11.3.1 Jeu de caractères et collation serveur
11.3.2 Jeu de caractères et collation de base de données
11.3.3 Jeu de caractères de tables et collation
11.3.4 Jeu de caractères de colonne et collation
11.3.5 Exemples d'attribution de jeu de caractères et collation
11.3.6 Jeux de caractères et collations de connexion
11.3.7 Jeu de caractères et collation des chaînes littérales
11.3.8 Clause COLLATE dans différentes parties d'une requête SQL
11.3.9 COLLATE clause de précédence
11.3.10 Opérateur BINARY
11.3.11 Quelques cas spéciaux où la détermination de la collation est difficile
11.3.12 Les collation doivent correspondre au bon jeu de caractères
11.3.13 Un exemple de l'effet de collation
11.4 Opérations affectées par le support de jeux de caractères.
11.4.1 Chaînes résultats
11.4.2 CONVERT()
11.4.3 CAST()
11.4.4 Commande SHOW
11.5 Support de Unicode
11.6 UTF8 pour les meta-données
11.7 Compatibilité avec d'autres bases de données
11.8 Nouveau format de fichier de configuration de jeux de caractères
11.9 Jeux de caractères national
11.10 Préparer le passage de version 4.0 en 4.1
11.10.1 Jeux de caractères 4.0 et binômes de jeux de caractères/collations 4.1 correspondants
11.10.2 Conversion de colonnes version 4.0 en version 4.1
11.11 Les jeux de caractères et collation supportés par MySQL.
11.11.1 Les jeux de caractère Unicode
11.11.2 Les jeux de caractères d'Europe de l'Ouest.
11.11.3 Les jeux de caractères d'Europe Centrale
11.11.4 Jeu de caractères pour l'Europe du Sud et le Moyen-Orient
11.11.5 Les jeux de caractères baltes
11.11.6 Les jeux de caractère cyrilliques
11.11.7 Les jeux de caractères asiatiques
12 Types de colonnes
12.1 Introduction aux types de colonnes
12.1.1 Présentation des types numériques of Numeric Types
12.1.2 Présentation des types de données temporels : dates et heures
12.1.3 Présentation des types de chaînes
12.2 Types numériques
12.3 Les types date et heure
12.3.1 Les types DATETIME , DATE , et TIMESTAMP
12.3.1.1 Comportement de TIMESTAMP avant MySQL 4.1
12.3.1.2 Propriétés de TIMESTAMP depuis la version 4.1
12.3.2 Le type TIME
12.3.3 Le type YEAR
12.3.4 An 2000 et les types date
12.4 Les types chaînes
12.4.1 Les types CHAR et VARCHAR
12.4.2 Les types BLOB et TEXT
12.4.3 Le type ENUM
12.4.4 Le type SET
12.5 Capacités des colonnes
12.6 Choisir le bon type de colonne
12.7 Utilisation des types de données issues d'autres SGBDR
13 Fonctions à utiliser dans les clauses SELECT et WHERE
13.1 Opérateurs et fonctions tous types
13.1.1 Parenthèses
13.1.2 Opérateurs de comparaison
13.1.3 Opérateurs logiques
13.1.4 Sensibilité à la casse
13.2 Les fonctions de contrôle
13.3 Fonctions de chaînes de caractères
13.3.1 Opérateurs de comparaison pour les chaînes de caractères
13.4 Fonctions numériques
13.4.1 Opérations arithmétiques
13.4.2 Fonctions mathématiques
13.5 Fonctions de dates et d'heures
13.6 Recherche en texte intégral ( Full-text ) dans MySQL
13.6.1 Booléens de recherches en texte intégral
13.6.2 Recherche en texte intégral avec extension de requête
13.6.3 Restrictions avec la recherche en texte intégral
13.6.4 Paramétrage précis de la recherche en text intégral de MySQL
13.6.5 A faire dans la recherche Full-text
13.7 Fonctions de transtypage
13.8 Autres fonctions
13.8.1 Fonctions sur les bits
13.8.2 Fonctions de chiffrements
13.8.3 Fonctions d'informations
13.8.4 Fonctions diverses
13.9 Fonctions et options à utiliser dans les clauses GROUP BY
13.9.1 Fonctions avec GROUP BY
13.9.2 Options de GROUP BY
13.9.3 GROUP BY avec les champs cachés
14 Syntaxe des commandes SQL
14.1 Manipulation de données : SELECT , INSERT , UPDATE , DELETE
14.1.1 Syntaxe de DELETE
14.1.2 Syntaxe de DO
14.1.3 Syntaxe de HANDLER
14.1.4 Syntaxe de INSERT
14.1.4.1 Syntaxe de INSERT ... SELECT
14.1.4.2 Syntaxe de INSERT DELAYED
14.1.5 Syntaxe de LOAD DATA INFILE
14.1.6 Syntaxe de REPLACE
14.1.7 Syntaxe de SELECT
14.1.7.1 Syntaxe de JOIN
14.1.7.2 Syntaxe de UNION
14.1.8 Sous-sélections ( SubSELECT )
14.1.8.1 Les sous-requêtes comme opérateur scalaire
14.1.8.2 Comparaisons avec les sous-requêtes
14.1.8.3 Sous-requêtes avec les clauses ANY , IN et SOME
14.1.8.4 Sous-requêtes avec ALL
14.1.8.5 Sous-requêtes corrélées
14.1.8.6 EXISTS et NOT EXISTS
14.1.8.7 Sous-requêtes de ligne
14.1.8.8 Sous-requêtes dans la clause FROM
14.1.8.9 Erreurs de sous-requêtes
14.1.8.10 Optimisation des sous-requêtes
14.1.8.11 Se passer des sous-requêtes avec les premières versions de MySQL
14.1.9 Syntaxe de TRUNCATE
14.1.10 Syntaxe de UPDATE
14.2 Définition de données : CREATE , DROP , ALTER
14.2.1 Syntaxe de ALTER DATABASE
14.2.2 Syntaxe de ALTER TABLE
14.2.3 Syntaxe de CREATE DATABASE
14.2.4 Syntaxe de CREATE INDEX
14.2.5 Syntaxe de CREATE TABLE
14.2.5.1 Modification automatique du type de colonnes
14.2.6 Syntaxe de DROP DATABASE
14.2.7 Syntaxe de DROP INDEX
14.2.8 Syntaxe de DROP TABLE
14.2.9 Syntaxe de RENAME TABLE
14.3 Commandes de bases de l'utilisateur de MySQL
14.3.1 Syntaxe de DESCRIBE (obtenir des informations sur les colonnes)
14.3.2 Syntaxe de USE
14.4 Commandes relatives aux verrous et aux transactions
14.4.1 Syntaxes de START TRANSACTION , COMMIT et ROLLBACK
14.4.2 Commandes qui ne peuvent pas être annulées
14.4.3 Commandes qui peuvent causer une validation implicite
14.4.4 Syntaxe de SAVEPOINT et ROLLBACK TO SAVEPOINT
14.4.5 Syntaxe de LOCK TABLES/UNLOCK TABLES
14.4.6 Syntaxe de SET TRANSACTION
14.5 Référence de langage d'administration de la base de données
14.5.1 Commande de gestions des comptes utilisateurs
14.5.1.1 Effacer des utilisateurs MySQL
14.5.1.2 Syntaxe de GRANT et REVOKE
14.5.1.3 Syntaxe de SET PASSWORD
14.5.2 Commandes d'entretien des tables
14.5.2.1 Syntaxe de ANALYZE TABLE
14.5.2.2 Syntaxe de BACKUP TABLE
14.5.2.3 Syntaxe de CHECK TABLE
14.5.2.4 Syntaxe de CHECKSUM TABLE
14.5.2.5 Syntaxe de OPTIMIZE TABLE
14.5.2.6 Syntaxe de REPAIR TABLE
14.5.2.7 Syntaxe de RESTORE TABLE
14.5.3 Syntaxe de SHOW
14.5.3.1 Syntaxe de SET
14.5.3.2 Commande SHOW CHARACTER SET
14.5.3.3 Syntaxe de SHOW COLLATION
14.5.3.4 Syntaxe de SHOW COLUMNS
14.5.3.5 Syntaxe de SHOW CREATE DATABASE
14.5.3.6 Syntaxe de SHOW CREATE TABLE
14.5.3.7 Obtenir des informations sur les bases, tables, colonnes et index
14.5.3.8 Syntaxe SHOW ENGINES
14.5.3.9 Syntaxe de SHOW ERRORS
14.5.3.10 SHOW GRANTS
14.5.3.11 Syntaxe de SHOW INDEX
14.5.3.12 Syntaxe de SHOW INNODB STATUS
14.5.3.13 Syntaxe de SHOW LOGS
14.5.3.14 SHOW PRIVILEGES
14.5.3.15 Syntaxe de SHOW PROCESSLIST
14.5.3.16 Syntaxe de SHOW STATUS
14.5.3.17 SHOW TABLE STATUS
14.5.3.18 Syntaxe de SHOW TABLES
14.5.3.19 Syntaxe de SHOW VARIABLES
14.5.3.20 SHOW WARNINGS | ERRORS
14.5.4 Autres commandes d'administration
14.5.4.1 Syntaxe de CACHE INDEX
14.5.4.2 Syntaxe de FLUSH
14.5.4.3 Syntaxe de KILL
14.5.4.4 Syntaxe de LOAD INDEX INTO CACHE
14.5.4.5 Syntaxe de la commande RESET
14.6 Commandes de réplication
14.6.1 Requêtes SQL pour contrôler les maîtres de réplication
14.6.1.1 PURGE MASTER LOGS
14.6.1.2 RESET MASTER
14.6.1.3 SET SQL_LOG_BIN
14.6.1.4 SHOW BINLOG EVENTS
14.6.1.5 SHOW MASTER LOGS
14.6.1.6 SHOW MASTER STATUS
14.6.1.7 SHOW SLAVE HOSTS
14.6.2 Commandes SQL de contrôle des esclaves de réplication
14.6.2.1 CHANGE MASTER TO
14.6.2.2 LOAD DATA FROM MASTER
14.6.2.3 Syntaxe de LOAD TABLE tbl_name FROM MASTER
14.6.2.4 MASTER_POS_WAIT()
14.6.2.5 RESET SLAVE
14.6.2.6 SET GLOBAL SQL_SLAVE_SKIP_COUNTER
14.6.2.7 SHOW SLAVE STATUS
14.6.2.8 START SLAVE
14.6.2.9 STOP SLAVE
15 Types de tables MySQL
15.1 Le moteur de tables MyISAM
15.1.1 Options de démarrage MyISAM
15.1.2 Espace requis pour les clefs
15.1.3 Formats de table MyISAM
15.1.3.1 Caractéristiques des tables statiques (taille fixée)
15.1.3.2 Caractéristiques des tables à format de ligne dynamiques
15.1.3.3 Caractéristiques des tables compressées
15.1.4 Problèmes avec les tables MyISAM
15.1.4.1 Tables MyISAM corrompues
15.1.4.2 Des clients utilisent la table, ou bien elle n'a pas été fermée correctement
15.2 Tables assemblées MERGE
15.2.1 Problèmes avec les tables MERGE
15.3 Tables HEAP
15.4 Tables BDB ou BerkeleyDB
15.4.1 Systèmes d'exploitation supportés par BDB
15.4.2 Installation de BDB
15.4.3 Options de démarrage BDB
15.4.4 Caractéristiques des tables BDB
15.4.5 Ce que nous devons corriger dans BDB dans un futur proche :
15.4.6 Restrictions avec les tables BDB
15.4.7 Erreurs pouvant survenir lors de l'utilisation des tables BDB
15.5 Tables ISAM
16 Tables InnoDB
16.1 Présentation des tables InnoDB
16.2 Informations de contact InnoDB
16.3 InnoDB avec MySQL version 3.23
16.4 Configuration InnoDB
16.5 Options de démarrage InnoDB
16.6 Créer des bases InnoDB
16.6.1 Si quelque chose se passe mal à la création de la base de données
16.7 Créer des tables InnoDB
16.7.1 Comment utiliser les transactions de InnoDB avec différentes API
16.7.2 Convertir des tables MyISAM vers InnoDB
16.7.3 Comment les colonnes AUTO_INCREMENT fonctionnent avec InnoDB
16.7.4 Contraintes de clés étrangères FOREIGN KEY
16.7.5 InnoDB et la réplication MySQL
16.7.6 Espaces de tables multiples : chaque table InnoDB a son fichier @filename{.ibd}
16.8 Ajouter et retirer des données et des logs InnoDB
16.9 Sauver et restaurer une base InnoDB
16.9.1 Forcer la restauration
16.9.2 Points de contrôle
16.10 Transférer une base de données InnoDB vers une autre machine
16.11 Modèle de transactions et verrouillage InnoDB
16.11.1 InnoDB et AUTOCOMMIT
16.11.2 InnoDB et SET ... TRANSACTION ISOLATION LEVEL ...
16.11.3 Lecture cohérente non-bloquante
16.11.4 Verrous de lecture SELECT ... FOR UPDATE et SELECT ... LOCK IN SHARE MODE
16.11.5 Verrou de clé suivante : éviter le problème des lignes fantômes
16.11.6 Un exemple de lecture cohérente avec InnoDB
16.11.7 Les verrous posés par différentes requêtes SQL avec InnoDB
16.11.8 Quand est-ce que MySQL valide ou annule implicitement une transaction?
16.11.9 Détection des blocages et annulation
16.11.10 Comment gérer les blocages de verrous?
16.12 Conseils pour l'amélioration des performances InnoDB
16.12.1 Le moniteur InnoDB
16.13 Implémentation du multi-versionnage
16.14 Structures de tables et d'index
16.14.1 Structure physique d'un index
16.14.2 Bufferisation des insertions
16.14.3 Index hash adaptatifs
16.14.4 Structure physique d'une ligne
16.15 Gestion de l'espace fichiers et des entrées/sorties disque
16.15.1 Accès disques
16.15.2 Utiliser les raw devices pour l'espace de tables
16.15.3 Gestion de l'espace fichier
16.15.4 Défragmentation des tables
16.16 Gestion des erreurs InnoDB
16.16.1 Codes d'erreurs InnoDB
16.16.2 Codes d'erreur sytème
16.17 Restrictions sur les tables InnoDB
16.18 Résolution de problèmes avec InnoDB
16.18.1 Solutions pour le dictionnaire de données InnoDB
17 Introduction à MySQL Cluster
17.1 Présentation de MySQL Cluster
17.2 Histoire de MySQL Cluster
17.3 Licence et support de MySQL Cluster
17.4 Concepts de base de MySQL Cluster
17.5 Haute disponibilité avec MySQL Cluster
17.5.1 Gestion des indisponibilités de noeuds
17.5.2 Gestion du redémarrage d'un noeud
17.5.3 Modèle de restauration après crash
17.5.4 Gestion d'un redémarrage système
17.5.5 Comment MySQL Cluster évite les cloisenements réseau
17.5.6 Sauvegarde en ligne de MySQL Cluster
17.6 Configuration de MySQL Cluster
17.7 Gestion de processus avec MySQL Cluster
17.8 Administration de MySQL Cluster
17.9 Création de tables NDBCluster
17.10 Modèle de transaction de MySQL Cluster
17.11 Structures de lignes et d'index avec MySQL Cluster
17.11.1 Structure de ligne de taille fixe
17.11.2 Parties de lignes à taille dynamique
17.11.3 Gestion des BLOB avec MySQL Cluster
17.11.4 Structure d'un index
17.11.5 Structure d'un index ordonné
17.12 Méthodes d'accès aux tables avec MySQL Cluster
17.12.1 Accès aux clés primaires
17.12.2 Accès aux hash uniques
17.12.3 Scan de table complète
17.12.4 Scan d'intervalle
17.13 Optimisation des performances avec MySQL Cluster
17.14 Gestion des erreurs avec MySQL Cluster
17.15 Restrictions sur les tables NDBCluster
17.16 Solutions aux problèmes avec MySQL Cluster
17.17 Liste de tâches pour MySQL Cluster
18 Introduction à MaxDB
18.1 Historique de MaxDB
18.2 Licence et support MaxDB
18.3 Liens traitant de MaxDB
18.4 Concepts de base de MaxDB
18.5 Différences de fonctionnalités entre MaxDB et MySQL
18.6 Interopérabilité entre MaxDB et MySQL
18.7 Mots réservés de MaxDB
19 Données spatiales avec MySQL
19.1 Introduction à GIS
19.2 Le modèle géométrique OpenGIS
19.2.1 La hiérarchie des classes géométriques
19.2.2 Classe Geometry
19.2.3 Classe Point
19.2.4 Classe Curve
19.2.5 Classe LineString
19.2.6 Classe Surface
19.2.7 Classe Polygon
19.2.8 Classe GeometryCollection
19.2.9 Classe MultiPoint
19.2.10 Classe MultiCurve
19.2.11 Classe MultiLineString
19.2.12 Classe MultiSurface
19.2.13 Classe MultiPolygon
19.3 Formats géométriques supportés
19.3.1 Format Well-Known Text (WKT)
19.3.2 Le format Well-Known Binary (WKB)
19.4 Créer une base de données avec les fonctionnalités géographiques
19.4.1 Types de données géographiques MySQL
19.4.2 Créer des objets géographiques
19.4.2.1 Créer des objets géométriques avec les fonctions WKT
19.4.2.2 Créer des objets géométriques avec les fonctions WKB
19.4.2.3 Création de formes géométriques avec les fonctions spécifiques de MySQL
19.4.3 Créer des colonnes géométriques
19.4.4 Remplir des colonnes géométriques
19.4.5 Lire des données géométriques
19.4.5.1 Lire des données géométriques au format interne
19.4.5.2 Lire des données géométriques au format WBT
19.4.5.3 Lire des données géométriques au format WBK
19.5 Analyser des données géographiques
19.5.1 Fonctions pour convertir les formes de format
19.5.2 Fonction d'analyse des propriétés des formes Geometry
19.5.2.1 Fonctions générales d'analyse géométrique
19.5.2.2 Fonctions d'analyse des Point
19.5.2.3 Fonctions d'analyse des lignes LineString
19.5.2.4 Fonctions d'analyse des lignes MultiLineString
19.5.2.5 Fonctions d'analyse des lignes Polygon
19.5.2.6 Fonctions d'analyse des lignes MultiPolygon
19.5.2.7 Fonctions d'analyse des lignes GeometryCollection
19.5.3 Fonctions qui génèrent des formes géométriques à partir d'autres formes
19.5.3.1 Fonctions géométriques qui génèrent de nouvelles formes
19.5.3.2 Opérateurs géométriques
19.5.4 Fonctions de tests des relations géométriques entre les formes
19.5.5 Relations avec les Rectangles enveloppes (MBRs)
19.5.6 Fonctions qui testent les relations géométriques entre les formes
19.6 Optimiser l'analyse géographique
19.6.1 Créer un index géométrique
19.6.2 Utiliser un index géométrique
19.7 MySQL compatibilité avec GIS
19.7.1 Les fonctionnalités de GIS que nous n'avons pas encore implémenté
20 Procédures stockées et fonctions
20.1 Syntaxe des procédures stockées
20.1.1 Gérer des procédures stockées
20.1.1.1 CREATE PROCEDURE et CREATE FUNCTION
20.1.1.2 ALTER PROCEDURE et ALTER FUNCTION
20.1.1.3 DROP PROCEDURE et DROP FUNCTION
20.1.1.4 SHOW CREATE PROCEDURE et SHOW CREATE FUNCTION
20.1.2 SHOW PROCEDURE STATUS et SHOW FUNCTION STATUS
20.1.3 CALL
20.1.4 La commande composée BEGIN ... END
20.1.5 La commande DECLARE
20.1.6 Les variables dans les procédures stockées
20.1.6.1 DECLARE : déclarer une variable locale
20.1.6.2 Commande d'affectation de variables SET
20.1.6.3 Syntaxe de SELECT ... INTO
20.1.7 Conditions et gestionnaires
20.1.7.1 DECLARE une condition
20.1.7.2 DECLARE un gestionnaire
20.1.8 Curseurs
20.1.8.1 Déclaration des curseurs
20.1.8.2 Commande de curseur OPEN
20.1.8.3 Commande de curseur FETCH
20.1.8.4 Commande de curseur CLOSE
20.1.9 Instructions de contrôle
20.1.9.1 Commande IF
20.1.9.2 Commande CASE
20.1.9.3 Commande LOOP
20.1.9.4 Commande LEAVE
20.1.9.5 Commande ITERATE
20.1.9.6 Commande REPEAT
20.1.9.7 Syntaxe WHILE
21 API MySQL
21.1 Utilitaires de développement des programmes MySQL
21.1.1 msql2mysql , convertit des programmes mSQL vers MySQL
21.1.2 mysql_config lit les options de compilations du client MySQL
21.2 API MySQL C
21.2.1 Types de données de l'API C
21.2.2 Vue d'ensemble des fonctions de l'API C
21.2.3 Description des fonctions de l'API C
21.2.3.1 mysql_affected_rows()
21.2.3.2 mysql_change_user()
21.2.3.3 mysql_character_set_name()
21.2.3.4 mysql_close()
21.2.3.5 mysql_connect()
21.2.3.6 mysql_create_db()
21.2.3.7 mysql_data_seek()
21.2.3.8 mysql_debug()
21.2.3.9 mysql_drop_db()
21.2.3.10 mysql_dump_debug_info()
21.2.3.11 mysql_eof()
21.2.3.12 mysql_errno()
21.2.3.13 mysql_error()
21.2.3.14 mysql_escape_string()
21.2.3.15 mysql_fetch_field()
21.2.3.16 mysql_fetch_fields()
21.2.3.17 mysql_fetch_field_direct()
21.2.3.18 mysql_fetch_lengths()
21.2.3.19 mysql_fetch_row()
21.2.3.20 mysql_field_count()
21.2.3.21 mysql_field_seek()
21.2.3.22 mysql_field_tell()
21.2.3.23 mysql_free_result()
21.2.3.24 mysql_get_client_info()
21.2.3.25 mysql_get_client_version()
21.2.3.26 mysql_get_host_info()
21.2.3.27 mysql_get_proto_info()
21.2.3.28 mysql_get_server_info()
21.2.3.29 mysql_get_server_version()
21.2.3.30 mysql_info()
21.2.3.31 mysql_init()
21.2.3.32 mysql_insert_id()
21.2.3.33 mysql_kill()
21.2.3.34 mysql_list_dbs()
21.2.3.35 mysql_list_fields()
21.2.3.36 mysql_list_processes()
21.2.3.37 mysql_list_tables()
21.2.3.38 mysql_num_fields()
21.2.3.39 mysql_num_rows()
21.2.3.40 mysql_options()
21.2.3.41 mysql_ping()
21.2.3.42 mysql_query()
21.2.3.43 mysql_real_connect()
21.2.3.44 mysql_real_escape_string()
21.2.3.45 mysql_real_query()
21.2.3.46 mysql_reload()
21.2.3.47 mysql_row_seek()
21.2.3.48 mysql_row_tell()
21.2.3.49 mysql_select_db()
21.2.3.50 mysql_set_server_option()
21.2.3.51 mysql_shutdown()
21.2.3.52 mysql_sqlstate()
21.2.3.53 mysql_ssl_set()
21.2.3.54 mysql_stat()
21.2.3.55 mysql_store_result()
21.2.3.56 mysql_thread_id()
21.2.3.57 mysql_use_result()
21.2.3.58 mysql_warning_count()
21.2.3.59 mysql_commit()
21.2.3.60 mysql_rollback()
21.2.3.61 mysql_autocommit()
21.2.3.62 mysql_more_results()
21.2.3.63 mysql_next_result()
21.2.4 Fonctions C de commandes préparées
21.2.5 Types de données de l'API C
21.2.6 Présentation des fonctions de l'interface C
21.2.7 Descriptions des fonctions C pour les requêtes préparées
21.2.7.1 mysql_stmt_init()
21.2.7.2 mysql_stmt_bind_param()
21.2.7.3 mysql_stmt_bind_result()
21.2.7.4 mysql_stmt_execute()
21.2.7.5 mysql_stmt_fetch()
21.2.7.6 mysql_stmt_fetch_column()
21.2.7.7 mysql_stmt_result_metadata()
21.2.7.8 mysql_stmt_param_count()
21.2.7.9 mysql_stmt_param_metadata()
21.2.7.10 mysql_stmt_prepare()
21.2.7.11 mysql_stmt_send_long_data()
21.2.7.12 mysql_stmt_affected_rows()
21.2.7.13 mysql_stmt_insert_id()
21.2.7.14 mysql_stmt_close()
21.2.7.15 mysql_stmt_data_seek()
21.2.7.16 mysql_stmt_errno()
21.2.7.17 mysql_stmt_error()
21.2.7.18 mysql_stmt_free_result()
21.2.7.19 mysql_stmt_num_rows()
21.2.7.20 mysql_stmt_reset()
21.2.7.21 mysql_stmt_row_seek()
21.2.7.22 mysql_stmt_row_tell()
21.2.7.23 mysql_stmt_sqlstate()
21.2.7.24 mysql_stmt_store_result()
21.2.7.25 mysql_stmt_attr_set()
21.2.7.26 mysql_stmt_attr_get()
21.2.8 Gestion des commandes multiples avec l'interface C
21.2.9 Gestion des dates et horaires avec l'interface C
21.2.10 Description des fonctions threadées de C
21.2.10.1 my_init()
21.2.10.2 mysql_thread_init()
21.2.10.3 mysql_thread_end()
21.2.10.4 mysql_thread_safe()
21.2.11 Description des fonctions C du serveur embarqué
21.2.11.1 mysql_server_init()
21.2.11.2 mysql_server_end()
21.2.12 Questions courantes sur la bibliothèque C
21.2.12.1 Pourquoi est-ce que mysql_store_result() retourne parfois NULL après que mysql_query() ait réussi
21.2.12.2 Quels résultats puis-je obtenir d'une requête?
21.2.12.3 Comment lire l'identifiant unique de la dernière ligne insérée
21.2.12.4 Problèmes lors de la liaison avec l'API C
21.2.13 Compiler les clients
21.2.14 Comment faire un client MySQL threadé
21.2.15 libmysqld , la bibliothèque du serveur embarqué MySQL
21.2.15.1 Vue d'ensemble de la bibliothèque du serveur embarqué MySQL
21.2.15.2 Compiler des programmes avec libmysqld
21.2.15.3 Restrictions lors de l'utilisation du serveur embarqué MySQL
21.2.15.4 Utilisation de fichiers d'options avec le serveur embarqué
21.2.15.5 Choses à faire pour le serveur embarqué (TODO)
21.2.15.6 Un exemple simple de serveur embarqué
21.2.15.7 Licence du serveur embarqué
21.3 Support ODBC avec MySQL
21.3.1 Comment installer MyODBC
21.3.2 Comment remplir les différents champs dans le programme d'administrateur ODBC
21.3.3 Paramètres de connexion de MyODBC
21.3.4 Comment reporter les problèmes avec ODBC
21.3.5 Programmes qui fonctionnent avec MyODBC
21.3.6 Comment obtenir la valeur d'une colonne AUTO_INCREMENT avec ODBC
21.3.7 Rapporter des problèmes avec MYODBC
21.4 Connexion Java/MySQL (JDBC)
21.5 API PHP pour MySQL
21.5.1 Problèmes fréquents avec MySQL et PHP
21.6 API Perl pour MySQL
21.7 Interface MySQL C++
21.7.1 Borland C++
21.8 MySQL Python API
21.9 MySQL Tcl API
21.10 Couche MySQL pour Eiffel
22 Gestion des erreurs avec MySQL
22.1 Retours d'erreurs
22.2 Messages d'erreurs
23 Etendre MySQL
23.1 Rouages de MySQL
23.1.1 Threads MySQL
23.1.2 Suite de test de MySQL
23.1.2.1 Exécuter la suite de tests MySQL
23.1.2.2 Améliorer la suite de tests MySQL
23.1.2.3 Rapporter des bugs dans la suite de tests MySQL
23.2 Ajouter des fonctions à MySQL
23.2.1 Syntaxe de CREATE FUNCTION/DROP FUNCTION
23.2.2 Ajouter une nouvelle fonction définie par l'utilisateur ( UDF )
23.2.2.1 Fonctions utilisateur : appeler des fonctions simples
23.2.2.2 Appeler des fonctions utilisateurs pour les groupements
23.2.2.3 Traitement des arguments
23.2.2.4 Valeurs de retour et gestion d'erreurs.
23.2.2.5 Compiler et installer des fonctions utilisateurs
23.2.3 Ajouter de nouvelles fonctions natives
23.3 Ajouter une nouvelle procédure à MySQL
23.3.1 La procédure Analyse
23.3.2 Ecrire une procédure
24 Problèmes et erreurs communes
24.1 Comment déterminer ce qui pose problème
24.2 Erreurs communes rencontrées avec MySQL
24.2.1 Erreur Access denied
24.2.2 Erreur Can't connect to [local] MySQL server
24.2.3 Erreur Client does not support authentication protocol
24.2.4 Echec de saisie du mot de passe avec le client interactif
24.2.5 Erreur Host '...' is blocked
24.2.6 Erreur Too many connections
24.2.7 Erreur Out of memory
24.2.8 Erreur MySQL server has gone away
24.2.9 Erreur Packet too large
24.2.10 Erreurs de communication / Connexion annulée
24.2.11 Erreur The table is full
24.2.12 Erreur Can't create/write to file
24.2.13 Erreur du client Commands out of sync
24.2.14 Erreur Ignoring user
24.2.15 Erreur Table 'xxx' doesn't exist
24.2.16 Erreur Can't initialize character set xxx
24.2.17 Fichier non trouvé
24.3 Notes relatives à l'installation
24.3.1 Problèmes lors de la liaison avec la bibliothèque du client MySQL
24.3.2 Comment exécuter MySQL comme un utilisateur normal
24.3.3 Problèmes avec les permissions sur fichiers
24.4 Notes relatives à l'administration
24.4.1 Comment réinitialiser un mot de passe Root oublié
24.4.2 Que faire si MySQL plante constamment ?
24.4.3 Comment MySQL gère un disque plein
24.4.4 Où MySQL stocke les fichiers temporaires ?
24.4.5 Comment protéger ou changer le fichier socket /tmp/mysql.sock
24.4.6 Problèmes de fuseaux horaires
24.5 Problèmes relatifs aux requêtes
24.5.1 Sensibilité à la casse dans les recherches
24.5.2 Problèmes avec l'utilisation des colonnes DATE
24.5.3 Problèmes avec les valeurs NULL
24.5.4 Problèmes avec les alias
24.5.5 Erreur Some non-transactional changed tables couldn't be rolled back
24.5.6 Effacer des lignes de tables reliées
24.5.7 Résoudre les problèmes des lignes non retournées
24.5.8 Problèmes de comparaisons avec nombres à virgule flottante
24.6 Problèmes liés à l'optimiseur
24.7 Questions relatives aux définitions de tables
24.7.1 Problèmes avec ALTER TABLE .
24.7.2 Comment changer l'ordre des colonnes dans une table
24.7.3 Problèmes avec les tables temporaires
25 Crédits
25.1 Développeurs chez MySQL AB
25.2 Contributeurs à MySQL
25.3 Documenteurs et traducteurs
25.4 Bibliothèques utilisées et incluses dans MySQL
25.5 Applications qui supportent MySQL
25.6 Outils utilisés pour créer MySQL
25.7 Supporters de MySQL
26 Historique des changements MySQL
26.1 Changements de la version 5.0.0 (Développement)
26.1.1 Changements de la version 5.0.1 (pas encore publiée)
26.1.2 Changements de la version 5.0.0 (22 décembre 2003 : Alpha)
26.2 Changements de la version 4.1.x (Alpha)
26.2.1 Changements de la version 4.1.3 (pas encore publiée)
26.2.2 Changements de la version 4.1.2 (pas encore publiée)
26.2.3 Changements de la version 4.1.1 (01 décembre 2003)
26.2.4 Changements de la version 4.1.0 (03 Avril 2003 : alpha)
26.3 Changements de la version 4.0.x (Production)
26.3.1 Changements de la version 4.0.21 (pas encore publiée)
26.3.2 Changements de la version 4.0.20 (prochainement publiée)
26.3.3 Changements de la version 4.0.19 (04 mai 2004)
26.3.4 Changements de la version 4.0.18 (pas encore publiée)
26.3.5 Changements de la version 4.0.17 (14 décembre 2003)
26.3.6 Changements de la version 4.0.16 (17 octobre 2003)
26.3.7 Changements de la version 4.0.15 (03 septembre 2003)
26.3.8 Changements de la version 4.0.14 (18 juillet 2003)
26.3.9 Changements de la version 4.0.13 (16 Mai 2003)
26.3.10 Changements de la version 4.0.12 (15 Mars 2003 : Production)
26.3.11 Changements de la version 4.0.11 (20 Février 2003)
26.3.12 Changements de la version 4.0.10 (29 janvier 2003)
26.3.13 Changements de la version 4.0.9 (09 janvier 2003)
26.3.14 Changements de la version 4.0.8 (07 janvier 2003)
26.3.15 Changements de la version 4.0.7 (20 Décembre 2002)
26.3.16 Changements de la version 4.0.6 (14 Décembre 2002 : Gamma)
26.3.17 Changements de la version 4.0.5 (13 novembre 2002)
26.3.18 Changements de la version 4.0.4 (29 septembre 2002)
26.3.19 Changements de la version 4.0.3 (26 Août 2002 : Beta)
26.3.20 Changements de la version 4.0.2 (01 Juillet 2002)
26.3.21 Changements de la version 4.0.1 (23 décembre 2001)
26.3.22 Changements de la version 4.0.0 (Octobre 2001 : alpha)
26.4 Changements de la version 3.23.x (Recent; still supported)
26.4.1 Changements de la version 3.23.59 (not released yet)
26.4.2 Changements de la version 3.23.58 (11 septembre 2003)
26.4.3 Changements de la version 3.23.57 (06 juin 2003)
26.4.4 Changements de la version 3.23.56 (13 mars 2003)
26.4.5 Changements de la version 3.23.55 (23 janvier 2003)
26.4.6 Changements de la version 3.23.54 (05 décembre 2002)
26.4.7 Changements de la version 3.23.53 (09 octobre 2002)
26.4.8 Changements de la version 3.23.52 (14 août 2002)
26.4.9 Changements de la version 3.23.51 (31 mai 2002)
26.4.10 Changements de la version 3.23.50 (21 avril 2002)
26.4.11 Changements de la version 3.23.49
26.4.12 Changements de la version 3.23.48 (07 février 2002)
26.4.13 Changements de la version 3.23.47 (27 décembre 2001)
26.4.14 Changements de la version 3.23.46 (29 novembre 2001)
26.4.15 Changements de la version 3.23.45 (22 novembre 2001)
26.4.16 Changements de la version 3.23.44 (31 octobre 2001)
26.4.17 Changements de la version 3.23.43 (04 octobre 2001)
26.4.18 Changements de la version 3.23.42 (08 septembre 2001)
26.4.19 Changements de la version 3.23.41 (11 août 2001)
26.4.20 Changements de la version 3.23.40
26.4.21 Changements de la version 3.23.39 (12 juin 2001)
26.4.22 Changements de la version 3.23.38 (09 mai 2001)
26.4.23 Changements de la version 3.23.37 (17 avril 2001)
26.4.24 Changements de la version 3.23.36 (27 mars 2001)
26.4.25 Changements de la version 3.23.35 (15 mars 2001)
26.4.26 Changements de la version 3.23.34a
26.4.27 Changements de la version 3.23.34 (10 mars 2001)
26.4.28 Changements de la version 3.23.33 (09 février 2001)
26.4.29 Changements de la version 3.23.32 (22 Jan 2001: Production)
26.4.30 Changements de la version 3.23.31 (17 janvier 2001)
26.4.31 Changements de la version 3.23.30 (04 janvier 2001)
26.4.32 Changements de la version 3.23.29 (16 décembre 2000)
26.4.33 Changements de la version 3.23.28 (22 Nov 2000: Gamma)
26.4.34 Changements de la version 3.23.27 (24 octobre 2000)
26.4.35 Changements de la version 3.23.26 (18 octobre 2000)
26.4.36 Changements de la version 3.23.25 (29 septembre 2000)
26.4.37 Changements de la version 3.23.24 (08 septembre 2000)
26.4.38 Changements de la version 3.23.23 (01 septembre 2000)
26.4.39 Changements de la version 3.23.22 (31 juillet 2000)
26.4.40 Changements de la version 3.23.21
26.4.41 Changements de la version 3.23.20
26.4.42 Changements de la version 3.23.19
26.4.43 Changements de la version 3.23.18
26.4.44 Changements de la version 3.23.17
26.4.45 Changements de la version 3.23.16
26.4.46 Changements de la version 3.23.15 (May 2000: Beta)
26.4.47 Changements de la version 3.23.14
26.4.48 Changements de la version 3.23.13
26.4.49 Changements de la version 3.23.12 (07 mars 2000)
26.4.50 Changements de la version 3.23.11
26.4.51 Changements de la version 3.23.10
26.4.52 Changements de la version 3.23.9
26.4.53 Changements de la version 3.23.8 (02 janvier 2000)
26.4.54 Changements de la version 3.23.7 (10 décembre 1999)
26.4.55 Changements de la version 3.23.6
26.4.56 Changements de la version 3.23.5 (20 octobre 1999)
26.4.57 Changements de la version 3.23.4 (28 septembre 1999)
26.4.58 Changements de la version 3.23.3
26.4.59 Changements de la version 3.23.2 (09 août 1999)
26.4.60 Changements de la version 3.23.1
26.4.61 Changements de la version 3.23.0 (05 Aug 1999: Alpha)
26.5 Changements de la version 3.22.x (Old; discontinued)
26.5.1 Changements de la version 3.22.35
26.5.2 Changements de la version 3.22.34
26.5.3 Changements de la version 3.22.33
26.5.4 Changements de la version 3.22.32 (14 février 2000)
26.5.5 Changements de la version 3.22.31
26.5.6 Changements de la version 3.22.30
26.5.7 Changements de la version 3.22.29 (02 janvier 2000)
26.5.8 Changements de la version 3.22.28 (20 octobre 1999)
26.5.9 Changements de la version 3.22.27
26.5.10 Changements de la version 3.22.26 (16 septembre 1999)
26.5.11 Changements de la version 3.22.25
26.5.12 Changements de la version 3.22.24 (05 juillet 1999)
26.5.13 Changements de la version 3.22.23 (08 juin 1999)
26.5.14 Changements de la version 3.22.22 (30 avril 1999)
26.5.15 Changements de la version 3.22.21
26.5.16 Changements de la version 3.22.20 (18 mars 1999)
26.5.17 Changements de la version 3.22.19 (Mar 1999: Production)
26.5.18 Changements de la version 3.22.18
26.5.19 Changements de la version 3.22.17
26.5.20 Changements de la version 3.22.16 (Feb 1999: Gamma)
26.5.21 Changements de la version 3.22.15
26.5.22 Changements de la version 3.22.14
26.5.23 Changements de la version 3.22.13
26.5.24 Changements de la version 3.22.12
26.5.25 Changements de la version 3.22.11
26.5.26 Changements de la version 3.22.10
26.5.27 Changements de la version 3.22.9
26.5.28 Changements de la version 3.22.8
26.5.29 Changements de la version 3.22.7 (Sep 1998: Beta)
26.5.30 Changements de la version 3.22.6
26.5.31 Changements de la version 3.22.5
26.5.32 Changements de la version 3.22.4
26.5.33 Changements de la version 3.22.3
26.5.34 Changements de la version 3.22.2
26.5.35 Changements de la version 3.22.1 (Jun 1998: Alpha)
26.5.36 Changements de la version 3.22.0
26.6 Changements de la version 3.21.x
26.6.1 Changements de la version 3.21.33
26.6.2 Changements de la version 3.21.32
26.6.3 Changements de la version 3.21.31
26.6.4 Changements de la version 3.21.30
26.6.5 Changements de la version 3.21.29
26.6.6 Changements de la version 3.21.28
26.6.7 Changements de la version 3.21.27
26.6.8 Changements de la version 3.21.26
26.6.9 Changements de la version 3.21.25
26.6.10 Changements de la version 3.21.24
26.6.11 Changements de la version 3.21.23
26.6.12 Changements de la version 3.21.22
26.6.13 Changements de la version 3.21.21a
26.6.14 Changements de la version 3.21.21
26.6.15 Changements de la version 3.21.20
26.6.16 Changements de la version 3.21.19
26.6.17 Changements de la version 3.21.18
26.6.18 Changements de la version 3.21.17
26.6.19 Changements de la version 3.21.16
26.6.20 Changements de la version 3.21.15
26.6.21 Changements de la version 3.21.14b
26.6.22 Changements de la version 3.21.14a
26.6.23 Changements de la version 3.21.13
26.6.24 Changements de la version 3.21.12
26.6.25 Changements de la version 3.21.11
26.6.26 Changements de la version 3.21.10
26.6.27 Changements de la version 3.21.9
26.6.28 Changements de la version 3.21.8
26.6.29 Changements de la version 3.21.7
26.6.30 Changements de la version 3.21.6
26.6.31 Changements de la version 3.21.5
26.6.32 Changements de la version 3.21.4
26.6.33 Changements de la version 3.21.3
26.6.34 Changements de la version 3.21.2
26.6.35 Changements de la version 3.21.0
26.7 Changements de la version 3.20.x
26.7.1 Changements de la version 3.20.18
26.7.2 Changements de la version 3.20.17
26.7.3 Changements de la version 3.20.16
26.7.4 Changements de la version 3.20.15
26.7.5 Changements de la version 3.20.14
26.7.6 Changements de la version 3.20.13
26.7.7 Changements de la version 3.20.11
26.7.8 Changements de la version 3.20.10
26.7.9 Changements de la version 3.20.9
26.7.10 Changements de la version 3.20.8
26.7.11 Changements de la version 3.20.7
26.7.12 Changements de la version 3.20.6
26.7.13 Changements de la version 3.20.3
26.7.14 Changements de la version 3.20.0
26.8 Changements de la version 3.19.x
26.8.1 Changements de la version 3.19.5
26.8.2 Changements de la version 3.19.4
26.8.3 Changements de la version 3.19.3
26.9 Evolutions de InnoDB
26.9.1 MySQL/InnoDB-4.0.21, pas publiée
26.9.2 MySQL/InnoDB-4.1.2, pas publiée
26.9.3 MySQL/InnoDB-4.0.20, 18 mai 2004
26.9.4 MySQL/InnoDB-4.0.19, 4 mai 2004
26.9.5 MySQL/InnoDB-4.0.18, 13 février 2004
26.9.6 MySQL/InnoDB-5.0.0, 24 décembre 2003
26.9.7 MySQL/InnoDB-4.0.17, 17 décembre 2003
26.9.8 MySQL/InnoDB-4.1.1, 4 décembre 2003
26.9.9 MySQL/InnoDB-4.0.16, 22 octobre 2003
26.9.10 MySQL/InnoDB-3.23.58, 15 septembre 2003
26.9.11 MySQL/InnoDB-4.0.15, 10 septembre 2003
26.9.12 MySQL/InnoDB-4.0.14, 22 juillet 2003
26.9.13 MySQL/InnoDB-3.23.57, 20 juin 2003
26.9.14 MySQL/InnoDB-4.0.13, 20 mai 2003
26.9.15 MySQL/InnoDB-4.1.0, 3 avril 2003
26.9.16 MySQL/InnoDB-3.23.56, 17 mars 2003
26.9.17 MySQL/InnoDB-4.0.12, 18 mars 2003
26.9.18 MySQL/InnoDB-4.0.11, 25 février 2003
26.9.19 MySQL/InnoDB-4.0.10, 4 février 2003
26.9.20 MySQL/InnoDB-3.23.55, 24 janvier 2003
26.9.21 MySQL/InnoDB-4.0.9, 14 janvier 2003
26.9.22 MySQL/InnoDB-4.0.8, 7 janvier 2003
26.9.23 MySQL/InnoDB-4.0.7, 26 décembre 2002
26.9.24 MySQL/InnoDB-4.0.6, 19 décembre 2002
26.9.25 MySQL/InnoDB-3.23.54, 12 décembre 2003
26.9.26 MySQL/InnoDB-4.0.5, 18 novembre 2002
26.9.27 MySQL/InnoDB-3.23.53, 9 octobre 2002
26.9.28 MySQL/InnoDB-4.0.4, 2 octobre 2002
26.9.29 MySQL/InnoDB-4.0.3, 28 août 2002
26.9.30 MySQL/InnoDB-3.23.52, 16 août 2002
26.9.31 MySQL/InnoDB-4.0.2, 10 juillet 2002
26.9.32 MySQL/InnoDB-3.23.51, 12 juin 2002
26.9.33 MySQL/InnoDB-3.23.50, 23 avril 2002
26.9.34 MySQL/InnoDB-3.23.49, 17 février 2002
26.9.35 MySQL/InnoDB-3.23.48, 9 février 2002
26.9.36 MySQL/InnoDB-3.23.47, 28 décembre 2001
26.9.37 MySQL/InnoDB-4.0.1, 3 décembre 2001
26.9.38 MySQL/InnoDB-3.23.46, 30 novembre 2001
26.9.39 MySQL/InnoDB-3.23.45, 23 novembre 2001
26.9.40 MySQL/InnoDB-3.23.44, 2 novembre 2001
26.9.41 MySQL/InnoDB-3.23.43, 4 octobre 2001
26.9.42 MySQL/InnoDB-3.23.42, 9 septembre 2001
26.9.43 MySQL/InnoDB-3.23.41, 13 août 2001
26.9.44 MySQL/InnoDB-3.23.40, 16 juillet 2001
26.9.45 MySQL/InnoDB-3.23.39, 13 juin 2001
26.9.46 MySQL/InnoDB-3.23.38, 12 mai 2001
27 Port vers d'autres systèmes
27.1 Déboguer un serveur MySQL
27.1.1 Compiler MYSQL pour le débogage
27.1.2 Créer un fichier de traçage
27.1.3 Déboguer mysqld sous gdb
27.1.4 Utilisation d'un traçage de pile mémoire
27.1.5 Utilisation des fichiers de log pour trouver d'où viennent les erreurs de mysqld
27.1.6 Faire une batterie de tests lorsque vous faites face à un problème de table corrompue
27.2 Débogage un client MySQL
27.3 Le paquet DBUG
27.4 Commentaires à propos des threads RTS
27.5 Différences entre les différents paquets de threads
28 Variables d'environnement
29 Expressions régulières MySQL
30 Licence Publique Générale GNU
31 Index des commandes, types et fonctions SQL
32 Index conceptuel
|