mercredi 5 décembre 2007
Par Denis Szalkowski,
mercredi 5 décembre 2007 à 11:08 :: Sgbd
Je vous invite vivement à vérifier sur vos serveurs hébergeant des bases MySQL le contenu de la table user :
SELECT host,user FROM mysql.user;
Si vous voyez qu'il n'y a pas d'utilisateur associé à localhost et à localhost.localdomain (connexion anonyme ), je vous invite à effacer les deux lignes :
DELETE FROM mysql.user WHERE user='';
FLUSH PRIVILEGES;
Pensez à mettre un mot de passe à l'utilisateur root :
SET PASSWORD FOR root@'localhost'=PASSWORD('votre_mdp');
SET PASSWORD FOR root@'%'=PASSWORD('votre_mdp');
L'installation de MySQL au travers de paquets sous Linux ne permet pas - dans la plupart des cas - de spécifier le mot de passe du compte root !!! Sous Windows, lors de la configuration de l'instance après la copie des paquets, ne cochez pas la création de compte anonyme.
aucun commentaire
:: aucun trackback
lundi 15 octobre 2007
Par Denis Szalkowski,
lundi 15 octobre 2007 à 22:23 :: Sgbd
Eh oui, je ne sais pas si c'est d'avoir un Tchèque à la maison qui m'a mis dans cet état là. Toujours est-il qu'après l'avoir vérifié, je suis en mesure d'affirmer que MySQL 5.0.48 ne prend pas en charge les contraintes de vérification du genre :
ALTER TABLE client
ADD CONSTRAINT ck_cp_client CHECK(cp_client BETWEEN 1000 AND 95999);
En mode InnoDb, MySQL l'accepte d'un point de vue syntaxique sans pour autant en tenir compte au moment de la saisie des données. Etonnant, non ?
aucun commentaire
:: aucun trackback
samedi 13 octobre 2007
Par Denis Szalkowski,
samedi 13 octobre 2007 à 18:44 :: Sgbd
La base de données tant adulée par bon nombre de ceux qui ne connaissent pas PostgreSql fait un pas de plus vers le payant. A partir du 1er août 2006, les propriétaires de MySql 3.23 devaient s'affranchir de 495 euros pour pouvoir disposer des correctifs fournis par le service d'abonnement payant MySql Network. Les "heureux" propriétaires de la version 4.1 auront attendus le 1er octobre pour basculer dans le modèle payant afin de bénéficier des correctifs.
Désormais, seuls les clients payants ne pourront disposer que des binaires de la version Enterprise.
Rappelons qu'il a fallu attendre la version 5 du produit pour pouvoir disposer des fonctions d'un véritable moteur de base de données. Rappelons aussi que beaucoup de zones d'ombre planent autour du devenir de MySql : rachat d'InnoDb par Oracle, nouveau moteur relationnel en attente, rumeur de rachat par Oracle. Trois alternatives, de mon point de vue beaucoup plus sérieuses et pérennes, demeurent :
- PostgreSql, la référence sous licence BSD, fork de Ingres
- FireBird, un fork d'Interbase sous Gpl
- Ingres, le précurseur avant Oracle des Sgbdr sous Gpl
MySql dispose d'un atout technique extraordinaire, de mon point de vue inégalé : la recherche sur des tables en mode Isam couplé à la recherche de type Full Index Text.
Source : LMI
2 commentaires
:: aucun trackback
Par Denis Szalkowski,
samedi 13 octobre 2007 à 08:36 :: Sgbd
Un outil existe pour tester les attaques par injections Sql. SQL Power Injector, un freeware fonctionnant écrit en .Net, fonctionne sur les bases MySql, Oracle et Sql Server.
Jérémy m'a fait part d'un autre outil : Webgoat. A tester.
Le site Security Hack en recense 15.
3 commentaires
:: aucun trackback
samedi 19 mai 2007
Par Denis Szalkowski,
samedi 19 mai 2007 à 15:12 :: Sgbd
Chers amis, je suis inquiet... inquiet pour la santé financière de Microsoft, Oracle, Ibm et Sybase. Les chiffres du Gartner, ces oracles de la modernité, toujours friants à explorer les fiantes de dinde, montrent l'ampleur du désastre.
- 49% des entreprises utiliseraient MySQL; 17% s'apprêtent à le faire
- en 2008, 70% des DI auront franchi le rubicon de l'Open Source (qui n'a rien à voir avec la rivière italienne)
- 56% des entreprises envisagent de migrer vers Linux pour leurs moteurs de bases de données
- pire, 40% des entreprises pensent à remplacer leurs bases propriétaires par des bases Open Source
Pendant, sur le segment du marché commercial qui progresse de 14.3% en 2006, Oracle domine avec 44.4% des parts, soit 7,3 Md$ d'un marché mondial estimé à 16,5 Md$. IBM passe de 21.6 à 21.1%. C'est Microsoft qui explose les compteurs avec +25% enregistrant des revenus de 3,1 Md$, soit 18,6% du marché total.
Source : OpenForce, Lmi
aucun commentaire
:: aucun trackback
Par Denis Szalkowski,
samedi 19 mai 2007 à 08:26 :: Sgbd
L'offre Open Source en matière d'informatique décisionnelle (reporting, serveurs d'analyse Olap, data mining) s'étoffe de jour en jour. L'essentiel de l'offre repose sur des produits développés Java, à l'exception de Palo qui propose un embryon sous .Net. Php est aux abonnés absents.
Générateur de graphiques
Générateur d’états
Analyse / OLAP
- Mondrian, serveur Olap intégré au projet Pentaho
- JPivot, client Olap avec interface Web
- Palo, serveur Olap développé en .Net
- JPalo serveur Olap développé en Java
- Cubulus
Data mining
Plateforme
- Pentaho avec version commerciale
- SpagoBI
- Jasper Intelligence
- Marvel IT
Pour plus d'infos sur ce sujet : l'excellent livre blanc de la société Smile
aucun commentaire
:: un trackback
vendredi 4 mai 2007
Par Denis Szalkowski,
vendredi 4 mai 2007 à 13:48 :: Sgbd
La base de données Oracle, malgré l'avènement du logiciel libre, reste incontournable. Un excellent article sur la volumétrie est disponible sur Développez.com. Les logiciels libres et gratuits -deux choses différentes- fournissent des outils d'administrations et des requêteurs de grande qualité.
- Toad Free Edition, ssous Windows, permet de créer les tables, index, vues et dispose d'un éditeur Sql. Le produit est limité à 5 utilisateurs
- Tora est un clone de Toad qui s'exécute sous Linux et Windows. Avantage Tora.
- Oracle SQL Developer, ex Raptor, sous Linux et Windows, exige la JRE et reste extrêmement perfectible !
- DBA Companion sous Linux et Windows
- SQL Tools sous Windows
6 commentaires
:: aucun trackback
mardi 24 avril 2007
Par Denis Szalkowski,
mardi 24 avril 2007 à 20:05 :: Sgbd
Y a pas que Sarkozy qui me laisse sans voix. Il y a aussi Microsoft Sql Server 2005 et sa gestion des verrous si particulière.
Sous Oracle, lorsque vous exécutez un ordre INSERTen mode transactionnel, vous posez un verrou sur ligne ce qui n'empêche nullement à quiconque d'exécuter un ordre SELECT sur table.
Sous Sql Server 2005, l'ordre INSERT ne vous permet d'utiliser un ordre SELECT que si vous employiez une clause WHERE ou bien si vous utilisez la clause WITH (NOLOCK) ou la clause WITH(READ UNCOMMITTED), le mode DIRTY qui vous permet d'accéder à l'environnement transactionnel des autres utilisateurs.
- De la doc, hélas assez ancienne, sur ce sujet difficile d'accès d'Alexander Chigrik !
- un très bon article sur ce sujet chez Christian Robert, grand spécialiste du produit
NB Je ne souviens pas de ce problème sous SQL Server 2000 !
6 commentaires
:: aucun trackback
mercredi 11 avril 2007
Par Denis Szalkowski,
mercredi 11 avril 2007 à 06:19 :: Sgbd
Arrêtez votre service MySql
- sous Linux : /etc/init.d/mysql stop
- sous Windows Xp ou W2k3 : sc stop mysql
Lancez MySql en mode sans échec sans tenir compte des tables systèmes de gestion des droits :
- sous Linux : mysqld_safe --skip-grant-tables &
- sous Windows : C:\Program Files\MySQL\MySQL Server 5.0\bin\mysqld --safe-mode --skip-grant-tables &
Connectez-vous à MySql en mode root : mysql -u root
A partir de MySql :
- use mysql;
- update user set password=PASSWORD(”newrootpassword”) where user=’root’;
- flush privileges;
- quit
Tuez le processus :
- sous Windows : Ctrl+Maj+Echap
- sous Linux : rm -f /var/run/mysqld
Source : Debian Admin
2 commentaires
:: aucun trackback
jeudi 5 avril 2007
Par Denis Szalkowski,
jeudi 5 avril 2007 à 07:19 :: Sgbd
A la condition de vous assurer que les services OracleDBConsoleorcl et OracleOraDb10g_home1iSQL*Plus soient démarrés, vous disposez d'interfaces Web pour, respectivement, administrer et effectuer vos requêtes sous Oracle 10g. Les logiciels sont développés sous J2E.
La première est accessible sur le port 1158 : http://localhost:1158/em/.
La deuxième est, quant à elle, disponible à partir du port 5560 : http://localhost:5560/isqlplus/.
2 commentaires
:: aucun trackback
mardi 3 avril 2007
Par Denis Szalkowski,
mardi 3 avril 2007 à 17:58 :: Sgbd
La version 10.2.0.2 d'Oracle Database n'est pas disponible en version Windows 32 bits. Cette remarque vaut également pour les plates-formes Linux 32 bits. Pour les versions 32 bits, vous pouvez toutefois disposer de la version 10.2.0.1.0. Etrange ?
Source : Oracle
2 commentaires
:: aucun trackback
Par Denis Szalkowski,
mardi 3 avril 2007 à 16:56 :: Sgbd
Oracle met à votre disposition toute la documentation sur l'ensemble de ses produits.
Pour la 10g :
Vincent vous propose la doc Tahiti d'Oracle.
3 commentaires
:: aucun trackback
lundi 2 avril 2007
Par Denis Szalkowski,
lundi 2 avril 2007 à 19:41 :: Sgbd
Un petit utilitaire qui vaut son pesant d'or : mysqlidxchk. Il détecte à partir des logs les index qui ne sont pas utilisés.
aucun commentaire
:: aucun trackback
Par Denis Szalkowski,
lundi 2 avril 2007 à 06:40 :: Sgbd
Ceux d'entre vous qui utilisent Linux connaissent très certainement l'utilitaire de performances Top. MyTop est un outil de performances qui s'exécute en ligne de commandes à la présentation identique à Top et dédié à MySql. Il n'est disponible que sous Linux. Il peut être utilisé sous Windows avec Cygwin.
2 commentaires
:: aucun trackback
vendredi 2 mars 2007
Par Denis Szalkowski,
vendredi 2 mars 2007 à 18:59 :: Sgbd
Par défaut, les champs de type VARCHAR dans MySql, si vous choisissez l'encodage Latin1, obéissent à des règles de constitution d'index qui ne tiennent pas compte des caractères accentués. Ce qui fait, par exemple, que les deux mots hérésie et heresie seront considérés comme deux valeurs identiques. Une hérésie ! ;+)
Par défaut, la propriété Column collate du champ est de type latin1_swedish_ci...ci pour case insensitive (cs pour case sensitive). Pour que vos index tiennent comptent des caractères accentués, passez cette propriété à latin1_general_ci.
Script MySql pour changer la table
ALTER TABLE `schema`.`table`
ENGINE = InnoDB
CHARACTER SET latin1 COLLATE latin1_general_ci;
Script MySql pour changer un champ
ALTER TABLE `schema`.`table` MODIFY COLUMN `champ` VARCHAR(255)
CHARACTER SET latin1 COLLATE latin1_general_ci NOT NULL,
ENGINE = InnoDB;
aucun commentaire
:: aucun trackback
mardi 6 février 2007
Par Denis Szalkowski,
mardi 6 février 2007 à 07:11 :: Sgbd
Microsoft s'apprête à remplacer son moteur Jet utilisé par Access par Sql Server Compact Edition.
Il ne s'agit pas vraiment d'un moteur de bases de données, mais bien plutôt d'un ensemble de bibliothèques à l'image d'un SQLite. Bof. Vous pouvez aussi utiliser PostGresql avec Odbc. Ca marche très bien.
->Télécharger Sql Server Compact Edition
aucun commentaire
:: aucun trackback
lundi 29 janvier 2007
Par Denis Szalkowski,
lundi 29 janvier 2007 à 13:56 :: Sgbd
A l'occasion de la sortie du moteur relationnel Falcon pour MySql, le blog MySql Performance publie un comparatif de perf entre InnoDB, ISAM et Falcon. Falcon est dans le sac... grave. Pour rappel, InnoDb a été racheté par Oracle.
aucun commentaire
:: aucun trackback
Par Denis Szalkowski,
lundi 29 janvier 2007 à 13:46 :: Sgbd
Voici quelques options de requête qui amèneront des gains de performance extrêmement significatifs au niveau de MySql. Pour public averti.
aucun commentaire
:: aucun trackback
dimanche 14 janvier 2007
Par Denis Szalkowski,
dimanche 14 janvier 2007 à 17:49 :: Sgbd
Même s'il est loin d'être le meilleur, MySql n'en demeure pas moins un moteur très utilisé dans le domaine du développement Web. De nombreuses interfaces existent pour gérer et administrer la base.
Je ne vois pas l'intérêt que j'aurais à vous parler de l'offre payante tant l'offre gratuite me paraît excellente.
aucun commentaire
:: aucun trackback
lundi 18 décembre 2006
Par Denis Szalkowski,
lundi 18 décembre 2006 à 20:11 :: Sgbd
L'orientation Full Java dans laquelle s'enfonce IBM l'amène à proposer des nouveaux produits tels que Cloudscape. Ce produit semble s'appuyer sur un développement communautaire : Apache Derby. Souvenez-vous : récemment, IBM semblait regretter le choix de Sun à choisir la GPL pour Java. La firme américaine semblait préférer la licence Apache. Je commence à comprendre pourquoi !
aucun commentaire
:: aucun trackback