请问 mysql数据库导入的问题

gdutqiang 发布于 2016/07/04 16:49
阅读 172
收藏 0
请问,在网上下载了一套php代码里边有一个  abc.sql的文件。
在win8系统,当在dos里边用 source 命令 把 abc.sql导入到mysql的data目录下的abc数据库时候,虽然最终还是导入了,但是在这个过程中,会看到一些错误信息的,这样的话,我怀疑就不能完全正确的把 abc.sql导入进数据库了。如图1所示,

麻烦知道怎么处理的朋友帮忙回复,谢谢啦


                                                      图1

ps: 这个abc.sql是用Navicat导出的,因为用notepad打开这个abc.sql文件的时候,可以看到以下信息: Navicat MySQL Data Transfer。   难到是这个原因吗? 

加载中
0
逝水fox
逝水fox

导出客户端(无论是mysql还是navicat)连接设置,原服务器字符集,目标服务器字符集(包括表和字段的字符集)需要保持完全一致。

另外mysql命令行检查 show variables like 'character_set_%'; 字符集是否和你导出的时候Navicat一致。你可以考虑用navicat来导入(相同字符集设置)或者mysql命令加上--default- character-set=utf8,如果原数据是用的utf8的话。

g
gdutqiang
回复 @逝水fox :另外 在mysql的安装目录下是有my.sql的文件的
g
gdutqiang
回复 @逝水fox : 我用 notepad打开 my.sql 这个文件查看到 如下信息: File Encoding : 65001 ,然后我用 Navicat 导入这个文件并配置 为 65001,这样就可以正确导入的了。 所以我想请问下 比如说 source这个命令 具体怎么写 可以 带 65001 这个配置的呢? 我想尝试下。麻烦再帮忙回复,谢谢啦
g
gdutqiang
回复 @逝水fox 谢谢您的回复。 我是 在 运行里边 输入 cmd--》然后 进dos后,进入 mysql的安装目录下的 bin目录,然后输入 D:\wamp0617\mysql\bin>mysql -u root -p --default-character-set=utf8 my < my.s l系统找不到指定的文件
逝水fox
逝水fox
回复 @gdutqiang : 控制台下,用mysql命令(在MySQL安装目录的,不要用开始菜单里面的那个)进入mysql命令行的时候加--default-character-set=utf8。(如果文件是GBK的那就用GBK)。其实直接mysql -u root -p --default-character-set=utf8 yourdb < my.sql 就可以了,不需要用source命令
逝水fox
逝水fox
回复 @gdutqiang : notepad++等编辑器右下角可以判断源文件编码,你可以用这个检查导出的文件是什么编码,然后大致看一下里面的中文内容显示是否正常(特别是报出错的那几行SQL)。
下一页
0
Tuesday
Tuesday
换sqlyog.. 
0
r
read678
有可能导出的sql是linux下导出的,这时候windows下navicat导不进去,我遇到过好几次,我是这样处理的,先用linux虚拟机把数据导进去,然后再用navicat连虚拟机,再导出,再用这个导入windows下的数据库.
g
gdutqiang
谢谢您的回复,这个跟您所说的有点不同。因为在windows下 用navicat是可以正确导入的,但是需要使用配置 65001这个信息。因为打开my.sql这个文件可以看到:File Encoding : 65001。 我就想知道 怎么用命令行导入的
返回顶部
顶部