使用mysqldump备份一张表,表里大约有85k的数据;
用source还原的时候,有3条数据报错,导致丢了10k的数据;
打开备份的文件,整个文件大约是由20条insert语句构成;
每次都是第2条,第4条,第10条insert语句的第一个value出错;
将出错的数据删除再备份,还原,还是一样的地方出错;
将insert语句复制后放入navicat里可以正常运行;
字符集都是utf8;
不知道怎么解决,有人知道么?
用source还原的时候,有3条数据报错,导致丢了10k的数据;
打开备份的文件,整个文件大约是由20条insert语句构成;
每次都是第2条,第4条,第10条insert语句的第一个value出错;
将出错的数据删除再备份,还原,还是一样的地方出错;
将insert语句复制后放入navicat里可以正常运行;
字符集都是utf8;
不知道怎么解决,有人知道么?
解决方案
10
报什么错?
value出错是字段大小还是类型有错?
value出错是字段大小还是类型有错?
20
能把报错的insert语句贴出来看看吗?
另外,在执行source命令是,可以先设置:
set names gbk;
另外,在执行source命令是,可以先设置:
set names gbk;
10
从报错的信息上来看,应该是 字符集的问题。
要不就直接修改一下 服务器的my.cnf文件里的 服务器级别的character set
10
你把字符集贴出来,还有你的source文件看下内容,里面也有字符集的设置的,你看下
10
基本是字符集的问题。show variablies like “%char%”;看看能否统一为utf8
10
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near “鐢?,””,””,””,”1″,”3″,0,0
“42010619830508841X”,”UF/Uploads/Idcard/3844/201509050″ at li
应该是字符集设置上的问题,
set names “gbk” 后再试。
“42010619830508841X”,”UF/Uploads/Idcard/3844/201509050″ at li
应该是字符集设置上的问题,
set names “gbk” 后再试。
10
字符集问题
show variables like “char%”
set names gbk;
show variables like “char%”
set names gbk;
20
–default-character-set=gbk,然后就能正确还原了;
那你将数据库的字符集设置为gbk不久可以了?
那你将数据库的字符集设置为gbk不久可以了?