MySql使用全记录5 -----解决Windows下用命令导入sql文件时"Failed to open file"的问题
2013-05-23 10:06
1241 查看
使用命令导入导出MySQL数据库
本文由CSDN-蚍蜉撼青松【主页:http://blog.csdn.net/Ping_Fani07】原创,转载请注明出处!前段时间出于项目需要,要将一个MySQL数据库从Linux系统下导出,再到Windows系统下导入。在不同Linux系统之中的导入导出我做了很多次了,参照网上的做法完全木有问题。但在Windows系统下用命令导入的时候却报了一个sql文件打开失败的错误,如图1所示。
图1 Windows下错误的MySQL导入
折腾了半天,又到MySQL官方论坛逛了一圈,在26个字母的海洋里呛得半死后,终于找到了问题的症结所在。具体解决方法在本文<第四节 注意事项>,奔此而来的童鞋请直接前往,忽略掉前面的基础知识~
本文的主题是基于命令行的MySQL导入导出,下面进入正题。
一、在Windows操作系统下使用MySQL命令
安装MySQL软件后,并不能直接在随意打开的命令提示符中使用MySQL命令。需先将可执行文件mysql.exe所在的路径【一般是“软件安装目录\mysql\bin”】加入当前用户的环境变量PATH中或者系统环境变量Path中,不会添加的自己问度娘谷哥去,此处不再赘述。环境变量设置完成后,重启电脑使之生效。【不想重启的,参考这个《详解Windows不重启使环境变量修改生效 (请直接点击文章名)》】
二、使用命令导出MySQL数据库
2.1 导出完整的数据库(含数据)
mysqldump -uusrname -pdbname >out.sql
Enter password:****
2.2 导出数据库某指定的完整表(含数据)
mysqldump -uusrname -pdbname tabname >out.sql
Enter password:****
注:
usrname 是MySQL登录时所用的用户名
dbname 是要导出的数据库的库名
tabname 是要导出的数据表的表名
out.sql 是导出操作的目标文件,即导出结果
三、使用命令导入MySQL数据库
3.1 直接导入
mysql -uusrname -pdbname < in.sql
注:数据库dbname需预先建好
3.2 进入mysql提示符后用source命令导入
mysql -uusrname -pEnter password:****
mysql> use
dbname; //若本机当前没有此库的话,先用create database
dbname; 创建
mysql> source
in.sql;
注:usrname dbname与导出操作中的名词同义;in.sql是要导入的一个sql文件
四、注意事项
一般说来,我们仅仅使用要导入的文件名是不够的,还需指定其路径。【Win 7系统下,一般放在当前用户的主目录下(例如C:\Users\pifuhanqingsong)可以不指定路径。可能是因为通过”附件-->命令提示符"或者“运行cmd”打开的命令提示符,使用的当前目录默认为当前用户的主目录吧。】我们知道与Linux描述路径时使用斜杠【“/”】分隔目录名不同,Windows使用反斜杆【"\"】分隔目录名。但在mysql提示符中,无论你所使用的OS是Linux还是Windows,都要使用斜杆【“/”】分隔目录名,如图2所示
图2 Windows下正确的MySQL导入
否则,就会出现本文开头图1中所示的打开文件失败错误。
当然,既然我们知道指定路径的必要性是基于一般打开的命令提示符使用当前用户的主目录作为当前目录,那么如果我们可以在待导入的sql文件所在的目录下执行命令,不是就不用指定路径了!经本人实验,这个想法确实是可行的,具体做法参考《win7右键在当前目录打开命令cmd窗口(请直接点击文章名)》或者《如何更改cmd命令提示符的默认当前路径 (请直接点击文章名)》。
------本文由CSDN-蚍蜉撼青松【主页:http://blog.csdn.net/Ping_Fani07】原创,转载请注明出处!------
相关文章(有超链,可直接点击):
MySql使用全记录1 -----使用命令登录数据库
MySql使用全记录2 -----列操作(添加列、设定默认值、修改指定多条记录的列值)
MySql使用全记录3 -----小知识(varchar、单双引号)
相关文章推荐
- MySQL导入.sql文件时出现" failed to open file"错误
- Linux解决问题篇——ftp上传文件(使用put)时,permission denied,下载文件(使用get)时,failed to open file
- MySQL用source命令执行外部sql脚本文件时出现failed to open file的错误可能之一
- mysql导入sql脚本时错误指令:Failed to open file "file_name" error 2/error 22
- file_put_contents() failed to open stream: Permission denied 问题解决(生成日志文件)
- mysql导入导出数据中文乱码解决方法小结(1、navicat导入问题已解决,创建连接后修改连接属性,选择高级->将使用Mysql字符集复选框去掉,下拉框选择GBK->导入sql文件OK;2、phpmyadmin显示乱码的问题也解决,两步:1.将sql文件以utf8的字符集编码另存,2.将文件中sql语句中的字段字符集编码改成utf8,导入OK)
- file_put_contents() failed to open stream: Permission denied 问题解决(生成日志文件)
- failed to open file mysql,导入mysql数据库打不开的解决办法
- MySQL Can't create/write to file 'c:/windows/temp/#sql_2d0_0.MYD' 问题的解决
- 用SQL语句解决mysql导入大数据文件的问题
- mysql 导入sql文件报错no databases select和failed to open file
- ssd sftp传输文件问题出现 failed to open a secure file transfer session
- Android Studio出现Failed to open zip file问题的解决方法
- Mysql运行脚本时出现问题:Failed to open file 'file_name' , error: 2
- mysql导入数据库文件最大限制更改解决方法You probably tried to upload too large file
- mysqldump Failed to open file 'xxxl', error: 22 on windows os
- MySQL导入大sql 文件大小限制问题的解决
- Java解析DBF文件,错误Failed to parse Number: For input string: "-.---" 或读取不出数据或乱码问题都在这里解决
- mysql导入数据库文件最大限制更改解决方法You probably tried to upload too large file