[MYSQL] Pb migration base de données latin1 (résolu)
Publié : dim. 15 mai 2011, 13:46
Bonjour,
j'ai un serveur Mysql sur Debian avec une base de donnée en latin1 ( encodage imposée par l'application). Je souhaites faire passer cette base de données sur un serveur Mysql sous Archlinux. Cepandant, après les tests, il semble qu'il y ait un problème d'encodage au niveau des données
Voici la configuration du serveur Debian:
et celle du serveur Archlinux:
J'ai sauvegardé ma base avec la commande suivante:
J'ai déplacé ce fichier via scp et tester son encodage avant utilisation (file -i)
Sur le serveur mysql sous Archlinux j'ai créé une base de données avec la commande suivante:
Puis j'ai rentré les données avec la commande:
Quand je teste l'affichage des pages web de l'application php, les données issues de la base de données ne s'affichent pas correctement. Par exemple les "é" sont remplacés par des "é".
Dans la balise head, le codage des pages web est en ISO-8859-1. Si je force l'encodage UTF-8 sur mon navigateur, les caractères s'affichent bien.
Donc ma question est comment faire pour que le serveur mysql puisse gérer ma base en IOS-8859-1. Est ce qu'il va falloir que je passe le serveur mysql en latin1 par défaut et si oui qu'elles sont les options dans le my.cnf qui vont me le permettre ?(j'ai regardé sur internet mais pas d'info liés au passage d'un serveur mysql en UTF-8 vers latin1)
j'ai un serveur Mysql sur Debian avec une base de donnée en latin1 ( encodage imposée par l'application). Je souhaites faire passer cette base de données sur un serveur Mysql sous Archlinux. Cepandant, après les tests, il semble qu'il y ait un problème d'encodage au niveau des données
Voici la configuration du serveur Debian:
Code : Tout sélectionner
Server characterset: latin1
Db characterset: latin1
Client characterset: latin1
Conn. characterset: latin1
Code : Tout sélectionner
Server characterset: utf8
Db characterset: utf8
Client characterset: utf8
Conn. characterset: utf8
Code : Tout sélectionner
mysqldump -u root -p --default-character-set=latin1 > bkp.sql
Sur le serveur mysql sous Archlinux j'ai créé une base de données avec la commande suivante:
Code : Tout sélectionner
CREATE DATABASE ma_base DEFAULT CHARACTER SET "latin1" COLLATE latin_swedish_ci;
Code : Tout sélectionner
mysql -u root -p ma_base --default-character-set=latin1 < bkp.sql
Dans la balise head, le codage des pages web est en ISO-8859-1. Si je force l'encodage UTF-8 sur mon navigateur, les caractères s'affichent bien.
Donc ma question est comment faire pour que le serveur mysql puisse gérer ma base en IOS-8859-1. Est ce qu'il va falloir que je passe le serveur mysql en latin1 par défaut et si oui qu'elles sont les options dans le my.cnf qui vont me le permettre ?(j'ai regardé sur internet mais pas d'info liés au passage d'un serveur mysql en UTF-8 vers latin1)