SlideShare uma empresa Scribd logo
1 de 41
Baixar para ler offline
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
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
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
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
✔
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
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
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
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
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
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
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 driver)
✔
C
✔
Oracle connector (licence GPL)
Tous sont LGPL → Aucune licence commerciale
Connecteurs
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
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
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
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
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
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
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
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_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
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
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
✔
Lancer Wampserver
Exemple 1 : wampserver
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
✔
Au final
Exemple 3 : Linux
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
GO MariaDB
Le 5 octobre 2013
Apprentissage
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é...
Le 5 octobre 2013
Merci

Mais conteúdo relacionado

Mais procurados

Performance de Percona XtraDB Cluster / Galera Cluster: Monitoring & Gestion ...
Performance de Percona XtraDB Cluster / Galera Cluster: Monitoring & Gestion ...Performance de Percona XtraDB Cluster / Galera Cluster: Monitoring & Gestion ...
Performance de Percona XtraDB Cluster / Galera Cluster: Monitoring & Gestion ...Severalnines
 
XebiCon'16 : A la découverte de Nomad d'Hashicorp. Par Sergio Dos Santos, Dév...
XebiCon'16 : A la découverte de Nomad d'Hashicorp. Par Sergio Dos Santos, Dév...XebiCon'16 : A la découverte de Nomad d'Hashicorp. Par Sergio Dos Santos, Dév...
XebiCon'16 : A la découverte de Nomad d'Hashicorp. Par Sergio Dos Santos, Dév...Publicis Sapient Engineering
 
Les nouveautés de MySQL 5.1
Les nouveautés de MySQL 5.1Les nouveautés de MySQL 5.1
Les nouveautés de MySQL 5.1Olivier DASINI
 
Ze cloud azure camp - 26 septembre
Ze cloud   azure camp - 26 septembreZe cloud   azure camp - 26 septembre
Ze cloud azure camp - 26 septembreAymeric Weinbach
 
Héberger son site web sur le cloud avec Windows Azure
Héberger son site web sur le cloud avec Windows AzureHéberger son site web sur le cloud avec Windows Azure
Héberger son site web sur le cloud avec Windows AzureMCKLMT
 
Ignite 2018 - Coups de coeur (Benoit Sautiere)
Ignite 2018 - Coups de coeur (Benoit Sautiere)Ignite 2018 - Coups de coeur (Benoit Sautiere)
Ignite 2018 - Coups de coeur (Benoit Sautiere)AZUG FR
 
Virt lightning-montreal-linux-meetup-2020-02
Virt lightning-montreal-linux-meetup-2020-02Virt lightning-montreal-linux-meetup-2020-02
Virt lightning-montreal-linux-meetup-2020-02Gonéri Le Bouder
 

Mais procurados (10)

Performance de Percona XtraDB Cluster / Galera Cluster: Monitoring & Gestion ...
Performance de Percona XtraDB Cluster / Galera Cluster: Monitoring & Gestion ...Performance de Percona XtraDB Cluster / Galera Cluster: Monitoring & Gestion ...
Performance de Percona XtraDB Cluster / Galera Cluster: Monitoring & Gestion ...
 
Chiffrer et sécuriser MariaDB
Chiffrer et sécuriser MariaDBChiffrer et sécuriser MariaDB
Chiffrer et sécuriser MariaDB
 
Les fonctions MariaDB - LeMug.fr
Les fonctions MariaDB - LeMug.frLes fonctions MariaDB - LeMug.fr
Les fonctions MariaDB - LeMug.fr
 
XebiCon'16 : A la découverte de Nomad d'Hashicorp. Par Sergio Dos Santos, Dév...
XebiCon'16 : A la découverte de Nomad d'Hashicorp. Par Sergio Dos Santos, Dév...XebiCon'16 : A la découverte de Nomad d'Hashicorp. Par Sergio Dos Santos, Dév...
XebiCon'16 : A la découverte de Nomad d'Hashicorp. Par Sergio Dos Santos, Dév...
 
Les nouveautés de MySQL 5.1
Les nouveautés de MySQL 5.1Les nouveautés de MySQL 5.1
Les nouveautés de MySQL 5.1
 
Ze cloud data-aspectize
Ze cloud   data-aspectizeZe cloud   data-aspectize
Ze cloud data-aspectize
 
Ze cloud azure camp - 26 septembre
Ze cloud   azure camp - 26 septembreZe cloud   azure camp - 26 septembre
Ze cloud azure camp - 26 septembre
 
Héberger son site web sur le cloud avec Windows Azure
Héberger son site web sur le cloud avec Windows AzureHéberger son site web sur le cloud avec Windows Azure
Héberger son site web sur le cloud avec Windows Azure
 
Ignite 2018 - Coups de coeur (Benoit Sautiere)
Ignite 2018 - Coups de coeur (Benoit Sautiere)Ignite 2018 - Coups de coeur (Benoit Sautiere)
Ignite 2018 - Coups de coeur (Benoit Sautiere)
 
Virt lightning-montreal-linux-meetup-2020-02
Virt lightning-montreal-linux-meetup-2020-02Virt lightning-montreal-linux-meetup-2020-02
Virt lightning-montreal-linux-meetup-2020-02
 

Destaque

Merise
MeriseMerise
Merisebasy15
 
Merise exercices-mcd_corriges
Merise  exercices-mcd_corrigesMerise  exercices-mcd_corriges
Merise exercices-mcd_corrigesMehdi El
 
Formation MySQL Workbench
Formation MySQL WorkbenchFormation MySQL Workbench
Formation MySQL WorkbenchIsenDev
 
Création d’application facile en html via node-webkit
Création d’application facile en html via node-webkitCréation d’application facile en html via node-webkit
Création d’application facile en html via node-webkitIsenDev
 
Initiation au C++
Initiation au C++Initiation au C++
Initiation au C++IsenDev
 
T P
T PT P
T PADB2
 
Test unitaire
Test unitaireTest unitaire
Test unitaireIsenDev
 
SGBDR - MySQL
SGBDR - MySQLSGBDR - MySQL
SGBDR - MySQLMusatge
 
Cours Base de Données
Cours Base de DonnéesCours Base de Données
Cours Base de Donnéesyassine kchiri
 
Merise+ +exercices+mcd+-+corrigés
Merise+ +exercices+mcd+-+corrigésMerise+ +exercices+mcd+-+corrigés
Merise+ +exercices+mcd+-+corrigésMajid CHADAD
 
exercices Corrigées du merise
exercices Corrigées du  meriseexercices Corrigées du  merise
exercices Corrigées du meriseYassine Badri
 
Mozilla sénégal
Mozilla sénégalMozilla sénégal
Mozilla sénégalclarista
 
Ca merite au moins un sourire1
Ca merite au moins un sourire1Ca merite au moins un sourire1
Ca merite au moins un sourire1canhthep
 
Le magistère de l'essentiel
Le magistère de l'essentielLe magistère de l'essentiel
Le magistère de l'essentielCOURTOT Lionel
 
Principios para escribir un buen artículo
Principios para escribir un buen artículoPrincipios para escribir un buen artículo
Principios para escribir un buen artículoÓscar Pech Lara
 
Génération RSE (Canada)
Génération RSE (Canada)Génération RSE (Canada)
Génération RSE (Canada)CITIZEN ACT
 
La legislación errática y desordenada a la búsqueda del mantenimiento y la cr...
La legislación errática y desordenada a la búsqueda del mantenimiento y la cr...La legislación errática y desordenada a la búsqueda del mantenimiento y la cr...
La legislación errática y desordenada a la búsqueda del mantenimiento y la cr...Universidad Autónoma de Barcelona
 

Destaque (20)

Merise
MeriseMerise
Merise
 
Merise exercices-mcd_corriges
Merise  exercices-mcd_corrigesMerise  exercices-mcd_corriges
Merise exercices-mcd_corriges
 
Formation MySQL Workbench
Formation MySQL WorkbenchFormation MySQL Workbench
Formation MySQL Workbench
 
Création d’application facile en html via node-webkit
Création d’application facile en html via node-webkitCréation d’application facile en html via node-webkit
Création d’application facile en html via node-webkit
 
Initiation au C++
Initiation au C++Initiation au C++
Initiation au C++
 
T P
T PT P
T P
 
Test unitaire
Test unitaireTest unitaire
Test unitaire
 
SGBDR - MySQL
SGBDR - MySQLSGBDR - MySQL
SGBDR - MySQL
 
Cours Base de Données
Cours Base de DonnéesCours Base de Données
Cours Base de Données
 
Merise+ +exercices+mcd+-+corrigés
Merise+ +exercices+mcd+-+corrigésMerise+ +exercices+mcd+-+corrigés
Merise+ +exercices+mcd+-+corrigés
 
exercices Corrigées du merise
exercices Corrigées du  meriseexercices Corrigées du  merise
exercices Corrigées du merise
 
Mozilla sénégal
Mozilla sénégalMozilla sénégal
Mozilla sénégal
 
Ca merite au moins un sourire1
Ca merite au moins un sourire1Ca merite au moins un sourire1
Ca merite au moins un sourire1
 
Le magistère de l'essentiel
Le magistère de l'essentielLe magistère de l'essentiel
Le magistère de l'essentiel
 
Principios para escribir un buen artículo
Principios para escribir un buen artículoPrincipios para escribir un buen artículo
Principios para escribir un buen artículo
 
Génération RSE (Canada)
Génération RSE (Canada)Génération RSE (Canada)
Génération RSE (Canada)
 
Icud, Jóvenes en la red,...desmontando mitos ;-)
Icud, Jóvenes en la red,...desmontando mitos ;-)Icud, Jóvenes en la red,...desmontando mitos ;-)
Icud, Jóvenes en la red,...desmontando mitos ;-)
 
Anexo
AnexoAnexo
Anexo
 
La legislación errática y desordenada a la búsqueda del mantenimiento y la cr...
La legislación errática y desordenada a la búsqueda del mantenimiento y la cr...La legislación errática y desordenada a la búsqueda del mantenimiento y la cr...
La legislación errática y desordenada a la búsqueda del mantenimiento y la cr...
 
MM@cademie juin2011
MM@cademie juin2011MM@cademie juin2011
MM@cademie juin2011
 

Semelhante a MySQL et MariaDB dans le web‎

Apache mariadb php pour un développement libre au RMLL 2015
Apache mariadb php pour un développement libre au RMLL 2015Apache mariadb php pour un développement libre au RMLL 2015
Apache mariadb php pour un développement libre au RMLL 2015Christophe Villeneuve
 
Open source et microsoft azure reve ou realite ?
Open source et microsoft azure reve ou realite ?Open source et microsoft azure reve ou realite ?
Open source et microsoft azure reve ou realite ?Christophe Villeneuve
 
Open Source et Microsoft Azure, rêve ou réalité ?
Open Source et Microsoft Azure, rêve ou réalité ?Open Source et Microsoft Azure, rêve ou réalité ?
Open Source et Microsoft Azure, rêve ou réalité ?Microsoft
 
Open XKE - Google Compute Engine par Jean-Baptiste Claramonte et Eric Briand
Open XKE - Google Compute Engine par Jean-Baptiste Claramonte et Eric BriandOpen XKE - Google Compute Engine par Jean-Baptiste Claramonte et Eric Briand
Open XKE - Google Compute Engine par Jean-Baptiste Claramonte et Eric BriandPublicis Sapient Engineering
 
Meetup juin2013
Meetup juin2013Meetup juin2013
Meetup juin2013nperu
 
Confoo 2022 - le cycle d'une instance MySQL
Confoo 2022  - le cycle d'une instance MySQLConfoo 2022  - le cycle d'une instance MySQL
Confoo 2022 - le cycle d'une instance MySQLFrederic Descamps
 
Dans les coulisses de Google BigQuery - DevFest Toulouse 2016
Dans les coulisses de Google BigQuery - DevFest Toulouse 2016Dans les coulisses de Google BigQuery - DevFest Toulouse 2016
Dans les coulisses de Google BigQuery - DevFest Toulouse 2016Aurélie Vache
 
Deployer PHP et MariaDB dans Azure - TechDays
Deployer PHP et MariaDB dans Azure - TechDaysDeployer PHP et MariaDB dans Azure - TechDays
Deployer PHP et MariaDB dans Azure - TechDaysChristophe Villeneuve
 
Déployez votre site PHP / MariaDB, simplement et rapidement dans Azure
Déployez votre site PHP / MariaDB, simplement et rapidement dans AzureDéployez votre site PHP / MariaDB, simplement et rapidement dans Azure
Déployez votre site PHP / MariaDB, simplement et rapidement dans AzureMicrosoft
 
Presentation mariaDB 10 and fork
Presentation mariaDB 10 and forkPresentation mariaDB 10 and fork
Presentation mariaDB 10 and forkLEQUOY Aurélien
 
L Importance des forks de MySQL
L Importance des forks de MySQLL Importance des forks de MySQL
L Importance des forks de MySQLneuros
 
Firefox OS - l'autre système pour smartphone‎
Firefox OS - l'autre système pour smartphone‎Firefox OS - l'autre système pour smartphone‎
Firefox OS - l'autre système pour smartphone‎Christophe Villeneuve
 
Cloud Azure -- Services de données et bonnes pratiques
Cloud Azure -- Services de données et bonnes pratiques Cloud Azure -- Services de données et bonnes pratiques
Cloud Azure -- Services de données et bonnes pratiques Microsoft Technet France
 
Cloud Azure – Services de données et bonnes pratiques
Cloud Azure – Services de données et bonnes pratiquesCloud Azure – Services de données et bonnes pratiques
Cloud Azure – Services de données et bonnes pratiquesMicrosoft
 

Semelhante a MySQL et MariaDB dans le web‎ (20)

Php et Mariadb dans le libre - JDLL
Php et Mariadb dans le libre - JDLLPhp et Mariadb dans le libre - JDLL
Php et Mariadb dans le libre - JDLL
 
Apache mariadb php pour un développement libre au RMLL 2015
Apache mariadb php pour un développement libre au RMLL 2015Apache mariadb php pour un développement libre au RMLL 2015
Apache mariadb php pour un développement libre au RMLL 2015
 
Mariadb une base de données NewSQL
Mariadb une base de données NewSQLMariadb une base de données NewSQL
Mariadb une base de données NewSQL
 
Open source et microsoft azure reve ou realite ?
Open source et microsoft azure reve ou realite ?Open source et microsoft azure reve ou realite ?
Open source et microsoft azure reve ou realite ?
 
Open Source et Microsoft Azure, rêve ou réalité ?
Open Source et Microsoft Azure, rêve ou réalité ?Open Source et Microsoft Azure, rêve ou réalité ?
Open Source et Microsoft Azure, rêve ou réalité ?
 
Open XKE - Google Compute Engine par Jean-Baptiste Claramonte et Eric Briand
Open XKE - Google Compute Engine par Jean-Baptiste Claramonte et Eric BriandOpen XKE - Google Compute Engine par Jean-Baptiste Claramonte et Eric Briand
Open XKE - Google Compute Engine par Jean-Baptiste Claramonte et Eric Briand
 
Google Compute Engine
Google Compute EngineGoogle Compute Engine
Google Compute Engine
 
Meetup juin2013
Meetup juin2013Meetup juin2013
Meetup juin2013
 
Fusion io
Fusion ioFusion io
Fusion io
 
Hugfr infotel-11 juin2014
Hugfr infotel-11 juin2014Hugfr infotel-11 juin2014
Hugfr infotel-11 juin2014
 
Confoo 2022 - le cycle d'une instance MySQL
Confoo 2022  - le cycle d'une instance MySQLConfoo 2022  - le cycle d'une instance MySQL
Confoo 2022 - le cycle d'une instance MySQL
 
Dans les coulisses de Google BigQuery - DevFest Toulouse 2016
Dans les coulisses de Google BigQuery - DevFest Toulouse 2016Dans les coulisses de Google BigQuery - DevFest Toulouse 2016
Dans les coulisses de Google BigQuery - DevFest Toulouse 2016
 
Deployer PHP et MariaDB dans Azure - TechDays
Deployer PHP et MariaDB dans Azure - TechDaysDeployer PHP et MariaDB dans Azure - TechDays
Deployer PHP et MariaDB dans Azure - TechDays
 
Déployez votre site PHP / MariaDB, simplement et rapidement dans Azure
Déployez votre site PHP / MariaDB, simplement et rapidement dans AzureDéployez votre site PHP / MariaDB, simplement et rapidement dans Azure
Déployez votre site PHP / MariaDB, simplement et rapidement dans Azure
 
Presentation mariaDB 10 and fork
Presentation mariaDB 10 and forkPresentation mariaDB 10 and fork
Presentation mariaDB 10 and fork
 
L Importance des forks de MySQL
L Importance des forks de MySQLL Importance des forks de MySQL
L Importance des forks de MySQL
 
LyonJUG-2023-v1.0.pdf
LyonJUG-2023-v1.0.pdfLyonJUG-2023-v1.0.pdf
LyonJUG-2023-v1.0.pdf
 
Firefox OS - l'autre système pour smartphone‎
Firefox OS - l'autre système pour smartphone‎Firefox OS - l'autre système pour smartphone‎
Firefox OS - l'autre système pour smartphone‎
 
Cloud Azure -- Services de données et bonnes pratiques
Cloud Azure -- Services de données et bonnes pratiques Cloud Azure -- Services de données et bonnes pratiques
Cloud Azure -- Services de données et bonnes pratiques
 
Cloud Azure – Services de données et bonnes pratiques
Cloud Azure – Services de données et bonnes pratiquesCloud Azure – Services de données et bonnes pratiques
Cloud Azure – Services de données et bonnes pratiques
 

Mais de Christophe Villeneuve

La boîte à outils de développements dans Firefox
La boîte à outils de développements dans FirefoxLa boîte à outils de développements dans Firefox
La boîte à outils de développements dans FirefoxChristophe Villeneuve
 
controler vos donnees éthiques dans le web
controler vos donnees éthiques dans le webcontroler vos donnees éthiques dans le web
controler vos donnees éthiques dans le webChristophe Villeneuve
 
Open Source et contribution : Une association gagnante
Open Source et contribution : Une association gagnanteOpen Source et contribution : Une association gagnante
Open Source et contribution : Une association gagnanteChristophe Villeneuve
 
Peur de la migration vers l’open source ?
Peur de la migration vers l’open source ?Peur de la migration vers l’open source ?
Peur de la migration vers l’open source ?Christophe Villeneuve
 
La sécurité applicative par le design
La sécurité applicative par le designLa sécurité applicative par le design
La sécurité applicative par le designChristophe Villeneuve
 
Mozilla french speaking community activites
Mozilla french speaking community activitesMozilla french speaking community activites
Mozilla french speaking community activitesChristophe Villeneuve
 
Monitoring dynamique : Grafana et Microsoft
Monitoring dynamique : Grafana et MicrosoftMonitoring dynamique : Grafana et Microsoft
Monitoring dynamique : Grafana et MicrosoftChristophe Villeneuve
 
Le futur de l'authentification webAuthn
Le futur de l'authentification webAuthnLe futur de l'authentification webAuthn
Le futur de l'authentification webAuthnChristophe Villeneuve
 
Tests d'accessibilite par la pratique
Tests d'accessibilite par la pratiqueTests d'accessibilite par la pratique
Tests d'accessibilite par la pratiqueChristophe Villeneuve
 
La réalité mélangée dans vos applications
La réalité mélangée dans vos applicationsLa réalité mélangée dans vos applications
La réalité mélangée dans vos applicationsChristophe Villeneuve
 

Mais de Christophe Villeneuve (20)

MariaDB une base de donnees NewSQL
MariaDB une base de donnees NewSQLMariaDB une base de donnees NewSQL
MariaDB une base de donnees NewSQL
 
La boîte à outils de développements dans Firefox
La boîte à outils de développements dans FirefoxLa boîte à outils de développements dans Firefox
La boîte à outils de développements dans Firefox
 
pister les pisteurs
pister les pisteurspister les pisteurs
pister les pisteurs
 
controler vos donnees éthiques dans le web
controler vos donnees éthiques dans le webcontroler vos donnees éthiques dans le web
controler vos donnees éthiques dans le web
 
Infrastructure as code drupal
Infrastructure as code drupalInfrastructure as code drupal
Infrastructure as code drupal
 
Open Source et contribution : Une association gagnante
Open Source et contribution : Une association gagnanteOpen Source et contribution : Une association gagnante
Open Source et contribution : Une association gagnante
 
Pentest bus pirate
Pentest bus piratePentest bus pirate
Pentest bus pirate
 
Peur de la migration vers l’open source ?
Peur de la migration vers l’open source ?Peur de la migration vers l’open source ?
Peur de la migration vers l’open source ?
 
La sécurité applicative par le design
La sécurité applicative par le designLa sécurité applicative par le design
La sécurité applicative par le design
 
Foxfooding semaine 3
Foxfooding semaine 3Foxfooding semaine 3
Foxfooding semaine 3
 
Foxfooding
FoxfoodingFoxfooding
Foxfooding
 
Accessibilite web wcag rgaa
Accessibilite web wcag rgaaAccessibilite web wcag rgaa
Accessibilite web wcag rgaa
 
Mozilla french speaking community activites
Mozilla french speaking community activitesMozilla french speaking community activites
Mozilla french speaking community activites
 
Monitoring dynamique : Grafana et Microsoft
Monitoring dynamique : Grafana et MicrosoftMonitoring dynamique : Grafana et Microsoft
Monitoring dynamique : Grafana et Microsoft
 
Etes vous-pret pour php8 ?
Etes vous-pret pour php8 ?Etes vous-pret pour php8 ?
Etes vous-pret pour php8 ?
 
Le futur de l'authentification webAuthn
Le futur de l'authentification webAuthnLe futur de l'authentification webAuthn
Le futur de l'authentification webAuthn
 
Send large files with addons
Send large files with addonsSend large files with addons
Send large files with addons
 
Tests d'accessibilite par la pratique
Tests d'accessibilite par la pratiqueTests d'accessibilite par la pratique
Tests d'accessibilite par la pratique
 
Donnez la voix aux machines
Donnez la voix aux machinesDonnez la voix aux machines
Donnez la voix aux machines
 
La réalité mélangée dans vos applications
La réalité mélangée dans vos applicationsLa réalité mélangée dans vos applications
La réalité mélangée dans vos applications
 

MySQL et MariaDB dans le web‎

  • 1. MySQL & MariaDB dans le web Christophe Villeneuve @hellosct1
  • 3. Le 5 octobre 2013 ✔ Histoire ✔ Un choix ✔ En mode avancé ✔ En pratique Sommaire
  • 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. 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. Le 5 octobre 2013 Présentation des forks
  • 7.
  • 8. 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
  • 9.
  • 10. 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
  • 11.
  • 12. 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
  • 13.
  • 14. 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
  • 15. 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
  • 16.
  • 17. 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
  • 18. Le 5 octobre 2013 Mode avancé
  • 19. 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
  • 20. 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
  • 21. 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
  • 22. 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
  • 23. 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
  • 24. 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
  • 25. 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
  • 26. 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
  • 27. Le 5 octobre 2013 Exemple plus réaliste
  • 28. 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
  • 29. 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
  • 30. Le 5 octobre 2013http://blog.mariadb.org/mariadb-5-3-optimizer-benchmark/ Performance
  • 31. Le 5 octobre 2013 En pratique
  • 32. Le 5 octobre 2013 ✔ EasyPHP ✔ Xampp ✔ WampServer ✔ PHPserver ✔ WampMSS Environnement embarqué
  • 33. 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
  • 34. Le 5 octobre 2013 ✔ DL PHPServer http://www.treshaut.net/viewtopic.php?t=28&p=71 ✔ Installation Exemple 2 : PHPServer
  • 35. Le 5 octobre 2013 Exemple 2 : PHPServer avec phpMyAdmin
  • 36. Le 5 octobre 2013 ✔ sudo apt-get install mariadb-server mariadb-client ✔ Vous retrouvez : ✔ /etc/mysql/my.cnf ✔ > mysql ✔ Au final Exemple 3 : Linux
  • 37. 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
  • 39. Le 5 octobre 2013 Apprentissage
  • 40. 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é...
  • 41. Le 5 octobre 2013 Merci