2012-02-22 117 views
-3

我想将数据导入到mysql中,但出现以下错误。mysql导入不起作用

error 1064 :parsing error 

我创建数据库名称test,用户test和密码是test。 但无法导入。

命令我尝试: -

mysql>mysql-u test -p test test > 'c:/Users/test.sql'; 
+0

检查用户名和密码是否正确的mysql-u检验-p试验测试> C:/Users/test.sql“; – 2012-02-22 10:30:05

回答

0

从安全角度来看,我不会将密码包含在命令行执行中,因为它可以存储在命令历史记录中。为此,我建议以下

// no quotes 
mysql -u test -p test < c:/Users/test.sql; 

// with quotes (i.e. directory name has spaces) 
mysql -u test -p test < "c:/Users/test.sql"; 

这里你指定

mysql     // mysql command 
-u test     // user mysql 
-p      // with a password 
test      // schema name 
< c:/Users/test.sql  // Redirects the content of test.sql into mysql. File name should not be quoted with single quotes 

然后你会被提示输入密码命令后。

另一种方法是由这里的其他答复中提到,指定-ptest你有-p并使用这种方式,-pYourPasswordHere逻辑,当您的密码之间没有空格,但正如我所说,那么这将会把您的密码命令历史(更适用于linux机器,但仍然是不习惯做的好事)

+0

仍然出现错误 – anu 2012-02-22 11:08:16

+0

请您指定您正在使用的确切命令以及您正在收到的确切错误吗?作为补充说明,您不应该用单引号引用文件名。如果您需要在Windows中引用路径,则应使用双引号。 – 2012-02-22 11:13:23

1

符号'>'用于导出不用于导入。对于输入你需要使用 '<'

使用以下命令:

进口:

>mysql -u username -p databasename < path/test.sql 

对于出口:

>mysqldump -u username -p databasename tableName > path/test.sql 
0

试试这个:

语法是

mysql <dbname> -u <username> -p<password> -e source <backup_file.sql> 

命令

mysql test -u test -ptest -e source "c:/Users/test.sql"