我有一个.sql文件,其中包含phpMyAdmin的导出。我想使用命令行将其导入到其他服务器。

我安装了Windows Server 2008 R2。我将.sql文件放在C驱动器上,并尝试了以下命令

database_name < file.sql

它不起作用。我遇到语法错误。

我如何才能毫无问题地导入此文件?我需要先创建数据库吗?


当前回答

有时定义的端口以及该数据库的服务器IP地址也很重要。。。

mysql -u user -p user -h <Server IP address> -P<port> (DBNAME) < DB.sql

其他回答

在Ubuntu中

 mysql -u root -p
 CREATE database dbname;
 use dbname;
 source /home/computername/Downloads/merchantapp.sql
 exit;

在Windows中

下载SQL文件并将其保存在C:\xamp\mysql\bin中。

之后,使用C:\xamp\mysql\bin打开命令提示符:

 C:\xampp\mysql\bin> mysql -u username -p database_name < file.sql

我们可以使用此命令从命令行导入SQL:

mysql -u username -p password db_name < file.sql

例如,如果用户名是root,密码是password。数据库名为bank,SQL文件为bank.SQL

mysql -u root -p password bank < bank.sql

请记住SQL文件的位置。如果SQL文件位于桌面文件夹/目录中,请转到桌面目录并输入如下命令:

cd ~/Desktop
mysql -u root -p password bank < bank.sql

如果您位于Project目录中,并且SQL文件位于Desktop目录中。如果您想从Project目录访问它,可以执行以下操作:

cd ~/Project
mysql -u root -p password bank < ~/Desktop/bank.sql

对我有效的解决方案如下:

Use your_database_name;
SOURCE path_to_db_sql_file_on_your_local;

导入数据库

转到驱动器:d:MySQL登录c: \xamp\mysql\bin\mysql-u root-p它将要求pwd。输入:压水堆选择数据库使用DbName;提供文件名\.DbName.sql

转到MySQL所在的目录。

 c:\mysql\bin\> mysql -u username -p password database_name <
 filename.sql

此外,要转储所有数据库,请使用-all databases选项,并且不再需要指定数据库的名称。

mysqldump -u username -ppassword –all-databases > dump.sql

或者您可以使用一些GUI客户端(如SQLyog)来完成此操作。