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

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

database_name < file.sql

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

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


当前回答

通过终端导入数据库

导航到.sql文件所在的文件夹

然后运行以下命令:

mysql -u database_user_name -p database_name < sql_file_name.sql

它将要求输入密码。输入数据库密码。将数据导入数据库需要几秒钟的时间。

其他回答

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

Use your_database_name;
SOURCE path_to_db_sql_file_on_your_local;

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

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

这一行在Linux下导入本地数据库中的转储文件。

mysql -u dbuser -p'password including spaces' dbname < path/to/dump_file.sql

这一行在Linux下导入远程数据库中的转储文件。注意:-P表示端口,如果MySQL端口与默认端口不同,则需要-P。

mysql -h dbhost -u dbuser -p'password including spaces' -P 3306 dbname < path/to/dump_file.sql

注意:密码包含空格,这是单引号的原因。只需更改在Windows下使用命令的路径样式(C:\Windows\path\dump_file.sql)。

导出特定数据库:

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

这将导出CCR和KIT数据库。。。

将所有导出的数据库导入到特定的MySQL实例(您必须在转储文件所在的位置):

mysql --user=root --host=localhost --port=3306 --password=test < ccr_kit_local.sql
mysql --user=[user] --password=[password] [database] < news_ml_all.sql