我正在尝试将输入数据转储到mysql.5.7.19
。
我的命令如下:
mysql -uroot -p temp < temp201708.sql
我的my.cnf
将错误打印到/var/log/mysqld.log
,但在转储时我没有看到任何错误日志。
但是,完成作业后,我在temp
架构中找不到任何表或数据。我想我看到一些文章,不同的mysql版本可能是一个问题。是不是?
目前,我不知道有什么不对,因为没有错误日志。我应该寻找什么来解决这个问题?
感谢。
仅供参考,我不知道是什么版本的mysql制作了那个转储文件,我只是从客户端收到的。
答案 0 :(得分:0)
mysqldump -u root -p DatabaseName&gt; /Path-To-put-The-File/fileName.sql
答案 1 :(得分:0)
在mysql中进行转储时:
找到你的mysql服务器的位置,如
输入:
cd C:\Program Files\MySQL\MySQL Server 5.6\bin
mysqldump -uUsernameHere -pYourPasswordHere dbnamehere > "D:\sample.sql"
确保您的计算机中有驱动器D:
,或者您可以更改它。
这是有效的。
您可以通过调用.bat
文件来执行命令来使用它。
否则,如果您想将数据存储到数据库中,请仅使用mysql
而不是mysqldump
并将>
更改为<
mysql -uUsernameHere -pYourPasswordHere dbnamehere < "D:\sample.sql"
答案 2 :(得分:0)
感谢您的回答。
我找到了原因。
在转储文件中,有一些状态,如USE mysql;
,USE temp;
。
所以即使我在命令行中指出要放入哪个模式, 它只是忽略命令行并按照脚本。
我在mysql
架构中找到了所有数据。
==========================
结论
如果使用下面的命令转储
$ > mysqldump -u[user] -p[passwd] [scheme] > dump.sql
没关系
$ > mysql -u[user] -p[passwd] [target_scheme] < dump.sql
如果没有,您应该检查.sql
文件的内容。