我有一个.sql文件,其中包含phpMyAdmin的导出。我想使用命令行将其导入到其他服务器。
我安装了Windows Server 2008 R2。我将.sql文件放在C驱动器上,并尝试了以下命令
database_name < file.sql
它不起作用。我遇到语法错误。
我如何才能毫无问题地导入此文件?我需要先创建数据库吗?
我有一个.sql文件,其中包含phpMyAdmin的导出。我想使用命令行将其导入到其他服务器。
我安装了Windows Server 2008 R2。我将.sql文件放在C驱动器上,并尝试了以下命令
database_name < file.sql
它不起作用。我遇到语法错误。
我如何才能毫无问题地导入此文件?我需要先创建数据库吗?
当前回答
要一次导入多个SQL文件,请使用以下命令:
# Unix-based solution
for i in *.sql ; do mysql -u root -pPassword DataBase < $i ; done
对于简单导入:
# Unix-based solution
mysql -u root -pPassword DataBase < data.sql
对于WAMP:
REM mysqlVersion - replace with your own version
C:\wamp\bin\mysql\mysqlVersion\bin\mysql.exe -u root -pPassword DataBase < data.sql
对于XAMPP:
C:\xampp\mysql\bin\mysql -u root -pPassword DataBase < data.sql
其他回答
如果您已经拥有数据库,请使用以下命令导入转储或sql文件:
mysql -u username -p database_name < file.sql
如果不需要在MySQL中创建相关的数据库(空),那么第一次登录MySQL控制台时,可以在终端或cmd中运行以下命令
mysql -u userName -p;
并在提示时提供密码。
接下来,创建一个数据库并使用它:
mysql>create database yourDatabaseName;
mysql>use yourDatabaseName;
然后将sql或转储文件从导入数据库
mysql> source pathToYourSQLFile;
注意:如果您的终端不在转储文件或sql文件所在的位置,请使用上面的相对路径。
类似于vladkras对如何在MySQL中使用命令行导入SQL文件的回答?。
我的主要区别:
数据库必须首先存在-p和密码之间没有空格
shell> mysql -u root -ppassword #note: no space between -p and password
mysql> CREATE DATABASE databasename;
mysql> using databasename;
mysql> source /path/to/backup.sql
我在MariaDB上运行Fedora 26。
打开MySQL命令行键入mysql bin目录的路径,然后按Enter键将SQL文件粘贴到mysql服务器的bin文件夹中。在MySQL中创建数据库。使用要导入SQL文件的特定数据库。键入source databasefilename.sql并输入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
以下命令在上的命令行(cmd)中对我有效WAMP上的Windows 7。
d:/wamp/bin/mysql/mysql5.6.17/bin/mysql.exe -u root -p db_name < database.sql