mysql导出数据库报错,navicat 导入导出数据库报错的解决

在使用navicat导入导出数据功能时,导出没问题,导入总是报错,还遇到了中文乱码。在网上查了很多资料,比如使用了navicat的数据传输功能,但仍然报错,弄了几个小时都没解决。

最后换了种思路,我直接用mysql自带的命令行来尝试导入导出,结果一试就成功无任何报错、乱码!

这里顺便贴出网上的教程:

MySQL命令行导出数据库:

1,进入MySQL目录下的bin文件夹:cd MySQL中到bin文件夹的目录

如我输入的命令行:cd D:\Program Files\MySQL\MySQL Server 5.5\bin

(或者直接将windows的环境变量path中添加该目录)

2,导出数据库:mysqldump -u 用户名 -p 数据库名 > 导出的文件名

如我输入的命令行:mysqldump -u lmapp -p lmapp -P 3308 > lmapp.sql   (输入后会让你输入进入MySQL的密码)

(如果导出单张表的话在数据库名后面输入表名即可)

mysql导出数据库一个表

mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名

mysqldump -u lmapp -p lmapp users> test_users.sql (结尾没有分号)

3、会看到文件news.sql自动生成到bin文件下

4b68b19f27cd

导出时,遇到上面的问题。

4b68b19f27cd

解决措施:加个参数-P 3308(mysql服务端口)即可解决问题。

命令行导入数据库:

1,将要导入的.sql文件移至bin文件下,这样的路径比较方便

2,同上面导出的第1步

3,进入MySQL:mysql -u 用户名 -p

如我输入的命令行:mysql -u root -p   (输入同样后会让你输入MySQL的密码)

4,在MySQL-Front中新建你要建的数据库,这时是空数据库,如新建一个名为news的目标数据库

5,输入:mysql>use 目标数据库名

如我输入的命令行:mysql>use news;

6,导入文件:mysql>source 导入的文件名;

如我输入的命令行:mysql>source news.sql;

4b68b19f27cd

注:由于导入数据库的规模、数据结构不同,导入所需时间会有较大差异。我导入的数据库有123M,花费将近5个小时。期间以为机器宕掉了,仔细观察命令行界面发现,导入是在正常进行的。导入成功后的界面如下:

4b68b19f27cd

注:导入单张数据表时,使用类似use lmapp lm_area 、source lm_area.sql的sql语句。原数据表可存在,导入后的数据表会覆盖同名已存在的数据表。

MySQL备份和还原,都是利用mysqldump、mysql和source命令来完成的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值