Tiny Tiny RSS Purge old entries

Purger manuellement les articles dans tt-rss pour réduire la taille de la base de données:

Supprimer les articles vieux de 15 jours (changer “INTERVAL 14 DAY” si besoin)

DELETE FROM ttrss_user_entries USING ttrss_entries, ttrss_user_entries WHERE id = ref_id AND date_entered < DATE_SUB(NOW(), INTERVAL 14 DAY) AND marked = FALSE;

DELETE FROM ttrss_entries WHERE (SELECT COUNT(int_id) FROM ttrss_user_entries WHERE ref_id = id) = 0;

Marquer tout les articles comme lu

UPDATE `ttrss_user_entries` SET `unread` = 0;

Remettre à zéro les compteurs des unreads:

DELETE FROM ttrss_cat_counters_cache;
DELETE FROM ttrss_counters_cache;

Efficace par contre d’anciens articles peuvent réapparaitre comme non-lu s’ils existent encore dans le flux (pour les flux peu mis à jour)

Source: http//tt-rss.org/forum/viewtopic.php?f=1&t=1081&p=4813

Download tt-rss pour vos flux: http://tt-rss.org/redmine/projects/tt-rss/wiki

Format date francais, sortir les mois en toutes lettres avec mysql

La bonne solution

Tout simplement, en deux rêquetes et avec la fonction DATE_FORMAT()

SET lc_time_names = 'fr_FR';
SELECT DATE_FORMAT(`date`, '%d %M %Y') FROM `t_dates`;

Les options: http://dev.mysql.com/doc/refman/5.0/en/date-and-time-functions.html#function_date-format

La feinte ou comment tout faire soi-même

Faire une table des mois français

CREATE TABLE IF NOT EXISTS `rw_mois` (
  `mois_id` int(11) NOT NULL,
  `mois_libelle` varchar(255) NOT NULL,
  PRIMARY KEY (`mois_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

INSERT INTO `rw_mois` (`mois_id`, `mois_libelle`) VALUES
(1, 'Janvier'),
(2, 'Février'),
(3, 'Mars'),
(4, 'Avril'),
(5, 'Mai'),
(6, 'Juin'),
(7, 'Juillet'),
(8, 'Août'),
(9, 'Septembre'),
(10, 'Octobre'),
(11, 'Novembre'),
(12, 'Décembre');

Requête

SELECT DISTINCT `date`, CONCAT(`mois_libelle`, ' ',YEAR(`date`))
FROM `t_dates`
LEFT JOIN `t_mois` ON MONTH(`t_dates`.`date`) = `t_mois`.`mois_id`;

Résultat:

date | CONCAT(`mois_libelle`, ' ',YEAR(`date`))
2011-12-01 | Décembre 2011
2011-11-02 | Novembre 2011
2011-10-01 | Octobre 2011
2011-09-01 | Septembre 2011
2011-08-01 | Août 2011
2011-07-01 | Juillet 2011
2011-06-01 | Juin 2011
2011-05-02 | Mai 2011
2011-04-01 | Avril 2011
2011-03-01 | Mars 2011
2011-02-28 | Février 2011
2011-01-03 | Janvier 2011

Script bash pour exporter vos bases mysql dans des fichiers séparés

Avec la commande mysqldump, il est possible d’exporter toutes ses bases mysql en une seule ligne, seul soucis les bases de données sont compresser dans un seul et unique fichier .gz, c’est pas très pratique pour retrouver la base à restaurer en cas de problème.

Voici donc comment avoir un fichier par database :

for database in `mysql -N -u $DBUSER --password=$DBPASSWD -e 'SHOW DATABASES;' | cat`; do
 if [ $database != "information_schema" ]; then
  mysqldump --databases $database -u $DBUSER --password=$DBPASSWD --lock-tables | gzip -c > /home/alexis/backup/mysql/`date +%F`-$database.sql.gz
 fi
done