mysql:源错误2?
当我试图从一个数据库中创build并保存一个特定的.sql文件,即'metropolises.sql'
,会显示以下错误:
无法打开文件“metropolises.sql”,错误:2
任何想法出了什么问题?
假设您的意思是您正在尝试使用source
命令来执行来自文本文件的SQL语句,给定的错误号似乎是从POSIX层传递过来的。
因此,使用这个资源 ,我们可以推断2的错误值意味着“没有这样的文件或目录”。
总之,你弄错了path。
尝试提供一个绝对path ,因为不清楚当前的工作目录将在MySQL服务器的上下文中。 你可能假设它是你的shell的工作目录,但是我们不应该期望这是真的。
只要使用文件的绝对path ,然后,而不是使用反斜杠,使用正斜杠。
例:
带反斜杠 :source C:\ folder1 \ metropolises.sql
正斜杠 :源C:/folder1/metropolises.sql
相关的问题我得到错误2运行源命令:文件名不得在引号,即使它包含名称或文件的path中的空格。
我首先到达文件
c:\windows>cd c:\akura\Db Scripts c:\akura\Db Scripts>mysql -u root -p root mysql>\. EXECUTER_NEW_USER.sql here EXECUTER_NEW_USER.sql my file name
我在Windows上有同样的错误。 我解决了(在cmd之后:mysql -u root):
mysql> SOURCE C:/users/xxx/xxxx/metropolises.sql;
确保你input正确的文件path
在我的Windows 8.1和MySQL 5.7.9 MySQL社区服务器(GPL)上,我不得不删除;
之后的文件path。
这失败了:来源E:/jokoni/db/Banking/createTables.sql;
这工作:源E:/jokoni/db/Banking/createTables.sql
(没有终止,正斜杠而不是窗口的反斜杠在path中)
这可能是你的文件的文件path。 如果您不知道要使用的文件的确切位置,请尝试在Finder中查找您的文件,然后将该文件拖入“terminal”窗口
mysql> SOURCE dragfilePathHere
可能是您使用的文件名或path可能不正确
在我的系统中,我创build了文件abcd.sql在C:\
并使用命令mysql> source c:\abcd.sql
然后我得到了结果
我在使用这个查询的mysql命令行中得到这个错误:
source `db.sql`;
我把上面的内容改成了下面的内容,
source db.sql;
如果您使用的是Debian 8(Jessie)Linux,请尝试cd
到'metropolises.sql'
的目录中。 运行mysql
并执行SOURCE ./metropolises.sql;
基本上,尝试相对path 。 我试过这个,它的工作原理。
如果您正在运行dockerized MySQL容器(例如来自官方Docker镜像registry),那么您可能也会遇到此问题 。
如果使用stream浪者,请确保该文件位于服务器上,然后使用该文件的path。 例如,如果文件存储在公用文件夹中,您将拥有
sql> source /var/www/public/xxx.sql
其中xxx是文件的名称
删除path的文件夹名称中的空格,它为我的Macpath工作。
(例如:将文件夹名称MySQL Server 5.1更改为MySQLServer5.1)
我也有同样的消息,当我尝试从MySQL控制台执行操作,但是当我打开命令提示符,并执行相同的步骤,其工作良好没有得到任何错误C:\ Users \ SubhenduD> CD ../
C:\ Users> cd ../
C:> cd \ xampp \ mysql \ bin
C:\ xampp \ mysql \ bin> mysql -u -root欢迎使用MySQL监视器。 命令以; 或\ g。 您的MySQL连接ID是68服务器版本:5.6.16 MySQL社区服务器(GPL)
版权所有(c)2000,2014,Oracle和/或其附属公司。 版权所有。
Oracle是Oracle Corporation和/或其附属公司的注册商标。 其他名称可能是其各自所有者的商标。
input'help' 或'\ h'寻求帮助。 input'\ c'清除当前的input语句。
mysql>使用balticktravels;
mysql> source balticktravels.sql;
ITS运作良好。 你可以检查一下。