如何从终端导入mysql数据库?

我找不到确切的语法。


当前回答

在-p和password之间不能有空格

mysql -u [dbusername] -p[dbpassword] [databasename] < /home/serverusername/public_html/restore_db/database_file.sql

我经常用它,效果很好。谢谢你问这个问题。祝你有愉快的一天。Njoy:)

其他回答

首先通过命令行连接mysql

mysql -u root -p

进入MySQL PW

选择目标DB名称

use <db_name>

选择要导入的db文件

SET autocommit=0; source /root/<db_file>;

commit;

这个应该可以了。(谢谢清理) 这将工作,即使10GB的DB可以成功导入这种方式。:)

假设你使用的是Linux或Windows控制台:

密码提示:

mysql -u <username> -p <databasename> < <filename.sql>

直接输入密码(不安全):

mysql -u <username> -p<PlainPassword> <databasename> < <filename.sql>

例子:

mysql -u root -p wp_users < wp_users.sql

mysql -u root -pPassword123 wp_users < wp_users.sql

参见:

4.5.1.5. 从文本文件执行SQL语句


注意:如果你是在windows上,那么在执行命令之前,你必须在CMD中cd(改变目录)到你的MySQL/bin目录。

如果您想从SQL转储中导入数据库,其中可能有“use”语句,我建议使用“-o”选项作为保护,以免意外导入到错误的数据库。

   •   --one-database, -o

       Ignore statements except those those that occur while the default
       database is the one named on the command line. This filtering is
       limited, and based only on USE statements. This is useful for
       skipping updates to other databases in the binary log.

完整的命令:

mysql -u <username> -p -o <databasename> < <filename.sql>

从终端:

mysql -uroot -p --default-character-set=utf8 database_name </database_path/database.sql

对于Ubuntu/Linux用户, 提取SQL文件并将其粘贴到某个地方

例如你粘贴在桌面上

打开终端 转到数据库并创建一个数据库名称 创建数据库db_name 从终端退出Mysql cd桌面 Mysql -u root -p db_name < /cd/to/ Mysql .sql .sql 输入密码:....