导入SQL文件到mysql

我有一个名为nitm的数据库。这里我没有创建任何表。但是我有一个SQL文件,其中包含数据库的所有必要数据。该文件是nitm.sql,在C:\ drive中。这个文件的大小大约是103 MB。我使用的是wamp服务器。

我在MySQL控制台中使用了以下语法来导入文件:

mysql>c:/nitm.sql;

但这并不奏效。

505481 次浏览

从命令行(cmd.exe,而不是mysql shell)尝试如下操作:

type c:/nite.sql | mysql -uuser -ppassword dbname
你就快成功了 使用< / p >
mysql> \. c:/nitm.sql;

您还可以通过

mysql> \?
mysql>c:/nitm.sql;

这将把mysql命令的输出写到'nitm.sql;'(';'应该做什么?)假设你已经有了原始文件的副本(在你覆盖它之前),然后:

mysql < c:/nitm.sql

您的转储是否包含您的MySQL版本不支持的特性?您还可以尝试删除MySQL的开始(和结束)注释set语句。

我不知道你的转储是否来自Linux版本的MySQL(行结束符)?

最后,我解决了这个问题。我放置了' nitm。Sql '文件在' mysql '文件夹的' bin '文件中,并使用以下语法。

C:\wamp\bin\mysql\mysql5.0.51b\bin>mysql -u root nitm < nitm.sql

这个方法奏效了。

如果你正在使用wamp,你可以试试这个。只要先输入use your_Database_name

  1. 点击wamp服务器图标,然后寻找MYSQL > MSQL Console,然后运行它。

  2. 如果你没有密码,只需按enter键并输入:

    mysql> use database_name;
    mysql> source location_of_your_file;
    

    如果有密码,会提示输入密码。先输入密码,然后输入:

    mysql> use database_name;
    mysql> source location_of_your_file;
    

location_of_your_file should look like C:\mydb.sql

so the commend is mysql>source C:\mydb.sql;

This kind of importing sql dump is very helpful for BIG SQL FILE.

I copied my file mydb.sq to directory C: .It should be capital C: in order to run

and that's it.

从mysql控制台:

mysql > use DATABASE_NAME;

mysql > source path/to/file.sql;

< br >

如果你指的是一个相对路径,请确保在path之前没有斜杠…我花了一段时间才意识到这一点!哈哈

如果您正在使用xampp

C:\xampp\mysql\bin\mysql -uroot -p nitm < nitm.sql

我已经在D: drive安装了我的wamp服务器,所以你必须从ur命令行到以下路径->(如果你已经在c: drive安装了wamp,那么只需将D:替换为c: here)

D:\>cd wamp
D:\wamp>cd bin
D:\wamp\bin>cd mysql
D:\wamp\bin\mysql>cd mysql5.5.8 (whatever ur verserion will be displayed here use keyboard Tab button)
D:\wamp\bin\mysql\mysql5.5.8>cd bin
D:\wamp\bin\mysql\mysql5.5.8\bin>mysql -u root -p password db_name < "d:\backupfile.sql"

这里是我的phpmyadmin的用户 密码是phpmyadmin的密码,所以如果你没有为root设置任何密码,在那个地方什么都没有, Db_name是数据库(为哪个数据库进行备份) , backupfile。SQL是你想要备份你的数据库的文件,你也可以改变备份文件的位置(d:\backupfile.sql)从任何其他地方在你的计算机

在windows中,如果上面的建议给你一个错误(文件没有找到或未知的db),你可能需要将正斜杠加倍:

在mysql控制台:

mysql> use DATABASE_NAME;


mysql> source C://path//to//file.sql;

在Linux中,我在启动mysql之前导航到包含.sql文件的目录。系统光标现在位于与文件相同的位置,您不需要路径。使用源myData。SQL,我的日期替换为您的文件名。

cd whatever directory


mysql - p

连接targetDB

source myData.sql

完成

不要忘记使用

charset utf8

如果你的sql文件是utf-8:)

所以你需要做的是:

用于cmd . exe

Mysql -u root

Mysql >字符集utf8

Mysql >使用mydbname

mysql>源码C:\myfolder\myfile.sql

祝你好运)

在Windows操作系统中,以下命令适用于我。

mysql>Use <DatabaseName>
mysql>SOURCE C:/data/ScriptFile.sql;

文件名周围没有单引号或双引号。路径将包含'/'而不是'\'。

好吧,我使用Linux,但我认为这也适用于Windows。 您可以直接从命令提示符

执行此操作
> mysql -u <user name> -p<password> <database name> < sqlfilename.sql

或者在mysql提示符中,你可以使用:

mysql>source sqlfilename.sql
但这两种方法在显示的结果中都有各自的好处。 在第一种方法中,脚本一遇到错误就退出。更好的部分是,它告诉您源文件中发生错误的确切行号。但是,它只显示错误。如果没有遇到任何错误,脚本将显示NOTHING。这可能会让人有点紧张。因为你最常运行的是一个带有一大堆命令的脚本

现在第二种方法(从mysql提示符中)的好处是它为脚本中的每个不同的mysql命令显示一条消息。如果遇到错误,它会显示mysql错误消息,但会继续执行脚本。这样做很好,因为您可以在再次运行脚本之前返回并修复所有错误。缺点是它不会显示脚本中遇到错误的行号。这可能有点痛苦。但是错误消息是描述性的,所以您可能会发现问题在哪里。

就我个人而言,我更喜欢直接从操作系统命令行方式。

用于XAMPP上的本地主机。打开cmd窗口并键入

cd C:\xampp\mysql\bin
mysql.exe -u root -p

< >强注意!-p后不能有分号 输入密码并输入

use database_name;

以选择所需的数据库。

看看你的桌子在不在

show tables;

从sql文件导入

source sqlfile.sql;

我把我的文件放在C:\xampp\mysql\bin位置,以便不与sql文件的位置混淆。

导出特定数据库

 djimi:> mysqldump --user=root --host=localhost --port=3306 --password=test -B CCR KIT >ccr_kit_local.sql

这将导出CCR和KIT数据库…

导入所有导出的数据库到特定的Mysql实例(你必须在你的转储文件的地方)

djimi:> mysql --user=root --host=localhost --port=3306 --password=test < ccr_kit_local.sql

试一试:

mysql -u username -p database_name < file.sql

检查MySQL选项

注意:最好使用SQL文件file.sql的完整路径。

对于那些在做这个问题上挣扎的人,尝试你能在SO上找到的所有可能的答案。下面是我在运行Windows 2012 R2的VPS上使用的方法:

  1. 把你的sql文件的bin是为我,它位于C:\Program Files\MySQL\MySQL Server 8.0\bin

  2. 打开windows命令提示符(cmd)

  3. 运行C:\Program Files\MySQL\MySQL Server 8.0\bin > mysql -u [username] -p
  4. 输入密码
  5. 运行命令use [database_name];
  6. 使用命令源C://Program Files//MySQL//MySQL Server 8.0//bin//mydatabasename.sql导入文件

当其他一切都失败时,它为我做到了。这也可能对你有帮助。