MySQL & MariaDB dans le web
Christophe Villeneuve
@hellosct1
Christophe
Villeneuve
Qui ?
Le 5 octobre 2013
✔
Histoire
✔
Un choix
✔
En mode avancé
✔
En pratique
Sommaire
Le 5 octobre 2013
✔
Fondé par
✔
Monty Widenius
✔
David Axmark
✔
1983 – 1ère idée
✔
Fondé en 1995 
✔
2007 Préparation pour
...
Le 5 octobre 2013
✔
N° 1 dans le monde
✔
50k Download (depuis
2003)
✔
+ 13M installation
active
✔
MySQL Oracle
✔
Drizzle
✔...
Le 5 octobre 2013
Présentation des forks
Le 5 octobre 2013
✔
1983
✔
1995 Création de
MySQL
✔
1999 MySQL 3.23
✔
2000 InnoDB
✔
2003 MySQL 3.23 GA
✔
2004 MySQL 4.1 GA...
Le 5 octobre 2013
✔
Mi 2008 début
✔
Mars 2011 1ère
version GA
✔
Version redessinée de
MySQL 6.0
✔
Basé sur Micro-kernel
+ ...
Le 5 octobre 2013
✔
Dec 2008 : 1ère released
✔
2010 Percona 5.5
✔
Juin 2013 Percona 5.6
✔
XtraDB au lieu de InnoDB
✔
Plus ...
Le 5 octobre 2013
✔
Communauté d'amis
✔
100 % Open source et
compatible MySQL
✔
Plateforme d'innovation
✔
Des commiteurs
✔...
Le 5 octobre 2013
✔ MariaDB 5.1 → MySQL 5.1
✔ MariaDB 5.2 → MariaDB 5.1
✔ MariaDB 5.3 → MariaDB 5.2
✔ MariaDB 5.5 → MariaD...
Le 5 octobre 2013
✔
Plus de storages
✔
Vitesse
✔
Innodb, replication, stockage...
✔
Nombreuses extensions et fonctionnalit...
Le 5 octobre 2013
Mode avancé
Le 5 octobre 2013
✔
PHP (driver natif) → BSD licence
✔
Python
✔
Perl
✔
Ruby
✔
.NET avec MyODBC
✔
JDBC (basé sur drizzle dr...
Le 5 octobre 2013
Cassandra SE
✔
A partir de MariaDB 5.3
✔
NoSQL / NewSQL
✔
Données non structurées
✔
Réplication rapide
✔...
Le 5 octobre 2013
➢
Cassandra
➢
TokuDB
✔
 (R)Tokutek & MariaDB
✔
 Natif MariaDB 5.5 & 10.0
✔
Tech : Utilise l'arbre fracta...
Le 5 octobre 2013
➢
Cassandra
➢
TokuDB
➢
Connect
✔
MariaDB 10.0
✔
Lecture / Ecriture / MAJ
✔
TXT
✔
DBF
✔
.INI
✔
.XML
✔
ODB...
Le 5 octobre 2013
➢
Cassandra
➢
TokuDB
➢
Connect
A partir de 5.1
✔
PBXT(Désactiver 5.5)
✔
XtraDB (old innoDB)
✔
FederatedX...
Le 5 octobre 2013
➢
Cassandra
➢
TokuDB
➢
Connect
A partir de 5.1
✔
OQGraph (moteur info)
✔
SphinxSE (=search)
A partir de ...
Le 5 octobre 2013
✔
Pont entre les BDD relationnelles et non
relationnelles
✔
Toutes les colonnes stockées dans un « blob ...
Le 5 octobre 2013
CREATE TABLE t1 (
ID int
auto_increment
primary key,
Type_id int,
Prix decimal(7,2),
extra blob
);
COLUM...
Le 5 octobre 2013
Exemple plus réaliste
Le 5 octobre 2013
SELECT ...
FROM table1
WHERE table1_col IN (
SELECT table2_col
FROM table2
WHERE table2_subq)
AND table1...
Le 5 octobre 2013
✔
Moteur de table (storages engines) natif
✔
Réplication multisource
✔
NOW() à la place de DATETIME
✔
Am...
Le 5 octobre 2013http://blog.mariadb.org/mariadb-5-3-optimizer-benchmark/
Performance
Le 5 octobre 2013
En pratique
Le 5 octobre 2013
✔
EasyPHP
✔
Xampp
✔
WampServer
✔
PHPserver
✔
WampMSS
Environnement embarqué
Le 5 octobre 2013
✔
DL MariaDB (http://mariadb.org)
✔
Installer dans 1 dossier MySQL
✔
Déplacer les BDD sauvegardées data
...
Le 5 octobre 2013
✔
DL PHPServer
http://www.treshaut.net/viewtopic.php?t=28&p=71
✔
Installation
Exemple 2 : PHPServer
Le 5 octobre 2013
Exemple 2 : PHPServer avec phpMyAdmin
Le 5 octobre 2013
✔
sudo apt-get install mariadb-server mariadb-client
✔
Vous retrouvez :
✔
/etc/mysql/my.cnf
✔
> mysql
✔
...
Le 5 octobre 2013
✔
MySQLdump
✔
XtraBackup
✔
mysqlhotcopy
(MyISAM)
✔
XtraBackup manager
(PHP)
✔
...
✔
MySQL Workbench
✔
Sk...
GO MariaDB
Le 5 octobre 2013
Apprentissage
Le 5 octobre 2013
✔
Distributions
✔
OpenSUSE 12.3
✔
Gentoo
✔
FreeBSD
✔
Homebrew
✔
Slackware
✔
ArchLinux
✔
Fédora 7.0
✔
......
Le 5 octobre 2013
Merci
MySQL et MariaDB dans le web‎
MySQL et MariaDB dans le web‎
MySQL et MariaDB dans le web‎
MySQL et MariaDB dans le web‎
MySQL et MariaDB dans le web‎
Prochain SlideShare
Chargement dans…5
×

MySQL et MariaDB dans le web‎

1 344 vues

Publié le

Présentation effectuée à l'OSDC & Open World Forum 2013 - Track Code par Christophe Villeneuve

0 commentaire
0 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
1 344
Sur SlideShare
0
Issues des intégrations
0
Intégrations
134
Actions
Partages
0
Téléchargements
18
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

MySQL et MariaDB dans le web‎

  1. 1. MySQL & MariaDB dans le web Christophe Villeneuve @hellosct1
  2. 2. Christophe Villeneuve Qui ?
  3. 3. Le 5 octobre 2013 ✔ Histoire ✔ Un choix ✔ En mode avancé ✔ En pratique Sommaire
  4. 4. Le 5 octobre 2013 ✔ Fondé par ✔ Monty Widenius ✔ David Axmark ✔ 1983 – 1ère idée ✔ Fondé en 1995  ✔ 2007 Préparation pour Nasdaq ✔ 2008 Rachat par Sun ✔ 2009 Sun racheté par Oracle ✔ Promesse de Oracle sur 5 ans (fin 2009) L'origine Dates importantes Histoire de début
  5. 5. Le 5 octobre 2013 ✔ N° 1 dans le monde ✔ 50k Download (depuis 2003) ✔ + 13M installation active ✔ MySQL Oracle ✔ Drizzle ✔ Percona ✔ MariaDB ✔ De nos jours... MySQL Forks Et maintenant
  6. 6. Le 5 octobre 2013 Présentation des forks
  7. 7. Le 5 octobre 2013 ✔ 1983 ✔ 1995 Création de MySQL ✔ 1999 MySQL 3.23 ✔ 2000 InnoDB ✔ 2003 MySQL 3.23 GA ✔ 2004 MySQL 4.1 GA ✔ 2005 Oracle avec InnoDB ✔ 2005 MySQL 5.0 GA ✔ 2008 MySQL 5.1GA(Sun) ✔ 2010 MySQL 5.5 GA (Oracle) ✔ 2011 Modules de codes source fermé ✔ 2013 MySQL 5.6 GA ✔ ??? MySQL 5.7 Les grandes dates de MySQL
  8. 8. Le 5 octobre 2013 ✔ Mi 2008 début ✔ Mars 2011 1ère version GA ✔ Version redessinée de MySQL 6.0 ✔ Basé sur Micro-kernel + simple & + léger ✔ En ligne de commande ✔ BDD du coté serveur ✔ GPL v2 Drizzle les points forts
  9. 9. Le 5 octobre 2013 ✔ Dec 2008 : 1ère released ✔ 2010 Percona 5.5 ✔ Juin 2013 Percona 5.6 ✔ XtraDB au lieu de InnoDB ✔ Plus d'instrumentation ✔ Nombreux outils ✔ Amélioration Restart ✔ Performance ✔ Statistiques  Les étapes de Percona Server
  10. 10. Le 5 octobre 2013 ✔ Communauté d'amis ✔ 100 % Open source et compatible MySQL ✔ Plateforme d'innovation ✔ Des commiteurs ✔ Dec 2008 Création de Monty  Program   → Monty Widenius ✔ MariaDB 5.1 (Fev 2010) ✔ MariaDB 5.2 (Nov 2010) ✔ MariaDB 5.3 (Avril 2012) ✔ MariaDB 5.5 (Avril 2012) ✔ MariaDB 10.0a (Nov 2012)  1er semestre 2013 ✔ 2013 Fondation ✔ MariaDB 10.0.1  (fin 2013)Galera people Compression Multimaster Replication MariaDB : un jeune projet... MATURE
  11. 11. Le 5 octobre 2013 ✔ MariaDB 5.1 → MySQL 5.1 ✔ MariaDB 5.2 → MariaDB 5.1 ✔ MariaDB 5.3 → MariaDB 5.2 ✔ MariaDB 5.5 → MariaDB 5.3 + MySQL 5.5 ✔ MariaDB 10.0 → MariaDB 5.5 + MySQL 5.6 ✔ MariaDB 5.6 → MariaDB 5.5 + MySQL 5.6 Fin 2013 ✔ MariaDB 10.0.1 → MariaDB 5.6 + MariaDB 10.0 Repère des versions
  12. 12. Le 5 octobre 2013 ✔ Plus de storages ✔ Vitesse ✔ Innodb, replication, stockage... ✔ Nombreuses extensions et fonctionnalités ✔ Colonnes virtuelles, colonne dynamique, multi... ✔ Plus de tests ✔ Tests correctifs, réactivités... ✔ Code source ouvert ✔ Développé par la communauté En un mot... MariaDB vs MySQL
  13. 13. Le 5 octobre 2013 Mode avancé
  14. 14. Le 5 octobre 2013 ✔ PHP (driver natif) → BSD licence ✔ Python ✔ Perl ✔ Ruby ✔ .NET avec MyODBC ✔ JDBC (basé sur drizzle driver) ✔ C ✔ Oracle connector (licence GPL) Tous sont LGPL → Aucune licence commerciale Connecteurs
  15. 15. Le 5 octobre 2013 Cassandra SE ✔ A partir de MariaDB 5.3 ✔ NoSQL / NewSQL ✔ Données non structurées ✔ Réplication rapide ✔ Assurer l'intégration des données SQL / NoSQL ✔ Mapping possible Storages engines 1/4
  16. 16. Le 5 octobre 2013 ➢ Cassandra ➢ TokuDB ✔  (R)Tokutek & MariaDB ✔  Natif MariaDB 5.5 & 10.0 ✔ Tech : Utilise l'arbre fractal ✔  Amélioration indexation ✔  Amélioration des requêtes ✔ Schéma de vitesse ✔ Compression ✔ Réplication ✔ Souple Storages engine 2/4
  17. 17. Le 5 octobre 2013 ➢ Cassandra ➢ TokuDB ➢ Connect ✔ MariaDB 10.0 ✔ Lecture / Ecriture / MAJ ✔ TXT ✔ DBF ✔ .INI ✔ .XML ✔ ODBC ✔ Locale ou distant ✔ Possible de faire le sien Storages engine 3/4
  18. 18. Le 5 octobre 2013 ➢ Cassandra ➢ TokuDB ➢ Connect A partir de 5.1 ✔ PBXT(Désactiver 5.5) ✔ XtraDB (old innoDB) ✔ FederatedX ✔ Aria (old MyISAM) Storages engine 4/4
  19. 19. Le 5 octobre 2013 ➢ Cassandra ➢ TokuDB ➢ Connect A partir de 5.1 ✔ OQGraph (moteur info) ✔ SphinxSE (=search) A partir de 5.2 Storages engines 4/4
  20. 20. Le 5 octobre 2013 ✔ Pont entre les BDD relationnelles et non relationnelles ✔ Toutes les colonnes stockées dans un « blob » ✔ Possibilité de le manipuler ✔ Possibilité de créer des index Virtuels Colonnes Dynamiques
  21. 21. Le 5 octobre 2013 CREATE TABLE t1 ( ID int auto_increment primary key, Type_id int, Prix decimal(7,2), extra blob ); COLUMN_CREATE( column_nr, value [as type], [ column_nr, value [as type] ], ...) INSERT into t1 values (NULL, 1 , 10, COLUMN_CREATE(1, 'bleu', 2 , 'M')); INSERT into t1 values (NULL, 2 , 400, COLUMN_CREATE(3, 'RAM', 5 , 800)); UPDATE t1 SET extra = COLUMN_ADD(extra, 6 , 2048) WHERE id=2; Coloris / Taille / Matériel / Vide / hard / optionID / Type_id / Prix Création d'une colonne dynamique
  22. 22. Le 5 octobre 2013 Exemple plus réaliste
  23. 23. Le 5 octobre 2013 SELECT ... FROM table1 WHERE table1_col IN ( SELECT table2_col FROM table2 WHERE table2_subq) AND table1_where; Optimizer_switch='semijoin=on' Materialization=on / off in_to_exists = on/off tmp_table_size max_heap_table_size Optimizer_switch='semijoin=on' Materialization=on / off in_to_exists = on/off tmp_table_size max_heap_table_size Subquery... MariaDB 5.3 + MySQL 5.6
  24. 24. Le 5 octobre 2013 ✔ Moteur de table (storages engines) natif ✔ Réplication multisource ✔ NOW() à la place de DATETIME ✔ Amélioration des informations erreurs ✔ Amélioration schéma de performance ✔ InnoDB ✔ Replication ✔ Statistics & Monitoring ✔ Optimizer ✔ Performance MariaDB 10.0
  25. 25. Le 5 octobre 2013http://blog.mariadb.org/mariadb-5-3-optimizer-benchmark/ Performance
  26. 26. Le 5 octobre 2013 En pratique
  27. 27. Le 5 octobre 2013 ✔ EasyPHP ✔ Xampp ✔ WampServer ✔ PHPserver ✔ WampMSS Environnement embarqué
  28. 28. Le 5 octobre 2013 ✔ DL MariaDB (http://mariadb.org) ✔ Installer dans 1 dossier MySQL ✔ Déplacer les BDD sauvegardées data ✔ Lancer Wampserver Exemple 1 : wampserver
  29. 29. Le 5 octobre 2013 ✔ DL PHPServer http://www.treshaut.net/viewtopic.php?t=28&p=71 ✔ Installation Exemple 2 : PHPServer
  30. 30. Le 5 octobre 2013 Exemple 2 : PHPServer avec phpMyAdmin
  31. 31. Le 5 octobre 2013 ✔ sudo apt-get install mariadb-server mariadb-client ✔ Vous retrouvez : ✔ /etc/mysql/my.cnf ✔ > mysql ✔ Au final Exemple 3 : Linux
  32. 32. Le 5 octobre 2013 ✔ MySQLdump ✔ XtraBackup ✔ mysqlhotcopy (MyISAM) ✔ XtraBackup manager (PHP) ✔ ... ✔ MySQL Workbench ✔ SkySQL visual Editor (SQLYog) ✔ HeidiSQL ✔ PhpMyAdmin ✔ Toad For MySQL ✔ ... Backup Pour vos requêtes Outils
  33. 33. GO MariaDB
  34. 34. Le 5 octobre 2013 Apprentissage
  35. 35. Le 5 octobre 2013 ✔ Distributions ✔ OpenSUSE 12.3 ✔ Gentoo ✔ FreeBSD ✔ Homebrew ✔ Slackware ✔ ArchLinux ✔ Fédora 7.0 ✔ ... ✔ Dec 2012 Wikipedia ✔ 2013 ✔ Blog de Mozilla ✔ Google Developer Ceux qui ont déjà sauté...
  36. 36. Le 5 octobre 2013 Merci

×