- 95% des demandes d'aide de nos clients sont traités en moins de 2 heures !
- Nous sommes toujours en pleine innovation !
- Nous améliorons sans cesse la qualité de nos services !
Cet annexe liste les développeurs, contributeurs, et supporters qui
ont fait de MySQL est ce qu'il est aujourd'hui.
B.1. Développeurs chez MySQL AB
Voici les développeurs qui sont employés par MySQL
AB pour travailler sur la base de données MySQL, grosso
modo dans leur ordre d'embauche. Pour chaque développeur, vous
trouverez une petite liste de leur tâches et de leur
responsabilités, ainsi que leur réalisations. Tous les
développeurs sont impliqués dans le support.
Michael (Monty) Widenius
Chef d'équipe et auteur principal du serveur MySQL
(mysqld).
Nouvelles fonctions dans la bibliothèque de chaînes de
caractères.
La majorité de la bibliothèque mysys.
Les bibliothèques ISAM et
MyISAM (les fichiers d'index
B-tree avec compression d'index et
différentes formats d'enregistrement).
La bibliothèque HEAP. Un système de
gestion des tables en mémoire avec un hashage dynamique
efficace. Utilisé depuis 1980 et publié en 1984.
Le programme replace (jetez y un oeil
c'est carrément COOL!).
MyODBC, le pilote ODBC de Windows95.
La correction de bogues avec les
MIT-pthreads pour qu'ils fonctionnent
avec MySQL. Et aussi l'Unireg, une application à base de
curses avec de nombreuses utilisations.
Le port d'outils mSQL comme
msqlperl,
DBD/DBI et
DB2mysql.
La majorité de crash-me et les
fondations des tests de performances de MySQL.
David Axmark
Auteur original du manuel de
référence, incluent les améliorations de
texi2html.
La mise à jour automatique du site web depuis le manuel.
Le support initial de Autoconf, Automake et Libtool.
Les licences.
Des parties de tous les fichiers textes (de nos jours,
uniquement le README est encore
présent. le reste est dans le manuel).
Nombreux tests des nouvelles fonctionnalités.
Notre expert légal des logiciels libres.
Le responsable des listes de diffusion (qui n'a jamais le
temps de le faire correctement...).
Notre code initial pour le port (bientôt plus de 10 ans).
De nos jours, seules des parties de
mysys restent.
La personne que Monty appelle au milieu de la nuit
lorsqu'il a réussi a faire fonctionner la nouvelle
fonctionnalité!
Le chef "Open Source" (Relations avec la communauté
MySQL).
Jani Tolonen
mysqlimport
Un grand nombre d'extension pour le client en ligne de
commande.
PROCEDURE ANALYSE()
Sinisa Milivojevic
Compression du protocole client/serveur avec
zlib.
Hashing parfait pour la phase d'analyse lexicale.
Insertions multi-lignes
Option mysqldump -e
LOAD DATA LOCAL INFILE
Option SQL_CALC_FOUND_ROWSSELECT
Option --max-user-connections=...
net_read et
net_write_timeout
GRANT/REVOKE et
SHOW GRANTS FOR
Nouveau protocole client/serveur pour la version 4.0
UNION en version 4.0
Traitements multi-table de
DELETE/UPDATE
Tables dérivées en version 4.1
Gestion des ressources utilisateurs.
Développeur initial de l'API MySQL++
C++ API et du client MySQLGUI.
Tonu Samuel (ancien développeur)
Interface VIO (la base pour le protocole client/serveur
chiffré ).
Système de fichier MySQL (une méthode pour utiliser la
base MySQL comme un système de fichiers).
L'expression CASE.
Les fonctions MD5() et
COALESCE().
Le support RAID des tables
MyISAM.
Sasha Pachev
Implémentation initiale de la réplication (jusqu'en
version 4.0).
SHOW CREATE TABLE.
mysql-bench
Matt Wagner
Suite de tests MySQL.
Webmestre (jusqu'en 2002).
Coordinateur du développement.
Miguel Solorzano
Développement Win32 et publications.
Code du serveur sur Windows NT.
WinMySQLAdmin
Timothy Smith (ancien développeur)
Support des jeux de caractères dynamiques.
le script configure, les RPM et
d'autres parties du système de compilation.
Développeur initial de libmysqld, le
serveur intégré.
Sergei Golubchik
Recherche en texte plein.
bibliothèque de clés pour MERGE.
Jeremy Cole
Relecture et édition de ce manuel.
ALTER TABLE ... ORDER BY ....
UPDATE ... ORDER BY ....
DELETE ... ORDER BY ....
Indrek Siitan
Design et programmation de notre interface web.
Auteur de notre lettre d'actualité.
Jorge del Conde
MySQLCC (MySQL Control
Center)
Développement Win32
Implémentation initiale des portails du site web.
Venu Anuganti
MyODBC 3.51
Nouveau protocole client/serveur pour la version 4.1 (pour
les requêtes préparées).
Arjen Lentz
Responsable du manuel de référence MySQL.
Préparation de la version imprimée chez O'Reilly.
Alexander (Bar) Barkov, Alexey (Holyfoot) Botchkov et Ramil
Kalimullin
Données spatiales (GIS) et R-Trees en version 4.1
Unicode et jeux de caractères pour la version 4.1
Oleksandr (Sanja) Byelkin
Cache de requêtes en version 4.0
Implémentation des sous-requêtes en version 4.1.
Aleksey (Walrus) Kishkin et Alexey (Ranger) Stroganov
Design des tests de performance et analyse.
Maintenance de la suite de test MySQL.
Zak Greant
Porte parole Open Source, relation avec la communauté.
Carsten Pedersen
Le programme de certification MySQL.
Lenz Grimmer
Ingénierie de mise en production (compilation et
publication).
Peter Zaitsev
Fonction SHA1(),
AES_ENCRYPT() et
AES_DECRYPT().
Débogage et nettoyage de diverses fonctionnalités.
Alexander (Salle) Keremidarski
Support.
Débogage.
Per-Erik Martin
Chef de projet pour les procédures stockées et les
triggers.
Jim Winstead
Chef développeur web.
Mark Matthews
Connecteur/Pilote J (Java).
Peter Gulutzan
Compatibilité avec les standards SQL-99, SQL-2003.
Documentation des codes/algorithmes MySQL existant.
Guilhem Bichot
Réplication, depuis MySQL version 4.0.
Correction de la gestion des exposants pour les
DECIMAL.
Auteur de mysql_tableinfo.
Antony T. Curtis
Port de MySQL sur OS/2.
B.2. Contributeurs à MySQL
Bien que MySQL AB possède tous les droits du
serveur MySQL et du manuel
MySQL, nous voulons montrer notre reconnaissance à ceux
qui ont apportés leur contribution d'une manière ou d'une autre
à la distribution MySQL. Les contributeurs
sont listés ici, dans un ordre aléatoire :
Portage sur Win32 avec le compilateur Borland.
mysqlshutdown.exe et
mysqlwatch.exe
David J. Hughes
Pour ses efforts de constitution d'une base de données SQL
partagée. Chez TcX, le prédécesseur de MySQL AB, nous avons
commencé avec mSQL, mais nous nous sommes
aper¸us que cela ne satisfaisait pas nos besoins, et nous
avons écrit une interface SQL avec notre application Unireg.
Les clients mysqladmin et
mysql ont été largement influencés par
leur équivalent mSQL. Nous avons mis une
grande partie de nos efforts à faire que la syntaxe de MySQL
soit un sur ensemble de celle de mSQL. De
nombreuses idées d'API ont été empruntées à
mSQL pour rendre plus facile le portage des
programmes depuis mSQL vers MySQL. Le
logiciel MySQL ne contient aucun code extrait de
mSQL. Les deux fichiers
(client/insert_test.c et
client/select_test.c) qui font partie de
la distribution sont basés sur les fichiers correspondants,
et sans droits de la distribution mSQL,
mais sont modifiés, pour servir d'exemple aux modifications
nécessaires à la conversion de code de
mSQL vers MySQL. (mSQL
est la propriété de David J. Hughes).
Pour avoir configuré qmail pour qu'il gère les listes de
diffusions MySQLm et pour l'aide incroyable que nous avons
re¸u pour gérer les listes de diffusions de MySQL.
Portage et amélioration de la suite de tests avec
DBI/DBD. A été d'une
grande aide avec le test crash-me et
l'exécution des tests. Certaines améliorations de la
fonction de date. Le script
mysql_setpermissions.
La liste des personnes suivantes nous a aidé à écrire la
documentation MySQL et à la traduire. Certains ont aussi
travaillés sur les messages d'erreurs MySQL.
Paul DuBois
Contribution continuelle pour rendre ce manuel présentable et
compréhensible. Cela inclut la réécriture des courageux
essais de Monty et David, dans un anglais que tout le monde
comprend.
Kim Aldale
Aide à la réécriture des premières versions de Monty et
David.
Pour le premier manuel MySQL. Et beaucoup de corrections
orthographiques et typographiques dans la FAQ, qui a été
finalement transformée en une documentation complète.
Messages d'erreurs en hollandais, et fin de la traduction
partielle.
B.4. Bibliothèques utilisées et incluses dans MySQL
Voici une liste des auteurs de bibliothèques que nous avons
inclus dans le source du serveur MySQL, pour le rendre plus facile
à compiler et à installer. Nous sommes reconnaissants envers
ceux qui les ont créé : ils nous ont facilité la vie.
Fred Fish
Pour son excellente bibliothèque de débogage et de trace.
Monty a ajouté de nombreuses petites améliorations à la
bibliothèque (en terme de vitesse et fonctionnalités).
Richard A. O'Keefe
Pour la bibliothèque de gestion des chaînes de caractères,
disponible dans le domaine public.
Henry Spencer
Pour sa bibliothèque d'expressions régulières, utilisée
dans WHERE column REGEXP regexp.
Chris Provenzano
Pthreads utilisateurs. Dans le copyright : This
product includes software developed by Chris Provenzano, the
University of California, Berkeley, and
contributors. Nous utilisons la version 1_60_beta6,
modifiée par Monty (voir
mit-pthreads/Changes-mysql).
Jean-loup Gailly et Mark Adler
Pour la bibliothèque zlib (utilisée avec MySQL sous
Windows).
Bjorn Benson
Pour son paquet safe_malloc (contrôle de mémoire), qui est
utilisé lorsque vous configurez MySQL avec
--debug.
Free Software Foundation
La bibliothèque readline (utilisée par le
client mysql).
La fondation NetBSD
Le paquet libedit (utilisé optionnellement
par le client mysql).
B.5. Applications qui supportent MySQL
Voici une liste de responsables et auteurs d'interfaces,
applications et paquets, que de nombreuses personnes utilisent
avec MySQL.
Nous ne pouvons pas lister tous les paquets possibles car la liste
serait trop difficile à entretenir. Pour les autres paquets,
voyez le portail d'applications à
http://www.mysql.com/portal/software.
L'auteur de LinuxThreads (utilisé par
MySQL Server sur Linux).
B.6. Outils utilisés pour créer MySQL
Voici une liste des outils que nous avons utilisés pour créer
MySQL. Nous utilisons cette page pour remercier les auteurs qui
les ont créé, et sans lesquels nous n'aurions pas pu faire de
MySQL ce qu'il est aujourd'hui.
Free Software Foundation
De qui nous avons re¸u un excllent compilateur
(gcc), un excellent débogueur
(gdb et la bibliothèque
libc (à laquelle nous avons emprunté le
fichier strto.c pour faire fonctionner du
code sur Linux).
Free Software Foundation & l'équipe de développement
XEmacs
Pour un éditeur texte et un environnement de programmation
fantastique, utilisé par presque tout le monde chez MySQL AB.
Julian Seward
L'auteur de valgrind, un excellent outil de
vérification de mémoire, qui nous a aidé à trouver des
bugs très difficiles à traquer.
Dorothea Lütkehaus et Andreas Zeller
Pour DDD (Le Data Display Debugger) qui est
une excellente interface graphique pour
gdb).
B.7. Supporters de MySQL
Tandis que MySQL AB possède tous les droits du
serveur MySQL et du manuel
MySQL, nous voulons montrer notre reconnaissances aux
compagnies suivantes, qui nous ont aidé à financer le
développement du serveur MySQL, soit en nous
payant pour développer de nouvelles fonctionnalités, soit en
nous fournissant en matériel pour le développement du
serveur MySQL.
VA Linux / Andover.net
Financement de la réplication.
NuSphere
Edition du manuel MySQL.
Stork Design studio
Le site web MySQL utilisé entre 1998 et 2000.
Intel
Contribution au développement sur les plates-formes Windows
et Linux.
Compaq
Contribution au développement sur Linux/Alpha.
SWSoft
Développement de la version embarquée
mysqld.
FutureQuest
--skip-show-database
B.8. Les évolutions de MySQL (la liste des tâches)
Cette section liste les fonctionnalités que nous prévoyons
d'ajouter à MySQL. Les listes sont réparties par version, et les
actions sont réparties approximativement par ordre de priorité.
Note : si vous êtes un
utilisateur professionnel, avec un besoin urgent pour une
fonctionnalité, contactez <sales@mysql.com> pour
discuter de possibilités de sponsor. En allouant des finances à
certaines fonctionnalités, nous pouvons nous concentrer sur
certains objectifs à court terme. Un des exemples de
fonctionnalité sponsorisé est la réplication.
B.8.1. Nouvelles fonctionnalités prévues pour la version 5.0
Les fonctionnalités suivantes sont prévues pour la version
5.0. Notez que comme nous avons de nombreux développeurs qui
travaillent sur différents projets, il peut aussi y avoir des
ajouts de fonctionnalités. Il y a aussi des chances que ces
fonctionnalités soient ajoutées en MySQL 4.1. Pour une liste
des fonctionnalités déjà disponibles en MySQL 4.1, voyez
Section 1.3.2.1, « Fonctionnalités disponibles en MySQL 4.1 ».
Pour ceux qui souhaitent étudier en détail les tous derniers
développements de MySQL, vous pouvez accéder au serveur
BitKeeper public de MySQL 5.0. See
Section 2.4.3, « Installer à partir de l'arbre source de développement ». Depuis décembre 2003,
des versions binaires pour les versions 5.0 sont aussi
disponibles.
Nous allons aussi ajouter un environnement pour
permettre l'utilisation de langages externes et assurer
(lorsque c'est possible) une compatibility avec PL/SQL
et T-SQL.
La capacité de spécifier explicitement pour les tables
MyISAM qu'un index est de type
RTREE. En version 4.1, les index
RTREE sont généralement utilisé
pour les données géométriques (types GIS), mais ne
peuvent pas être créés à la demande.
Les tables HEAP à taille de ligne
dynamique.
Compatibilité avec les standards, portabilité et
migration.
Ajout d'un véritable type VARCHAR
(ce support est déjà disponible avec le format de
table MyISAM).
Amélioration de la vitesse
SHOW COLUMNS FROM table_name
(utilisé par le client mysql pour
permettre la recherche de nom de colonnes) ne devrait
pas ouvrir la table, mais seulement le fichier de
définition. Cela prendra moins de mémoire, et sera
bien plus rapide.
Permettre à la commande DELETE sur
les tables MyISAM l'utilisation des
caches de lignes. Pour cela, nous devons modifier le
thread de cache de ligne lorsque nous modifions le
fichier .MYD.
Amélioration des tables en mémoire
HEAP :
Lignes de taille dynamique.
Gestion plus rapide des lignes (moins de copies).
Amélioration de l'ergonomie
Résolution du problème avec RENAME
TABLE, utilisé sur une table active dans un
MERGE, qui conduit à la corruption
de la table.
Sauvegarde à chaud, avec peu d'impact sur les
performances. La sauvegarde à chaud permettra de
simplifier l'ajout d'esclaves de réplication sans avoir
à éteindre le maître.
Amélioration de la vitesse
Nouveau format de définition des tables en format texte
(fichiers .frm) et un cache de
table pour les définitions de tables. Cela permettra
d'accélérer les requêtes de structure de tables, et
de consolider le support des clés étrangères.
Optimisation du type BIT pour qu'il
prenne 1 bit (actuellement, BIT prend
1 caractère).
Amélioration de l'ergonomie
Ajout Ajout d'option au protocole client/serveur pour
obtenir des indications de progression pour les
requêtes longues.
Implémentation de RENAME DATABASE.
Pour que cela soit sécuritaire pour tous les pilotes de
stockage, cela doit fonctionner comme ceci :
Crée une nouvelle base de données.
Pour chaque table, faire un renommage d'une base à
l'autre, comme nous le faisons avec
RENAME.
Effacer l'ancienne base.
Nouvelle interface interne pour les fichiers. Cela
rendra la gestion des fichiers bien plus générale, et
simplifiera l'ajout d'extensions comme
RAID (l'implémentation actuelle est
un bidouillage).
B.8.3. Ce qui doit être fait dans un futur proche
Nouvelle fonctionnalité
Commande CONNECT BY PRIOR ...,
inspirée d'Oracle, pour traiter les structures de type
arbre (hiérarchisée).
Tous les types manquants de ANSI92 et ODBC 3.0.
Ajout de SUM(DISTINCT).
INSERT SQL_CONCURRENT et
mysqld --concurrent-insert pour faire
des insertions concurrents à la fin du fichier, même
si il est verrouillé en lecture.
Permettre la modification de variables dans une commande
UPDATE. Par exemple :
UPDATE TABLE foo SET @a=a+b,a=@a,
b=@a+c.
Changer le moment de modifications des variables, pour
que l'on puisse les utiliser avec les commandes de
groupement GROUP BY, comme ceci :
SELECT id, @a:=COUNT(*), SUM(sum_col)/@a FROM
table_name GROUP BY id.
Ajout de l'option IMAGE à la
commande LOAD DATA INFILE pour ne pas
modifier les champs TIMESTAMP et
AUTO_INCREMENT.
Ajout de la syntaxe LOAD DATE INFILE ...
UPDATE, qui fonctionne comme ceci :
Pour les tables ayant des clés primaires, si les
données contiennent une clé primaire, les données
qui existent et correspondent à cette clé, sont
modifiées. Cependant, les colonnes
omises sont ignorées.
Pour les tables ayant une clé primaire dont il
manque une partie dans les données entrantes, ou
qui n'ont pas de clé primaire, le flux est traité
comme LOAD DATA INFILE ... REPLACE
INTO.
Rendre la syntaxe LOAD DATA INFILE
utilisable comme ceci :
LOAD DATA INFILE 'file_name.txt' INTO TABLE tbl_name
TEXT_FIELDS (text_field1, text_field2, text_field3)
SET table_field1=CONCAT(text_field1, text_field2),
table_field3=23
IGNORE text_field3
Cela peut être utilisé pour ignorer des colonnes
supplémentaires dans le fichier texte, ou pour modifier
des colonnes en fonction de données dans les valeurs
entrantes.
De nouvelles fonctions pour travailler avec le type de
colonne SET :
ADD_TO_SET(value,set)
REMOVE_FROM_SET(value,set)
Si vous interrompez mysql au beau
milieu d'une requête, vous pouvez ouvrir une autre
connexion pour tuer la requête en cours. Ou bien, une
tentative doit être faite pour détecter cela sur le
serveur.
Ajout d'une interface au moteur de sauvegarde pour que
vous puissiez l'utiliser comme table système. Cela sera
un peu lent si vous demandez toutes les informations de
toutes les tables, mais très souple. SHOW INFO
FROM tbl_name doit être implémenté pour
connaître les informations de bases des tables.
Permettre SELECT a FROM crash_me LEFT JOIN
crash_me2 USING (a); dans ce cas,
a est supposé provenir de la table
crash_me.
Les options DELETE et
REPLACE dans les commandes
UPDATE (cela va effacer les lignes
lors d'un doublon dans la requête).
Modification du format de DATETIME
pour stocker les fractions de secondes.
Rendre possible l'utilisation de la bibliothèque GNU
regexp au lieu de la bibliothèque
actuelle (la bibliothèque GNU devrait être plus rapide
que l'ancienne).
Compatibilité avec les standards, migration et
portabilité.
Ne pas utiliser de valeur par défaut
(DEFAULT) pour les colonnes. Indiquer
une erreur lors des commandes INSERT,
si elle contient une colonne qui n'a pas de valeur par
défaut.
Ajout des fonctions de groupement
ANY(), EVERY() et
SOME(). En ANSI SQL, elles ne
fonctionnent que sur les colonnes de type booléens,
mais nous pouvons étendre leur champ d'action aux
colonnes et expression, en appliquant la règle
suivante : value == 0 -> FALSE et value <> 0
-> TRUE.
Correction du type pour que
MAX(column) ait le même type de
colonne :
mysql> CREATE TABLE t1 (a DATE);
mysql> INSERT INTO t1 VALUES (NOW());
mysql> CREATE TABLE t2 SELECT MAX(a) FROM t1;
mysql> SHOW COLUMNS FROM t2;
Amélioration des performances
Ne permettre qu'à un nombre défini de threads
d'exécuter des réparations MyISAM
simultanément.
Changer INSERT ... SELECT pour
utiliser optionnellement des insertions simultanées.
Ajouter une option pour écrire sur le disque les pages
de clés pour les tables à clés retardées, qui n'ont
pas été sauvées dernièrement.
Permettre les jointures sur des parties de clés
(problème d'optimisation).
Un analyseur de logs, qui permettrait d'extraire des
informations sur les tables les plus souvent utilisées,
les jointures, etc... Cela permettra aux utilisateurs
d'identifier les tables qui peuvent être optimisées.
Internationalisation
Ergonomie
Retourner le type de champs original lors des requêtes
SELECT MIN(column) ... GROUP BY.
Rendre possible la spécification de
long_query_time avec une granularité
de l'ordre de la microseconde.
Intégrer le code de myisampack dans
le serveur, activer les commandes
PACK or COMPRESS
depuis le serveur.
Ajouter un cache de buffer de clé temporaire durant les
commandes INSERT/DELETE/UPDATE pour
que nous puissions nous rétablir si jamais le fichier
d'index est plein.
Si vous effectuez la commande ALTER
TABLE sur une table qui est un lien symbolique
sur un autre disque, les tables temporaires seront aussi
faites sur ce disque.
Implémenter un type DATE/DATETIME
qui gère les fuseaux horaire correctement, pour
résoudre le problème du décalage horaire.
Corriger la configuration pour que l'on puisse compiler
toute les bibliothèques (comme
MyISAM) sans les threads.
Permettre toutes les variables SQL dans la clause
LIMIT, comme LIMIT
@a,@b.
Affichage automatique de mysql vers
un navigateur web.
LOCK DATABASES (avec différentes
options).
De nombreuses nouvelles variables dans SHOW
STATUS. Les lignes lues et modifiées. Les
sélections sur tables uniques et les jointures. Le
nombre moyen de tables dans une sélection. Le nombre de
requêtes ORDER BY et GROUP
BY.
mysqladmin copy database
new-database; a besoin de la commande
COPY dans mysqld.
La liste des processus doit afficher le nombre de
requêtes et de threads.
SHOW HOSTS affichera les informations
concernant le cache de noms d'hôtes.
Changer le nom des tables de chaîne vide à
NULL pour les colonnes calculées.
Ne pas utiliser la fonction
Item_copy_string sur les valeurs
numériques, pour éviter les conversions nombre ->
chaîne -> nombre en cas de : SELECT
COUNT(*)*(id+0) FROM table_name GROUP BY id
Changer ALTER TABLE pour qu'il
n'interrompe pas le client qui exécute des
INSERT DELAYED.
Lorsque les colonnes sont spécifiées dans
UPDATE, elles contiennent les
anciennes valeurs d'avant la modification.
Nouveaux systèmes d'exploitation.
Port des clients MySQL vers LynxOS.
B.8.4. Ce qui est prévu à moyen terme
Implémenter la fonction :
get_changed_tables(timeout,table1,table2,...).
Remplacer la lecture dans les tables par une zone mémoire
aussi souvent que possible. Actuellement, seules les tables
compressées utilisent des memmap.
Rendre le code des timestamp automatiques bien plus
pratique. Ajouter les timestamps dans le log avec
SET TIMESTAMP=#;.
Utiliser un mutex de lecture/écriture pour gagner de la
vitesse.
Fermer automatiquement des tables si une table, une table
temporaire ou un fichier temporaire re¸oit une erreur 23
(plus assez de fichiers ouverts).
Meilleure propagation des constantes. Lorsqu'une occurrence
de col_name=n est trouvée dans une
expression, pour une n, remplacer les
autres occurrences de col_name de
l'expression avec n. Actuellement, cela
n'arrive que pour les cas les plus simples.
Changer toutes les expressions constantes par des
expressions calculées, si possible.
Optimiser les comparaisons key =
expression. Actuellement, seules les
relations key = column
or key = constant sont
optimisées.
Fusionner les fonctions de copie pour améliorer le code.
Changez sql_yacc.yy pour le remplacer
par un analyseur de ligne de commande plus petit, et qui
gère mieux les messages.
Changer l'analyseur pour utiliser uniquement une règle pour
tous les nombres d'arguments possibles dans une fonction.
Utiliser les calculs de noms complets dans la clause ORDER
(pour ACCESS97).
MINUS, INTERSECT et
FULL OUTER JOIN. (actuellement,
UNION [en 4.0] et LEFT OUTER
JOIN fonctionnent).
SQL_OPTION MAX_SELECT_TIME=# pour donner
une limite de temps à une requête.
Diriger le log de modification vers une base.
Améliorer LIMIT pour permettre la
lecture de données à la fin du résultat.
Alertes lors des connexions/écritures/lectures du client.
Notez ces modifications de safe_mysqld :
selon la FSSTND (que Debian essaie de suivre) les fichiers
PID devraient être placés dans
/var/run/<progname>.pid et les
fichiers de logs dans /var/log. Il
serait bien si vous pouviez mettre le "DATADIR" dans la
première déclaration de "pidfile" et "log", de fa¸on à
ce que l'emplacement de ces fichiers puisse être modifié
en une seule ligne.
Permettre au client de commander le log des actions.
Ajouter l'utilisation de zlib() pour les
fichiers gzip, avec la commande
LOAD DATA INFILE.
Corriger le tri et le groupage avec les colonnes
BLOB (en partie résolu).
Utiliser des sémaphores pour compter les threads. Il faut
commencer par implémenter des sémaphores pour
MIT-pthreads.
Ajouter le support complet pour les JOIN
avec parenthèses.
Comme alternative à la relation un thread, une connexion,
gérer un groupe de threads pour répondre aux requêtes.
Permettre la pose de plusieurs verrous avec
GET_LOCK. Lors de ces verrous multiples,
gérer le cas des blocages par verrous qui pourrait être
introduit.
Le temps est indiqué en temps de travail et non pas en temps
normal.
B.8.5. Ce qui n'est pas prévu
Rien. Nous nous dirigeons vers la compatibilité complète avec
ANSI 92/ANSI 99.
This is a translation of the MySQL Reference Manual that can be
found at
dev.mysql.com.
The original Reference Manual is in English, and this translation
is not necessarily as up to date as the English version.