Bug #37698 | Backup fails for Myisam drivers if accented characters are used to create tables | ||
---|---|---|---|
Submitted: | 27 Jun 2008 16:02 | Modified: | 27 Jun 2008 17:39 |
Reporter: | Hema Sridharan | Email Updates: | |
Status: | Not a Bug | Impact on me: | |
Category: | MySQL Server: Charsets | Severity: | S3 (Non-critical) |
Version: | mysql-6.0-backup-myisam | OS: | Linux |
Assigned to: | CPU Architecture: | Any |
[27 Jun 2008 16:02]
Hema Sridharan
[27 Jun 2008 16:34]
Susanne Ebrecht
Hema, I have some questions: 1) which terminal encoding do you used? 2) please copy output from: SELECT VARIABLES LIKE 'char%'; 3) also we need output from: SHOW CREATE TABLE and SHOW CREATE DATABASE Important here the charset settings 4) I need output from your user account and from the account of the owner of your mysqld: $ locale -a 5) I think that's all what I need for analysing.:)
[27 Jun 2008 16:40]
Susanne Ebrecht
Hema, sorry, I need output from: $ locale without -a. And that's because I need to know which encoding your file system is using.
[27 Jun 2008 17:03]
Hema Sridharan
mysql> show variables like 'char%'; +--------------------------+--------------------------------------------+ | Variable_name | Value | +--------------------------+--------------------------------------------+ | character_set_client | latin1 | | character_set_connection | latin1 | | character_set_database | latin1 | | character_set_filesystem | binary | | character_set_results | latin1 | | character_set_server | latin1 | | character_set_system | utf8 | | character_sets_dir | /home/hs221732/hemap/share/mysql/charsets/ | +--------------------------+--------------------------------------------+ 8 rows in set (0.00 sec) show create table `Ͻ±Ï½±åå`; +----------+----------------------------------------------------------------------------------------------+ | Table | Create Table | +----------+----------------------------------------------------------------------------------------------+ | Ͻ±Ï½±åå | CREATE TABLE `Ͻ±Ï½±åå` ( `ë` char(20) DEFAULT NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1 | +----------+----------------------------------------------------------------------------------------------+ 1 row in set (0.01 sec) mysql> show create database acc1; +----------+-----------------------------------------------------------------+ | Database | Create Database | +----------+-----------------------------------------------------------------+ | acc1 | CREATE DATABASE `acc1` /*!40100 DEFAULT CHARACTER SET latin1 */ | +----------+-----------------------------------------------------------------+ 1 row in set (0.00 sec) NOTE: I set names to utf8, still I get the same error that Backup Fails. Also this is an issue with Backup for Myisam Native drivers and not with character sets. The same database is backed up properly if it uses Innodb storage engine. I use root user account.
[27 Jun 2008 17:39]
Susanne Ebrecht
Many thanks for reporting a bug report. This is not a bug. You made a horrible encoding mix here. I can't repeat this by using proper encoding handling. Please try the following: YOUR TERMINAL: UTF8 SET NAMES UTF8; CREATE DATABASE acc1; -- if you want you can try this also with: CHARACTER SET UTF8 USE acc1; CREATE TABLE `Ͻ±Ï½±åå`(`ë` char(20)); BACKUP DATABASE acc1 to 'acc2.bak'; then just for fun try: DROP DATABASE acc1; set your terminal to ISO-8859-15 SET NAMES LATIN1; CREATE DATABASE acc1; USE acc1; CREATE TABLE `Ͻ±Ï½±åå`(`ë` char(20)); BACKUP DATABASE acc1 to 'acc3.bak'; You will see ... also in proper latin environment it will work.