planetePHP.fr
De geek à directeur technique De geek à directeur technique 2017-07-17T14:33:55+02:00

Utilisation de MySQLDump

Il existe plusieurs moyens pour faire des sauvegardes de bases de données. Je ne vais pas parler ici de l’utilisation des logs binaires ni de la mise en place de réplication pour effectuer les sauvegardes sur un serveur esclave ; je vais me concentrer sur l’outil principal de sauvegarde lorsqu’on utilise MySQL : mysqldump

Je pense que tout le monde (en tout cas, une majorité des gens qui lisent cet article) savent à quoi sert cet outil. Il sert à écrire un fichier contenant toutes les directives SQL permettant de recréer une base de données à l’identique de l’état dans lequel elle se trouvait au moment de la sauvegarde.
Je ne vais pas m’étaler sur les aspects théoriques, mais plutôt vous expliquer comment je l’utilise.

Je me sert de mysqldump depuis une bonne quinzaine d’années, il me semble. À l’époque, l’utilisation par défaut (sans passer d’option particulière en ligne de commande) était assez pénible, surtout quand on voulait restaurer les données ; le code SQL généré contenait une commande INSERT pour chaque ligne de chaque table. Quand on injectait le fichier, le serveur mettait un temps infini pour exécuter toutes ces insertions et recalculer les index au fur et à mesure.
Ma vie a changé quand j’ai découvert l’option “–extended-insert”, qui regroupe plusieurs insertions dans une seule commande INSERT.

Les options à utiliser

Aujourd’hui, l’option “–opt” est activée par défaut sur les versions modernes de mysqldump. Cette option se contente d’activer par défaut les options suivantes :

  • –add-drop-table : Ajoute des directives pour effacer les tables avant de les recréer. Utile pour réinjecter un fichier en écrasant les anciennes versions des tables qui pourraient déjà traîner dans la base.
  • –add-locks : Ajoute des commandes pour verrouiller les tables pendant leur écriture ; il est alors impossible de lire ou d’écrire dedans en même temps que les données sont injectées, ce qui évite de ralentir l’injection.
  • –create-options : Ajoute les commandes de création des tables. On ne saurait s’en passer.
  • –disable-keys : Cette option accélère l’injection des données en faisant en sorte que les index sont créés qu’une fois que toutes les lignes sont injectées. Sauf que cela ne fonctionne qu’avec les index non-unique des tables MyISAM. Et comme vous êtes censés utiliser le moteur InnoDB à la place du MyISAM, on s’en moque un peu…
  • –extended-insert : Je viens d’en parler, c’est juste essentiel.

la suite...

AFUP AFUP 2017-07-17T00:00:00+02:00

Le programme complet du Forum PHP 2017 est publié

Après une première salve de confirmations publiée il y a deux semaines, le programme complet vient d’être dévoilé.

Et parmi les 12 nouveaux speakers retenus pour cette deuxième salve de confirmations, notons particulièrement la présence de Sophie Beaupuis, venue présenter “Le langage objet passé, présent, futur”, et Larry Garfield qui proposera “Software Management Lessons from the 1960s”. Autre speaker de renom, Jean-François Lépine, fidèle de nos événements, sera des nôtres pour “Jenkins industrialisé : intégration continue des outils d'intégration continue (et oui!)”. De jeunes speakers se lanceront également, accompagnés par les mentors de l’AFUP qui aident ces nouveaux venus, de la soumission du talk jusqu’au jour J : ainsi Kevin Nadin viendra présenter “La génération de dates en PHP”, grande première pour lui.

Trois ateliers permettront également aux visiteurs d’apprendre en petit groupe, sur leur propre machine, durant des formats plus longs de 3h : ainsi Alexandre Balmès proposera “Principes et patterns du DDD”, Matthieu Napoli présentera “Un framework basé sur des middlewares, ça donne quoi ?", et après son succès au PHP Tour à Nantes, l’atelier “Des Legos, des bonnes pratiques et du fun" sera de retour, cette fois animé par Antoine Lelaisant et Pierre Plazanet.

Découvrez l'ensemble du programme dès maintenant sur notre site, et prenez votre place pour le Forum PHP 2017, 26 et 27 octobre, Paris !

Nicolas Hachet Nicolas Hachet 2017-06-30T15:31:49+02:00

Projet informatique : qu’est-ce que la maintenance préventive ?

En informatique, on parle souvent de maintenance corrective (ou MCO pour Maintien en Conditions Opérationnelles), mais beaucoup plus rarement de la notion de maintenance préventive. Coincée entre la MCO et l’exploitation, la maintenance préventive a toute sa place dans la vie d’une applicationPHP ou autre. Petite explication de ce que ça peut donner dans le Continue Reading

Cet article Projet informatique : qu’est-ce que la maintenance préventive ? est apparu en premier sur Blog PHP de Nicolas Hachet.

AFUP AFUP 2017-06-30T00:00:00+02:00

Il est frais mon programme, il est frais !

Ainsi, nous serons ravis d'avoir parmi nous Anna Filina, qui nous présentera "Réécriture de code vieux de 17 ans", Nicolas Grekas pour ""Les process qualité - le cas de Symfony", ou encore François Zaninotto, fidèle des événements AFUP, qui vous proposera "Serverless, le futur de l'hébergement ?".

Parmi les autres confirmations, notons également la venue d'Audrey Neveu pour "Le Streaming d'API : pourquoi ? comment ?", de Nastasia Saby et Fabien de St Pern pour "L'AB testing chez M6 Web", Kevin Dunglas pour "Développer plus rapidement avec Symfony 4" ou encore de James Titcumb pour "Climbing the Abstract Syntax Tree". Découvrez la vingtaine de speakers d'ores et déjà confirmés sur notre site !

Et surtout, restez à l'écoute : nous dévoilerons l'intégralité du programme dans les prochains jours. La formule gagnante du Forum PHP ne changera pas : talks de 40 ou 20 minutes, conférences techniques et retours d'expérience, ateliers de 3h en petit comité, lightning-talks, démonstrations... Et bien sûr de grands moments de convivialité qui font aussi la réputation des events AFUP !

On vous attend les 26 et 27 octobre prochains, au Marriott Rive Gauche, prenez d'ores et déjà votre billet. 

Remi Collet Remi Collet 2017-06-28T07:05:06+02:00

Paquets PHP suplémentaires pour RHSCL

Point de situation sur les dépôts officiels fournissant les Software Collections de PHP pour les utilisateurs de RHEL et de CentOS.

Depuis la publication de RHSCL 2.3, les utilisateurs de RHEL peuvent installer PHP 5.6 ou PHP 7.0 sans altérer leur système en utilisant le canal approprié.

Ces paquets sont aussi disponibles pour les utilisateurs de CentOS dans les dépôts SCL, géré par le groupe d'intérêt SCLo (SCLo SIG) :

# yum --enablerepo=extras install centos-release-scl

Le project CentOS fournit donc l'infrastructure et l'hébergement de 4 dépôts:

  • centos-sclo-rh : fournissant le même contenu que RHSCL
  • centos-sclo-sclo : fournissant des collections supplémentaires maintenues par la communauté
  • centos-sclo-rh-testing : fournissant les paquets à tester (version beta de RHSCL)
  • centos-scl-sclo-testing : fournissant les paquets à tester maintenus par la communauté

Les utilisateurs de RHSCL souhaitant utiliser les paquets supplémentaires peuvent configurer le dépôt centos-sclo-sclo en utilisant le dépôt Copr centos-release-scl :

# cd /etc/yum.repos.d/
# wget https://copr.fedorainfracloud.org/coprs/rhscl/centos-release-scl/repo/epel-7/rhscl-centos-release-scl-epel-7.repo
# yum install centos-release-scl

Si vous êtes intéressés par ces paquets, je vous recommande de suivre la liste de diffusion sclorg@redhat.com ou sont discutés les éventuels problèmes et annoncées les évolutions. Merci d'utiliser cette liste pour vos retours (paquets en test) et toute autre demande. Les nouveaux contributeurs sont aussi les bienvenus.

Information et documentation sur https://www.softwarecollections.org/.

Le développement est suivi sur le git de sclorg-distgit.

Pour information, voici les paquets supplémentaires disponibles dans centos-sclo-sclo le 23 février 2017:

#   Paquet Version Distribution Remarques
 

la suite...

Kévin Dunglas (Lapin Blanc) Kévin Dunglas (Lapin Blanc) 2017-06-23T11:43:35+02:00

[Slides] Dive Into Symfony 4

Here are the slides I presented yesterday during the Lille’s Lille’s Symfony meetup:

Symfony 4 is all about making the developer life easier. You liked using SF for large and robust apps, you’ll love using it for your next MVP, prototype or small project.

This presentation was followed by a live coding session (not recorded, unfortunately).

AFUP AFUP 2017-06-23T00:00:00+02:00

Visionnez les talks du PHP Tour 2017 que vous avez manqués

Regardez les conférences que vous avez manquées, ou revoyez celles qui vous ont particulièrement plu ! Vous n'étiez pas des nôtres ? Après visionnage de ces vidéos, on parie que vous aurez envie de nous rejoindre pour notre prochain événement, le Forum PHP 2017 ! 

Toutes les conférences du PHP Tour 2017, ainsi que celles de nos événements précédents, sont accessibles sur notre page "Conférences".

Cette année encore la captation et le montage ont été assurée par notre partenaire dFUSION, qui se charge avec talent de cette mission. Merci à eux pour le boulot, et pour la rapidité de livraison ! 

Remi Collet Remi Collet 2017-06-22T11:00:16+02:00

Microsoft SQL Server depuis PHP

Voici un petit récapitulatif des différents moyens d'utiliser une base de données Microsoft SQL Server depuis PHP, sous Linux.

L'ensemble des tests ont été réalisés sous Fedora 23 mais devrait fonctionner avec RHEL ou CentOS version 7.

Extensions testées:

 

1. Utilisation de PDO, ODBC et FreeTDS

Composants nécessaires:

  • Bibliothèque freetds et extension pdo_odbc
  • PHP version 5 ou 7
  • Paquets RPM: freetds (EPEL), unixODBC, php-pdo, php-odbc

Configuration du pilote ODBC

Le fichier /etc/odbcinst.ini doit contenir la déclaration du pilote:

[FreeTDS]
Description=FreeTDS version 0.95
Driver=/usr/lib64/libtdsodbc.so.0.0.0

Configuration de la source de données

Le fichier /etc/odbc.ini (système) ou le fichier ~/.odbc.ini (utilisateur) doit contenir la déclaration du serveur utilisé

[sqlsrv_freetds]
Driver=FreeTDS
Description=SQL via FreeTds
Server=sqlserver.domain.tld
Port=1433

Vérification de la connexion en ligne de commande

$ isql sqlsrv_freetds user secret
SQL> SELECT @@version
Microsoft SQL Server vNext (CTP1) - 14.0.1.246 (X64)
    Nov  1 2016 23:24:39
    Copyright (c) Microsoft Corporation
    on Linux (Red Hat Enterprise Linux)
SQLRowCount returns 1
1 rows fetched
SQL> quit

Connexion depuis PHP

$ php -r '
echo "+ Connection\n";
$pdo = new PDO("odbc:sqlsrv_freetds", "user", "secret");
echo "+ Query\n";
$query = $pdo->query("SELECT @@version");
if ($query) {
    echo "+ Result\n";
    $row = $query->fetch(PDO::FETCH_NUM);
    if ($row) {
        print_r($row);
    }
}
'
+ Connection
+ Query
+ Result
Array
(
    [0] => Microsoft SQL Server vNext (CTP1) - 14.0.1.

la suite...

AFUP AFUP 2017-06-21T00:00:00+02:00

Carton plein pour l'appel à conférences

Afin de pouvoir dévoiler un programme au début de l'été, l'équipe AFUP s'était lancé un pari : un appel à conférences express, d'une durée d'un mois maxi. Le risque de ne pas avoir suffisamment de sujets soumis pour établir un programme existait, mais autant le dire, il a payé !

Les speakers du monde entier ont relevé le défi : une centaine de conférencier.e.s ont soumis des sujets, et c'est près de 190 sujets qu'il nous faut maintenant éplucher pour établir le programme du Forum PHP 2017.

L'équipe est déjà en train de plancher dessus, et dévoilera la majorité du programme le 3 juillet. En attendant, prenez votre place au tarif Early Bird : passée cette date, les places passeront au tarif de croisière, de 175€ à 275€. 

AFUP AFUP 2017-06-14T00:00:00+02:00

La billetterie du Forum PHP est ouverte... et elle évolue !

Mais la hausse des coûts généraux nous oblige à changer quelques lignes de fonctionnement de notre billetterie…
Après étude des nouvelles habitudes de réservations, nos événements annonçant désormais sold-out de plus en plus tôt, retrouvez désormais un calendrier en 3 temps :

  • Une période “Early Bird”, où vous faites confiance les yeux fermés à l’AFUP : réservez votre place sans connaître le programme ! Le tarif ne bouge pas : 150 euros les deux jours pour les membres AFUP, 250 euros les deux jours pour le plein tarif. 
  • Une période “tarif de croisière” : après la publication du programme, les tarifs augmentent de 25 euros pour tous types de visiteurs. Le tarif “membre AFUP 2 jours” passe à 175 euros, et le plein tarif “deux jours” à 275 euros. 
  • 6 semaines avant le Forum PHP 2017, on passe en tarif “Late Bird”: avis aux retardataires, les tarifs augmentent encore de 50 euros ! Le tarif “membre AFUP 2 jours” est fixé à 225 euros, et le plein tarif “deux jours” passe à 325 euros. 

Ces augmentations nous permettront de continuer à assurer le niveau de qualité d’accueil de nos visiteurs face à des coûts croissants, sans pour autant -nous l’espérons- toucher de trop près au budget des développeurs et des entreprises.
Profitez des meilleurs tarifs, et réservez au plus vite votre place pour les 26 et 27 octobre, à Paris.


Flux ATOM

Flux RSS
Twitter

Les sources

Ajouter une source ?

Envoyez un email avec l'URL du site et du flux à planetephpfr AT afup POINT org

Infos