MySQL数据库(表)的导入导出(备份和还原)

转载 2013年12月05日 14:39:15

命令行下具体用法如下:  mysqldump -u用戶名 -p密码 -d 数据库名 表名 脚本名;


一)在同一个数据库服务器上面进行数据表间的数据导入导出:

1. 如果表tb1和tb2的结构是完全一样的,则使用以下的命令就可以将表tb1中的数据导入到表tb2中:

insert into db2.tb2 select * from  db1.tb1

2. 如果表tb1和tb2只有部分字段是相同的,要实现将tb1中的部分字段导入到tb2中相对应的相同字段中,则使用以下命令:

insert into db2.tb2(字段1,字段2,字段3……) select  字段1‘,字段2’,字段3‘,……  from db1.tb1;

二)但是要实现将远程数据库中数据表tb1的数据导入到本地数据库数据表tb2中,并没有太好的方法像以上例子所示的在本地直接使用SQL语句就能搞定。这时就要使用到数据库(表)的导出,导入。即将远程的数据库(表)导出到本地文件中,然后再将该数据库(表)导入(还原)到本地数据库中。这些方法多应用于数据库的备份和还原中

1.远程数据库(表)导出到本地数据库(表)文件

(1)导出数据库

mysqldump -h192.168.1.1 -uroot -p123456 --databases mydb > mydb.bak;      //将192.168.1.1主机上的mydb数据库导出到本地的mydb.bak文件中

(mysqldump  -uroot -p123456 --databases mydb1 > mydb1.bak;                        //将本地mysql服务器上的mydb1数据库导出到本地的mydb1.bak文件中)

(2)导出数据表

mysqldump -h192.168.1.1 -uroot -p123456 mydb tb1 > tb1.bak;                       //将192.168.1.1主机上的mydb数据库的tb1数据表导出到本地的tb1.bak文件中

(mysqldump  -uroot -p123456 mydb1 tb2 > tb2.bak;                                      //将本地主机上的mydb1数据库的tb2数据表导出到本地的tb2.bak文件中)

2. 导入数据库(表)

(1)导入数据库

在本地数据库中创建相对应导出的数据库mydb同名的数据库:

mysql> create database mydb;

然后退出数据库,再使用以下的 命令导入数据库文件mydb.bak到本地数据库mydb中:

mysql -uroot -p123456 mydb < /root/data/mydb.bak;

或者进入mysql中,使用sourc指令完成数据库导入,如下:

mysql> source  /root/data/mydb.bak;                                          // /root/data/mydb.bak是远程数据库mydb导出文件的本地存放位置

(2)导入数据表

在本地数据库中创建相对应导出的数据库mydb同名的数据库:

mysql> create database mydb;

然后在mysql中使用source指令来完成数据表的导入,如下:

mysql> source /root/data/tb1.bak;                                               // /root/data/tb1.bak是远程数据表tb1导出文件的本地存放位置

 

三) 导出表记录到文件

mysql -hxxx.xxx.xxx.xxx -uroot -pxxxxxx -D dabasename -e "select domain from domainInfo where queryFlag = '2' or queryFlag = '3'" >  /data/dump/overdue

注意:在数据库(表)的导入、导出过程中,视数据库(表)的大小,需要一定的时间开销,请耐性等候……

mysql的日志及利用mysqldump备份及还原

日志文件:6类       一般查询日志:log,general_log,log_output       慢查询日志:       错误日志       二进制日志       中继日志      ...
  • reblue520
  • reblue520
  • 2016年01月14日 13:49
  • 2225

ThinkPHP 实现Mysql数据库备份

1、缘由 自从2010年开始试用ThinkPHP以来,的确带来了许多方便。的确给我带来了许多方便。此次应为数据频繁备份需要,而每次远程连接到服务器颇为不便。变萌生了写个ThinkPHP数据库备份...
  • bywayboy
  • bywayboy
  • 2014年05月05日 14:25
  • 8300

MySQL 单个数据库备份还原

数据库备份还原 #单个数据库备份及压缩 mysqldump -uroot -pmysql --opt --databases --routines --events --flush-logs --s...
  • kk185800961
  • kk185800961
  • 2017年07月10日 10:06
  • 748

MYSQL 数据(表、库、结构)的命令行导出、导入

导出数据库: 语法:   Sql代码 mysqldump -u用户名 -p密码 数据库名 > 路径+导出的文件名.sql   mysqldump -u用户名 -p密码 数据库名 > 路径+...
  • liu_qiqi
  • liu_qiqi
  • 2013年10月08日 16:38
  • 1878

HeidiSQL工具导出导入MySQL数据

有时候,为了数据方便导出导入SQL,我们可以借助一定的工具,方便我们队
  • u014655105
  • u014655105
  • 2014年10月29日 18:48
  • 12023

mysql怎样利用对所有数据库进行备份的备份文件只恢复某一个数据库

一:实验介绍 我们一般会在备份的时候指定--all-databases来备份所有数据库,利用该备份文件还原的时候默认会还原所有数据库(即使你指定了某一个数据库,如mysql -u root -p 数据...
  • YABIGNSHI
  • YABIGNSHI
  • 2015年03月31日 16:03
  • 3143

mongodb 数据库操作--备份 还原 导出 导入

mongodb数据备份和还原主要分为二种,一种是针对于库的mongodump和mongorestore,一种是针对库中表的mongoexport和mongoimport。一,mongodump备份数据...
  • guoqianqian5812
  • guoqianqian5812
  • 2016年09月28日 09:24
  • 5542

MySQL详解(20)-----------数据库备份和还原

数据备份: 使用mysqldump命令备份 mysqldump命令可以讲数据库中的数据备份成一个文本文件。表结果和表中的数据将存储在生成的文本中。mysqldump的工作原理很简单。他先查出需要备...
  • u011225629
  • u011225629
  • 2015年07月07日 10:21
  • 5064

Hibernate基础(一)——连接数据库,并导出表

今天总结一下利用hibernate如何来进行数据库的连接。其实总的来说,利用任何技术,连接数据库无非就那么几个步骤。1、写好配置文件 2、配置文件的读取 3、连接 如今,在hibernate上也离不...
  • wangyy130
  • wangyy130
  • 2015年12月28日 09:56
  • 1013

mysql 数据库备份 还原 导入sql文件的命令方法

备份数据库:mysqldump -hhostname -uusername -ppassword databasename > backupfile.sql 备份MySQL数据库...
  • Q1059081877Q
  • Q1059081877Q
  • 2015年08月22日 22:59
  • 1854
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:MySQL数据库(表)的导入导出(备份和还原)
举报原因:
原因补充:

(最多只允许输入30个字)