如何从终端导入mysql数据库?
我找不到确切的语法。
如何从终端导入mysql数据库?
我找不到确切的语法。
当前回答
下面的命令在ubuntu 16.04上运行,我不确定它是否在其他Linux平台上运行。
导出SQL文件:
$ mysqldump -u [user_name] -p [database_name] > [database_name.sql]
例如:mysqldump -u root -p max_development > max_development.sql
导入SQL文件:
$ mysqldump -u [user_name] -p [database_name] < [file_name.sql]
示例:mysqldump -u root -p max_production < max_development.sql
注意SQL文件必须存在同一目录
其他回答
在挣扎了一段时间后,我在https://tommcfarlin.com/importing-a-large-database/上找到了信息
连接Mysql(让我们使用root用户名和密码): Mysql -uroot - root 连接到数据库(假设它被称为emptyDatabase(你应该得到一个确认消息): 连接emptyDatabase
3导入源代码,假设这个文件叫做mySource。它位于myUser用户配置文件下的mySoureDb文件夹中:
source /Users/myUser/mySourceDB/mySource.sql
窗户的首选方式:
打开控制台并启动交互式MySQL模式 使用< name_of_your_database >; 源< path_of_your_.sql >
在Ubuntu中,从MySQL监视器中,你已经使用了这个语法:
Mysql >使用<dbname> -> USE语句告诉MySQL在后续语句中使用dbname作为默认数据库
mysql> source <file-path>
例如:
mysql> use phonebook;
mysql> source /tmp/phonebook.sql;
注意:确保sql文件在一个mysql可以访问的目录下,比如/tmp
从终端:
mysql -uroot -p --default-character-set=utf8 database_name </database_path/database.sql
我通常使用这个命令加载我的SQL数据时,文件名称:000-tableA。sql表b 001 -。002 - tablec.sql sql,。
for anyvar in *.sql; do <path to your bin>/mysql -u<username> -p<password> <database name> < $anyvar; done
在OSX shell上工作良好。