← 返回首页
MySQL基础教程(二十一)
发表时间:2020-03-19 01:29:29
讲解MySQL的数据库的导入和导出

1.导出数据

mysqldump 是 mysql 用于转存储数据库的实用程序。它主要产生一个 SQL 脚本,其中包含从头重新创建数据库所必需的命令 CREATE TABLE INSERT 等。

使用 mysqldump 导出数据需要使用 --tab 选项来指定导出文件指定的目录,该目标必须是可写的。

例如: 把myschool数据库,导出到myschool.sql中。

mysqldump -uroot -proot myschool > myschool.sql
mysqldump: [Warning] Using a password on the command line interface can be insecure.

这里提示,在命令行输入密码是不安全的。我们可以在p后不显式输入密码。

mysqldump -uroot -p myschool > myschool.sql
Enter password: ****

如果需要备份所有数据库,可以使用以下命令:

mysqldump -u root -p --all-databases > database_dump.sql
password ******

注意:以上导出方式是不包含存储过程的。 导出存储过程可以使用以下命令:

mysqldump -u 数据库用户名 -p -n -t -d -R --triggers=false 数据库名 > 文件名 

这样单独把存储过程和函数导出。

2.导入数据 source 命令导入数据库需要先登录到数库终端。 例如:把刚才导出的myschool.sql再还原到数据库中。

mysql -hlocalhost -uroot -proot
#切换数据库
mysql>use myschool;
#使用source命令还原数据库
mysql>source d:\uploadFiles\myschool.sql

当然,如果使用了类似Navicat图形管理工具,我们仅仅需要选中要导入的数据库,在弹出菜单中选中'运行SQL文件..',即可方便地实现数据库的导入了。

以上方式导出的SQL脚本里可能不包含视图,存储过程和触发器这些数据库对象。如果使用navicat要导出所有的数据对象,可以使用navicat的数据传输功能。

1)选择navicat的工具->数据传输

2)选择源和目标,目标为SQL脚本文件。

3)选择数据对象

4)导出数据对象到文件