WordPress : résoudre le problème de la table wp_options à qui manquent une colonne Unique et une Primary Key

WordPress : résoudre le problème de la table wp_options à qui manquent une colonne Unique et une Primary Key photo

Chez Codeable, j'ai travaillé sur l'optimisation d'un site e-commerce propulsé par WooCommerce récemment, qui connaissait quelques problèmes de lenteur. Sous phpMyAdmin, on trouvait également cette erreur: Si vous obtenez cette erreur, c'est que la structure de la table wp_options n'est pas à jour donc nous la vérifions avec wp-cli: Le résultat obtenu nous montre qu'il n'y a pas de clé primaire (primary key) qui est normalement option_id et qu'il n'y a pas de restriction unique imposée sur la colonne option_name: […]

Lire la suite »

MariaDB ne veut plus redémarrer : quelques solutions

Serveur dédié : installation de MariaDB 10.3 photo

Sur le serveur chinois que j'ai monté pour un de mes clients sur Codeable, le site a commencé à afficher des erreurs étranges : erreur 502 pour nginx sur certaines pages et des nombres étranges en lieu et place des données de la base de données. Après un redémarrage des services PHP, nginx et mysql, je constate que MariaDB veut bien s'arrêter mais ne veut plus de lancer. Voici ce que donne: Résultat: Bon, chou blanc. Cela ne nous donne […]

Lire la suite »

Désactiver les binary logs sous MySQL 8

Désactiver les binary logs sous MySQL 8 photo

J'ai récemment monté un nouveau serveur qui utilise MySQL 8 et après quelques jours d'utilisation, je me suis rendu compte que l'espace disque avait considérablement augmenté. La cause ? Une multitude de fichiers logs binaires dans le répertoire d'exécution de MySQL 8 : il y en avait pour plus de 260 Go ! Les fichiers logs binaires enregistrent toutes les requêtes qui ont été effectuées par le serveur de bases de données. Inutile de dire qu'il est assez improbable que […]

Lire la suite »

Ubuntu : supprimer les vieux kernels et libérer de la place sur la partition /boot

Linux : supprimer les vieux kernels et libérer de la place sur la partition /boot photo

Voici un tutoriel qui vous permet de supprimer les kernels linux installés sur votre serveur/machine qui ne sont pas actuellement utilisés. Cela est utile pour faire un peu de ménage sur la partition /boot, idéalement avant qu'elle ne soit complètement saturée. Sinon, je vous donne aussi l'astuce pour faire le ménage manuellement et retrouver APT complètement opérationnel. Ce tutoriel a été testé sous Ubuntu Server 18.04 LTS, il est complètement transférable sous Ubuntu et Debian. Cas de figure 1: /boot […]

Lire la suite »

MySQL : résoudre le message "Warning: Using a password on the command line interface can be insecure."

MySQL : résoudre le message "Warning: Using a password on the command line interface can be insecure." photo

J'ai récemment écrit un petit script bash qui me permet de sauvegarder rapidement toutes les bases de données d'un serveur. Le script est lancé par une tâche cron automatiquement, tous les jours. Si l'on passe l'utilisateur et le mot de passe SQL dans la requête, avec mysql ou mysqldump, vous obtiendrez très certainement le message d'avertissement suivant: Et pour cause : cela veut dire que n'importe qui ayant accès au serveur pourra voir, dans les logs ou avec un simple […]

Lire la suite »

Résoudre l'erreur "/var/cache/debconf/config.dat is locked by another process: Resource temporarily unavailable"

Résoudre l'erreur "/var/cache/debconf/config.dat is locked by another process: Resource temporarily unavailable" photo

Lors d'une mise à jour APT, il arrive qu'un installeur vous demande s'il faut écraser ou non un des fichiers de configuration existant. C'est le cas notamment de certaines versions de PHP qui requièrent une mise à jour du fichier php.ini Si vous êtes derrière votre terminal, pas de problème. Si par contre, vous ne prêtez pas attention à votre terminal, pensant que tout s'est mis à jour, ou si votre connexion SSH est rompue lors de l'installation, vous risquez […]

Lire la suite »

Serveur dédié : résoudre l'erreur 'Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)' — Missing /var/run/mysqld/mysqld.sock

Serveur dédié : résoudre l'erreur  'Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)' — Missing /var/run/mysqld/mysqld.sock photo

Après mise à jour du serveur SQL, il est possible d'obtenir cette erreur au redémarrage physique (boot) du serveur : Il se trouve que systemd lance bien le service mysql qui est donc démarré mais ne semble pas pouvoir être en mesure de créer son fichier sock. Il va donc falloir l'aider: On crée un nouveau fichier pour systemd: et on y ajoute ce code qui va permettre de chmoder et chowner le répertoire /var/run/mysqld pour l'utilisateur mysql: Cela règle […]

Lire la suite »

Cron : résoudre l'erreur logrotate_script: 3: [: /var/run/mysqld/mysqld.pid: unexpected operator

Cron : résoudre l'erreur logrotate_script: 3: [: /var/run/mysqld/mysqld.pid: unexpected operator photo

Depuis que j'ai déplacé les bases de données SQL sur une autre partition, logrotate semble avoir quelques soucis avec l'archivage des logs de MariaDB. Voici le message d'erreur complet : C'est en fait un problème de regex connu et la solution est très simple. 1. On édite le fichier /etc/logrotate.d/mysql-server: 2. on recherche la ligne avec la regex de grep: 3. on ajoute m1 aux arguments de grep, ce qui nous donne: Sauvegardez le fichier. Vous ne recevrez plus de […]

Lire la suite »

Serveur dédié : installation de MariaDB 10.3

Serveur dédié : installation de MariaDB 10.3 photo

Debian Stretch possède MariaDB 10.1 mais au vu des améliorations récentes de MariaDB, il est intéressant de passer à la version 10.3 pour des raisons de performance. Ajout du nouveau dépôt On installe les dépendances et on ajoute le dépôt de MariaDB 10.3 à notre fichier de configuration apt, ainsi que la clé du dépôt: Mise à jour de MariaDB Une fois que la clé du dépôt est ajoutée au trousseau, on installe la nouvelle mouture de MariaDB: Notez que […]

Lire la suite »

Serveur dédié : déplacer les bases de données MariaDB ou MySQL sur une autre partition sous Debian/Ubuntu

MariaDB : changer le répertoire des bases de données sous Debian photo

J'ai récemment installé un plugin qui met en cache les requêtes API Amazon mais dont la table SQL gonfle énormément - plus de 5 Go à l'heure où j'écris ces lignes. Le problème, c'est que cela remplit la partition racine du serveur, qui est utilisée par défaut par MariaDB pour stocker les fichiers des bases de données. Lorsque j'ai créé ce serveur, j'ai utilisé la configuration par défault d'OVH, ce qui est une erreur grossière : la partition racine (/) […]

Lire la suite »

Débloquer le démarrage de Meld sous MacOSX Mojave

Débloquer le démarrage de Meld sous MacOSX Mojave photo

Depuis la mise à jour de MacOSX Mojave, il est devenu impossible de lancer Meld, l'application multi-plateforme dont je me sers pour comparer plusieurs versions de fichiers afin de visualiser les différences dans du texte ou code. L'application se lance mais ne présente pas la fenêtre habituelle qui permet de sélectionner les options de comparaison. Le menu apparait bien en haut de l'écran mais reste inutilisable. On peut débloquer la situation très facilement - ouvrez une fenêtre de terminal et […]

Lire la suite »

Linux : désactiver les emails de notification d'une tâche cron

Linux : désactiver les emails de notification d'une tâche cron photo

La plupart des tâches cron sont exécutées à un moment où elles n'empiètent pas sur les ressources du serveur (i.e. la nuit). Or crontab envoie un email récapitulatif à chaque fois qu'une tâche est complétée, ce qui peut vite devenir pénible à gérer. Heureusement, il existe plusieurs manières d'empêcher de recevoir ces emails de notification de tâches cron. 1. Méthode nucléaire : rendre la variable MAILTO nulle Vous pouvez éditer le fichier /etc/crontab et rendre la variable MAILTO nulle, comme […]

Lire la suite »

Pin It on Pinterest

Spelling error report

The following text will be sent to our editors: