Convertir toutes les tables MyISAM en InnoDB

Pour toutes les tables de toutes les bases “Version” séquentiel la conversion de la table suivante sera faite que si la précédente est fini (ignorer les erreurs pour les tables déjà en InnoDB 😉 ) #!/usr/bin/env bash for db in `mysql --batch --skip-column-names -e "show databases;" | egrep -v "mysql|information_schema|performance_schema|lost"`; do echo "# "$db for table in `echo "show tables" | mysql --batch --skip-column-names $db`; do echo "-- "$table mysql $db -e "ALTER TABLE $table ENGINE = InnoDB;" done done " Version " Bourrin #! [Lire]

Extraire les requêtes SQL depuis un binlog au format RAW

Le format des log binaires RAW a un gros inconvenant, lorsque vous voulez rejouer des requêtes a partir des log binaires, l’extraction de celle ci est plus complexe. #!/bin/sh LIST=$(ls -1 /var/log/mysql/mysql-bin.* | grep -v index | awk -F "." '{print $2}') DIRDST="/mnt/pad/" DIRSRC="/var/log/mysql" DATABASE="votrebdd" echo -n > $DIRDST"/"result.txt for i in $LIST; do echo -ne $i mysqlbinlog --database=$DATABASE --base64-output=DECODE-ROWS --verbose --start-datetime="2012-01-06 00:00:00" --stop-datetime="2012-01-06 13:00:00" $DIRSRC"/mysql-bin."$i | grep "^###" $DIRDST"/"result.txt echo -ne "\tdone\r\n" done Supprimez ou modifiez les paramètres suivant en fonction de vos besoin : [Lire]

Procéder a une mise a jour de PostgreSQL

Préparation Vérifier l’encodage des bases : su - postgres psql -l Liste des bases de données Nom | Propriétaire | Encodage -----------+--------------+---------- bdd1 | user1 | UTF8 {...} (9 lignes) Migration Dumper l’intégralité des données pg_dumpall > outputfile Initialiser le nouvel emplacement en UTF8 /usr/local/pgsql/bin/initdb --locale=UTF8 -D /usr/local/pgsql/data Le dossier doit être comme cela : drwx------ 5 postgres postgres 4096 4 nov. 15:25 base drwx------ 2 postgres postgres 4096 4 nov. [Lire]

Envoyé les notifications Munin par mail, au Syslog, a un compte Twitter

/etc/munin/munin.conf Configuration des commandes d’envois : contact.mail1.command |mail -s "Munin-notification for ${var:group} :: ${var:host}" [email protected] contact.mail2.command |mail -s "Munin-notification for ${var:group} :: ${var:host}" [email protected] Pour envoyé les notifications a chaque check au contact " mail1 “: contact.mail1.always_send warning critical Envoyé une alerte sur un compte Twitter Script send2twitter.sh #!/bin/sh DATASTDIN=$(tr '[:upper:]' '[:lower:]' < /dev/stdin) RESULT=`curl -s --basic -u votrelogin:votremotdepasse -d status="$DATASTDIN" http://twitter.com/statuses/update.json` Le script send2twitter.sh doit avoir les droits d’exécution avec le compte utilisé par Munin. [Lire]

Debian stable ou testing ?

Une fois votre Debian installé, vous avez la possibilité d’avoir des paquets un peut plus a jour avec la version testing ( en test ) mais, avec la possibilité d’avoir quelque faille ou bug dans votre système Tous ce passe dans le fichier “/etc/apt/sources.list” Pour une Debian testing : deb http://ftp.fr.debian.org/debian/ testing main deb-src http://ftp.fr.debian.org/debian/ testing main deb http://security.debian.org/ stable/updates main Pour une Debian stable : deb http://ftp.fr.debian.org/debian/ stable main deb-src http://ftp. [Lire]

Compiler un .deb pour PECL uploadprogress

Installer les packages nécessaires Packages pour pouvoir compiler le module php5 : apt-get update apt-get install php5-dev dh-make-php Télécharger uploadprogress via PECL On récupère les sources d’uploadprogress . mkdir pecl/ cd pecl/ pecl download uploadprogress Construire le paquetage Debian pour uploadprogress On initialise les variables pour les informations ‘maintener’ du paquetage avant de lancer dh-make-php. export DEBEMAIL=your@email export DEBFULLNAME='Your Name' On construit notre *.deb de la manière suivante : dh-make-pecl --only 5 uploadprogress-1. [Lire]

Mise a jour de la release FreeBSD

uname -a
FreeBSD mabsd 7.0-RELEASE FreeBSD 7.0-RELEASE #0

La release 7.0 est installée

freebsd-update upgrade -r 7.2-RELEASE

Installation de la release 7.2 puis reboot

freebsd-update install
shutdown -r now

On finalise l’installation pour reboot

freebsd-update install
shutdown -r now

On vérifie que la mise a jour est finie

uname -a
FreeBSD mabsd 7.2-RELEASE FreeBSD 7.2-RELEASE #0

La mise a jour est finie

Compiler Apache2 et PHP5

Les dépendances

Paquet dev installé pour satisfaire les dépendances :

libstdc++-devel
zlib-devel
e2fsprogs-devel
libpng-devel
cyrus-sasl
db4-devel
httpd-devel
glibc-devel
keyutils-libs
libselinux-devel
libidn-devel
libxml2-devel
ncurses-devel
krb5-devel
openssl-devel
curl-devel
apr-devel
apr-util
libsepol-devel
freetype-devel
libjpeg-devel
openldap-devel
expat-devel

Compiler

Apache

Compiler et installer Apache

./configure -prefix=/usr/local/httpd \
--enable-so \
--enable-suexec \
--enable-rewrite=static \
--enable-proxy=static \
--enable-ssl=static \
--enable-headers=static \
--enable-deflate=static \
--enable-status=static && make && make install

PHP

Compiler et installer PHP

./configure -with-apxs2=/usr/local/httpd/bin/apxs \
--disable-short-tags \
--enable-mysql \
--enable-memory-limit \
--enable-calendar \
--enable-magic-quotes \
--with-openssl \
--with-libxml-dir \
--with-xmlrpc \
--with-zlib \
--enable-calendar \
--with-curl \
--enable-ftp \
--with-gd \
--with-jpeg-dir \
--with-png-dir \
--with-freetype-dir \
--with-iconv \
--with-gettext \
--with-ldap \
--enable-mbstring \
--enable-zip \
--with-pear \
--enable-bcmath \
--enable-sigchild \
--enable-gd-native-ttf \
--enable-pcntl && make && sudo make install