如何从终端导入带有mysql的数据库?
我找不到确切的语法。
答案 0 :(得分:699)
假设您使用的是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. Executing SQL Statements from a Text File
注意:如果您使用的是Windows,那么在执行命令之前,您必须{CMER}内的cd
(更改目录)到您的MySQL / bin目录。
答案 1 :(得分:131)
Windows的优选方式:
打开控制台并启动交互式MySQL模式
use <name_of_your_database>;
source <path_of_your_.sql>
答案 2 :(得分:32)
mysql -u <USERNAME> -p <DB NAME> < <dump file path>
-u
- 用户名
-p
- 提示输入密码
例如 mysql -u root -p mydb < /home/db_backup.sql
您也可以提供以-p开头的密码,但出于安全原因,它不可建议。密码将显示在命令本身上,而不是屏蔽。
答案 3 :(得分:7)
从终端:
mysql -uroot -p --default-character-set=utf8 database_name </database_path/database.sql
答案 4 :(得分:7)
直接来自var / www / html
mysql -u username -p database_name < /path/to/file.sql
从mysql内部:
mysql> use db_name;
mysql> source backup-file.sql
答案 5 :(得分:7)
mysql -uroot -p1234; use databasename; source /path/filename.sql
答案 6 :(得分:6)
我通常使用此命令在分配名称为000-tableA.sql,001-tableB.sql,002-tableC.sql的文件时加载我的SQL数据。
for anyvar in *.sql; do <path to your bin>/mysql -u<username> -p<password> <database name> < $anyvar; done
适用于OSX shell。
答案 7 :(得分:5)
mysql -u username -ppassword dbname < /path/file-name.sql
例如
mysql -u root -proot product < /home/myPC/Downloads/tbl_product.sql
在终端
中使用此功能答案 8 :(得分:5)
下面的命令正在使用ubuntu 16.04,我不确定它是否正常工作。
导出SQL文件:
$ mysqldump -u [user_name] -p [database_name] < [database_name.sql]
示例:mysqldump -u root -p max_development&gt; max_development.sql
导入SQL文件:
$ mysqldump -u [user_name] -p [database_name] > [file_name.sql]
Example: mysqldump -u root -p max_production < max_development.sql
注意SQL文件应该存在于同一目录
答案 9 :(得分:5)
说明:
首先创建数据库或使用现有数据库。就我而言,我使用的是现有数据库
在我的案例中使用<name of database> = ClassicModels
加载数据库并使用运算符<
提供database = sakila-data.sql
的路径
通过运行show tables,我可以看到表格列表。
注意:在我的情况下,我得到错误1062 ,因为我试图再次加载相同的东西。
答案 10 :(得分:4)
经过一段时间的努力,我在https://tommcfarlin.com/importing-a-large-database/
中找到了相关信息连接到Mysql(让我们使用root用户名和密码):
mysql -uroot -proot
连接到数据库(假设它被称为emptyDatabase(您应该收到确认消息):
connect emptyDatabase
3导入源代码,假设该文件名为mySource.sql,并且位于名为myUser的用户配置文件下名为mySoureDb的文件夹中:
source /Users/myUser/mySourceDB/mySource.sql
答案 11 :(得分:4)
打开MySQL命令行客户端并输入密码
更改要用于将.sql文件数据导入的数据库。通过输入以下内容来执行此操作:
USE your_database_name
现在找到要执行的.sql文件
如果该文件位于主本地C:驱动器目录中,并且.sql脚本文件名为currentSqlTable.sql
,则应键入以下内容:
\. C:\currentSqlTable.sql
并按 Enter 执行SQL脚本文件。
答案 12 :(得分:3)
如果你从mysql网站使用sakila-db, 它在Linux平台上很容易按照下面提到的步骤,下载sakila-db的zip文件后,将其解压缩。现在您将有两个文件,一个是 sakila-schema.sql ,另一个是 sakila-data.sql 。
请注意提取的文件存在于主目录。
答案 13 :(得分:2)
在Ubuntu中,来自 MySQL监视器,您已经使用过这种语法:
mysql> use <dbname>
- &GT; USE语句告诉MySQL使用dbname
作为后续语句的默认数据库
mysql> source <file-path>
例如:
mysql> use phonebook;
mysql> source /tmp/phonebook.sql;
重要:确保sql文件位于mysql 可以访问的目录中,以便/ tmp
答案 14 :(得分:1)
在终端上运行命令之前,您必须确保在终端上安装了MySQL。
您可以使用以下命令进行安装:
sudo apt-get update
sudo apt-get install mysql-server
参考here。
之后,您可以使用以下命令导入数据库:
mysql -u <username> -p <databasename> < <filename.sql>
答案 15 :(得分:0)
从终端在MYSQL中导入数据库的最简单方法是通过以下过程-
mysql -u root -p root database_name < path to your .sql file
我在上面做的是:
root
和root
)进入mysql <
,然后是.sql文件的路径。例如,如果我的文件存储在桌面中,则路径将为/home/Desktop/db.sql
就是这样。完成所有这些操作后,按Enter键,然后等待您的.sql文件上传到相应的数据库
答案 16 :(得分:0)
然后打开终端
mysql -u root -p
eg:- mysql -u shabeer -p
之后创建数据库
mysql> create database "Name";
eg:- create database INVESTOR;
然后选择该新数据库“投资者”
mysql> USE INVESTOR;
从计算机中选择sql文件的路径
mysql> source /home/shabeer/Desktop/new_file.sql;
然后按Enter键,然后等待它们全部执行
mysql> exit
答案 17 :(得分:0)
-p和密码之间不能有空格
mysql -u [dbusername] -p[dbpassword] [databasename] < /home/serverusername/public_html/restore_db/database_file.sql
我一直在使用它,它可以完美运行。谢谢问这个问题。祝你有美好的一天。 Njoy:)
答案 18 :(得分:0)
首先通过命令行连接mysql
mysql -u root -p
选择要导入的数据库
use <db_name>
选择你的数据库文件
SET autocommit=0; source <db_file>;
commit;
应该这样做。