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

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

database_name < file.sql

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

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


当前回答

要将数据库转储到SQL文件中,请使用以下命令。

mysqldump -u username -p database_name > database_name.sql

要将SQL文件导入数据库(确保与SQL文件位于同一目录中或提供文件的完整路径),请执行以下操作:

mysql -u username -p database_name < database_name.sql

其他回答

导入数据库:

mysql-u用户名-p数据库名</file path/file_name.sql

从数据库导出:

mysqldump-u用户名-p数据库名>/file路径/file_name.sql

在这些命令之后,将出现一个提示,询问您的MySQL密码。

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

Use your_database_name;
SOURCE path_to_db_sql_file_on_your_local;

如果您的文件夹有多个SQL文件,并且您安装了Git Bash,则可以使用此命令导入多个文件:

cd /my-project/data

cat *.sql | /c/xampp/mysql/bin/mysql -u root -p 1234 myProjectDbName

如果.sql文件包含CREATE database if not EXISTS db_name和USE db_name语句,则不需要在命令行上指定数据库的名称。

如果.sql文件中提到的数据库不存在,请确保您正在与具有创建数据库权限的用户进行连接。

要导入单个数据库,请使用以下命令。

mysql -u username -p password dbname < dump.sql

要导入多个数据库转储,请使用以下命令。

mysql -u username -p password < dump.sql