Comment utiliser le module MySQL (MariaDB) intégré de ServBay
En tant qu'outil de développement Web intégré puissant, ServBay est livré avec un module MySQL, et son activation est très simple. MariaDB est un fork de MySQL, entièrement compatible avec MySQL et largement utilisé dans le développement Web moderne. Grâce à ServBay, les développeurs peuvent facilement activer le module MySQL et utiliser MariaDB pour le stockage et la gestion des données dans les applications PHP.
Différences entre MySQL et MariaDB
MySQL et MariaDB sont tous deux des systèmes de gestion de bases de données relationnelles (SGBDR) populaires, mais ils présentent quelques différences :
Origine :
- MySQL : Développé par l'entreprise MySQL AB, racheté plus tard par Sun Microsystems, finalement acquis par Oracle.
- MariaDB : Créé par Michael Widenius, le fondateur de MySQL, comme un fork de MySQL, avec l'objectif de rester open source et libre.
Compatibilité :
- MySQL : Largement utilisé, de nombreuses grandes applications et systèmes d'entreprise en dépendent.
- MariaDB : Complètement compatible avec MySQL, presque toutes les fonctionnalités et la syntaxe de MySQL peuvent être utilisées dans MariaDB.
Performance et caractéristiques :
- MySQL : Dans certains contextes spécifiques, MySQL peut offrir une meilleure optimisation et performance.
- MariaDB : Sous l'impulsion de la communauté open source, MariaDB a introduit de nombreuses nouvelles fonctionnalités et améliorations des performances, telles qu'une meilleure gestion des threads, des colonnes virtuelles et des moteurs de stockage.
Versions du module MySQL (MariaDB) intégré de ServBay
ServBay prend en charge plusieurs versions de PHP et pour chaque version, le module MySQL correspondant est préinstallé et activé par défaut. En particulier, ServBay est livré avec les trois modules MySQL suivants :
- MySQL Native Driver (mysqlnd) : Driver natif de PHP pour communiquer avec la base de données MySQL, offrant de meilleures performances et gestion de la mémoire.
- MySQLi : Extension MySQL améliorée, offrant des interfaces orientées objet et procédurales, prenant en charge les instructions préparées, les transactions, les procédures stockées et les requêtes multiples.
- PDO (PHP Data Objects) : Interface légère et orientée objet pour accéder à plusieurs bases de données, y compris MySQL, PostgreSQL, SQLite, etc.
Comment activer le module MySQL
Par défaut, le module MySQL est activé, aucune configuration supplémentaire n'est nécessaire.
Différences entre les trois modules MySQL
MySQL Native Driver (mysqlnd) :
- Description : mysqlnd est un driver natif de PHP pour communiquer avec la base de données MySQL.
- Caractéristiques : Il offre de meilleures performances et gestion de la mémoire, et c'est le driver par défaut à partir de PHP 5.3.
- Avantages : Utilisation de la mémoire plus efficace, exécution des requêtes plus rapide, prise en charge des requêtes asynchrones et extensibilité via des plugins.
MySQLi :
- Description : MySQL Improved Extension (MySQLi) est une extension améliorée de MySQL offrant des interfaces orientées objet et procédurales.
- Caractéristiques : Prise en charge des instructions préparées, des transactions, des procédures stockées et des requêtes multiples.
- Avantages : Exécution des requêtes plus sécurisée (prévention des injections SQL), plus de fonctionnalités et meilleures performances.
PDO (PHP Data Objects) :
- Description : PDO est une interface légère et orientée objet pour accéder à plusieurs bases de données, y compris MySQL, PostgreSQL, SQLite, etc.
- Caractéristiques : Offre une interface API unifiée, prise en charge des instructions préparées et des transactions.
- Avantages : Compatibilité multi-base de données, exécution des requêtes plus sécurisée (prévention des injections SQL) et code plus concis.
Utilisation de MySQL dans le code PHP
Après avoir activé le module MySQL, vous pouvez utiliser MySQLi ou PDO pour les opérations de base de données dans le code PHP. Voici deux exemples simples, l'un utilisant MySQLi et l'autre utilisant PDO.
Code exemple (méthode MySQLi standard)
<?php
// Connexion à la base de données MariaDB
$conn = new mysqli('localhost', 'servbay_user', 'your_password', 'servbay_db');
// Vérifier la connexion
if ($conn->connect_error) {
die("Connexion échouée: " . $conn->connect_error);
}
// Insertion de données
$sql = "INSERT INTO users (name, email, age) VALUES ('ServBay', '[email protected]', 30)";
if ($conn->query($sql) === TRUE) {
echo "Données insérées avec succès";
} else {
echo "Erreur d'insertion de données: " . $conn->error;
}
// Requête de données
$sql = "SELECT * FROM users WHERE name = 'ServBay'";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
echo "Données interrogées: ";
print_r($row);
}
} else {
echo "Aucun résultat trouvé";
}
// Fermer la connexion à la base de données
$conn->close();
?>
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
Code exemple (méthode PDO)
<?php
try {
// Créer une nouvelle instance PDO
$dsn = 'mysql:host=localhost;dbname=servbay_db';
$username = 'servbay_user';
$password = 'your_password';
$options = [PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION];
$pdo = new PDO($dsn, $username, $password, $options);
// Insertion de données
$stmt = $pdo->prepare("INSERT INTO users (name, email, age) VALUES (:name, :email, :age)");
$stmt->execute([
':name' => 'ServBay',
':email' => '[email protected]',
':age' => 30
]);
echo "Données insérées avec succès";
// Requête de données
$stmt = $pdo->prepare("SELECT * FROM users WHERE name = :name");
$stmt->execute([':name' => 'ServBay']);
$data = $stmt->fetchAll(PDO::FETCH_ASSOC);
echo "Données interrogées: ";
print_r($data);
} catch (PDOException $e) {
echo "Erreur: " . $e->getMessage();
}
// Fermer la connexion à la base de données (PDO ferme automatiquement la connexion)
?>
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
Conclusion
ServBay offre un moyen pratique de gérer et d'activer le module MySQL. Grâce à une simple configuration et un redémarrage, les développeurs peuvent rapidement activer le module MySQL dans différentes versions de PHP et utiliser MariaDB pour le stockage et la gestion des données dans les applications PHP. Les hautes performances, la puissance de requêtage et l'intégrité des données de MariaDB en font une solution de base de données incontournable dans le développement Web moderne. Grâce à ServBay et MariaDB, les développeurs peuvent construire des applications Web efficaces et fiables.