`
53873039oycg
  • 浏览: 841412 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

Mysql基础之导出导入

阅读更多

     最近QQ上有人问Mysql中怎么导出数据,顺便温习了下Mysql的导入操作,而是有了本篇博文,本博文的内容很基础。

    先说明,我的Mysql版本是5.6.14,查看Mysql版本sql为:

  

select version();

    我的示例数据库为test。

   为了节省你的时间,我先写总结。

   

 --导出数据库(创建数据库,表,数据)
 mysqldump -uroot -p test --databases --default-character-set=utf8>f:/saveFile/out_all_utf_db.sql

   直接在cmd命令行下运行即可,我的数据库编码设置是utf8,所以默认的编码是utf8,如果你的是gbk,请改成gbk,--default-character-set=utf8这行不写也行,不影响。

    --databases 作用是在文件中添加数据库的创建语句。

    如果不想要创建数据库,可以这样写。

   

--导出数据库(表,数据)
mysqldump -uroot -p test --default-character-set=utf8>f:/saveFile/out_with_utf8_db.sql
mysqldump -uroot -p test --default-character-set=gbk>f:/saveFile/out_with_gbk_db.sql

    上面的导出包含表创建语句,以及数据插入,如果只想要创建数据库和表,可以这样写。

   

--导出数据库(创建数据库,表)
mysqldump -uroot -p -d test  --databases --add-drop-table --default-character-set=utf8>f:/saveFile/out_with_db_table_db.sql

    如果只想要创建表,可以这样写:

   

--导出数据库(表)
mysqldump -uroot -p -d test  --add-drop-table --default-character-set=utf8>f:/saveFile/out_with_table_db.sql

    如只想要表的数据,可以这样:

   

--导出数据库(表数据)
mysqldump -uroot -p -t test --default-character-set=utf8>f:/saveFile/out_with_data_only_db.sql

    上面是导出数据库的整个表,插入语句中有以下内容:

   

LOCK TABLES `user_t3` WRITE;
insert into.....
UNLOCK TABLES;

    如果不想要lock表,可以这样:

   

--导出数据库(表数据,无Lock)
mysqldump -uroot -p -t test --add-locks=false --default-character-set=utf8>f:/saveFile/out_with_data_only_on_lock_db.sql

    导出单个表和上面的类似,如下:

  

--导出单个表
mysqldump -uroot -p test user_t3 --default-character-set=utf8>f:/saveFile/out_user_data.sql

    如果想一次导出多个表,表名请用空格隔开

   

--导出多个表
mysqldump -uroot -p test user_t2 user_t3  --default-character-set=utf8>f:/saveFile/out_user2_data.sql

    导出表结构:

  

--导出表结构
mysqldump -uroot -p -d test user_t3 --add-drop-table  --default-character-set=utf8>f:/saveFile/out_user_no_data.sql

   导出表数据:

  

--导出表数据
mysqldump -uroot -p -t test user_t3 --default-character-set=utf8>f:/saveFile/out_user_only_data.sql

   导出表数据,不含Lock语句

  

--导出表数据 无Lock
mysqldump -uroot -p -t test user_t3 --add-locks=false --default-character-set=utf8>f:/saveFile/out_user_no_lock_data.sql

    怎么导入呢?

    方法1直接在cmd下运行:

   

--导入
mysql -h localhost -u root -p test_tmp <f:/saveFile/out_user_data.sql

   方法2,先登录Mysql

  

--要登录
use test_tmp;
source f:/saveFile/out_user_data.sql

    重要部分已经写完,下面的内容不是很重要,可以选择忽略。

    1--databases只能用在导出整个数据库上面,不能用在导出单个或多个表上面。

    2 指定文件编码可以使用default-character-set参数,值可以为utf8,gbk。

    3取消Lock信息使用--add-locks=false。

    4如果想在导出的sql中自动提交,可以使用--no-autocommit。使用之后,导出的sql文件中将有如下内容:

  

set autocommit=0;
INSERT INTO....
commit;

    5导出表结构使用-d --add-drop-table,-d意思是no data,add-drop-table意思是在上drop table语句,我的是默认有的。

    6只导出数据,可以使用--no-create-info或者-t参数。

    7mysqldump中各个参数可以叠加,一次可以使用多个。

    最后如果不确定如何使用,请使用

  

mysqldump --help

   查看个参数的具体意思,我就是使用以上语句才写这篇博文的。

  

    如只想要数据,不想要任何sql语句,可以这样:

   

select * from user_t3 into outfile "f:/saveFile/test_load.sql"

    导入可以这样:

   

load data infile "f:/saveFile/test_load.sql" into table user_t3;

    详情请自行搜索load 命令使用。

  

     另一个导入导出的方法是使用图形工具,Oracle可以使用sql/plus,Mysql可以使用Navicat Premium,图形界面用起来很简单的,可以从Excel文件中导入,很方便。

  

      最后啰嗦一句,如果你的sql文件较大,个人推荐使用命令行,再推荐大家使用一个sql文件切割工具,SQLDumpSplitter,可以指定文件切割的大小,不会把一条sql切割到2个文件,很智能,再使用命令行导入,这样就很简单了。

     全文完。

    

    

 

     

分享到:
评论

相关推荐

    MYSQL 数据库导入导出命令

    MYSQL 数据库导入导出命令 MySQL 数据库导入导出命令是数据库管理员和开发者经常使用的命令,用于将 MySQL 数据库导出到文件中,以便备份、还原或迁移到其他服务器。下面将详细介绍 MySQL 数据库导入导出的命令和...

    java调用mysql命令 导入导出数据库

    在Java编程中,调用MySQL命令来导入和导出数据库是一种常见的操作,这涉及到数据库管理、数据迁移或者备份恢复等场景。在这个过程中,Java通过JDBC(Java Database Connectivity)接口与MySQL进行交互,利用MySQL...

    MySQL数据导入导出

    在数据库管理和维护中,数据导入和导出是非常关键的操作,尤其是在MySQL数据库管理系统中。数据导入导出的目的多种多样,比如数据备份、数据迁移、数据整合等,因此掌握高效可靠的数据导入导出方法对于数据库管理员...

    MySQL导出数据并通过sqlldr导入oracle

    同时代码还会生成sqlldr命令需要用到的control文件和bat文件,以及连接Oracle的配置文件,只要将MySQL导出的数据文件合到一起,执行bat文件,即可完成数据导入到Oracle的任务。所有文件都是以导入导出的那张表的表名...

    mysql命令行下导出,导入

    ### MySQL命令行下的数据导出与导入 在数据库管理中,数据备份是非常重要的一个环节,尤其是在MySQL这样的关系型数据库管理系统中。通过命令行工具进行数据的导出与导入操作不仅高效,而且对于自动化运维有着非常...

    mysql数据导入导出php版 mysql数据导入导出php版

    MySQL数据库在Web开发中扮演着核心角色,而PHP作为服务器端脚本语言,常常用于处理与MySQL相关的数据操作,包括数据的导入和导出。在本文中,我们将深入探讨如何使用PHP来实现MySQL数据的导入与导出,以及这一过程中...

    mysql数据导入导出

    ### MySQL 数据导入与导出详解 #### 一、MySQL 数据导出 MySQL 提供了多种方式来导出数据,其中最常用的就是 `mysqldump` 命令。通过这个命令,用户可以灵活地导出整个数据库或者指定的表。 ##### 1. 导出整个...

    MYSQL专用导入导出工具mysql-front

    MySQL-Front是一款专为MySQL设计的图形用户界面(GUI)工具,它提供了便捷的方式来管理和操作数据库,包括导入和导出数据。下面将详细介绍MySQL-Front在MySQL数据库管理中的作用和使用方法。 首先,MySQL-Front提供...

    导入导出mysql数据

    知识点:MySQL 数据库的导入与导出操作及 Java 实现 在 IT 行业中,数据库的管理和维护是一项至关重要的工作。特别是在 MySQL 这样的流行关系型数据库管理系统中,数据的备份与恢复变得尤为重要。本篇文章将深入...

    关于MYSQL数据的导出导入与版本的转换.docx

    MYSQL 数据的导出导入与版本的转换 MYSQL 数据的导出导入与版本的转换是数据库管理中非常重要的操作。下面将详细介绍 MYSQL 数据的导出导入与版本的转换。 一、MYSQL 数据的导出 MYSQL 数据的导出是将数据库中的...

    mysql数据库的导入导出

    在进行数据库管理时,MySQL提供了丰富的命令行工具用于数据库的导入导出操作。对于这些操作,尤其需要掌握的是mysqldump命令和MySQL的Source命令的使用方法。 首先,mysqldump是MySQL用于备份数据库的命令行工具。...

    mysql命令行导入导出

    在MySQL数据库管理中,命令行工具提供了一种高效的方式来导入和导出数据,这对于备份、迁移或在不同环境间同步数据至关重要。当我们处理中文字符时,可能会遇到乱码问题,这是因为字符编码不一致导致的。本文将深入...

    MySQL数据库快速导入导出

    自己用JAVA做的第一个swing程序,用来快速导入导出MySQL数据库,导入整个库6万条数据只需要5秒钟,处女作 见笑了。 使用方法:需要系统支持JAVA环境并安装了MySQL,直接运行DBdump.jar,填好相应项,按步骤导入导出...

    MySQL数据导入与导出

    ### MySQL数据导入与导出详解 在数据库管理与维护中,数据的导入与导出是一项基本而重要的操作,尤其在MySQL这种广泛使用的数据库系统中。本文将深入探讨MySQL数据导入与导出的方法,通过实际案例解析,帮助读者...

    linux下导入导出mysql数据库及其导出数据命令大汇总

    Linux 下 MySQL 数据库导入导出命令大汇总 Linux 作为一个广泛应用于服务器操作系统的平台,MySQL 作为一个流行的关系数据库管理系统,在 Linux 下的使用非常广泛。因此,掌握 Linux 下 MySQL 数据库的导入导出命令...

    mysql导入导出到excel

    实现将数据库与excel之间数据的导入导出

    MySQL 快速导入导出

    自己用JAVA做的第一个swing程序,用来快速导入导出MySQL数据库,导入整个库6万条数据只需要5秒钟,处女作 见笑了。 使用方法:需要系统支持JAVA环境并安装了MySQL,直接运行MySQLdump.jar,填好相应设置项,点击...

Global site tag (gtag.js) - Google Analytics