sqlserver数据库如何导出表数据到另一个数据库(1)

首先在源数据库中导出文件,此处导出.csv文件举例

2.点击下一步,选择源数据库

3.点击下一步,选择目标数据源。此处导出位.csv文件,选择平面文件目标。选择本地新建的.csv文件

3.点击下一步,勾选复制一个或多个表

4.点击先一步,选择要导出的表

5.点下一步,完成

二. 数据源导入 1.右键数据库,任务–导入数据

选择列调整,因为导出的列都是字符串类型,此处要修改下目标数据库的类型

2.点击下一步,选择导入的表

3.下一步,直到完成即可

4.下一步,直到完成即可

使用Dbeaver迁移数据库

在开发过程中,往往需要从线上的数据库中迁移一份到本地进行开发测试,以保证开发过程中的异常数据不影响其它人使用,也保证自己正在调试的业务数据不被他人污染。

在Dbeaver中进行数据库的迁移需要进行如下操作:

  1. 生成源数据库的建表DDL,在目标数据库中执行
  2. 使用Dbeaver导出数据的功能,迁移源数据库的数据

具体操作步骤如下:

右键点击源数据库,选择生成SQL->DDL->复制

在顶部tab栏开启一个SQL编辑器

将建库DDL黏贴到SQL编辑器中,根据自己需求可以改个数据库名,执行建库SQL脚本(快捷键Alt + x )

双击源数据库的表,右方编辑器区域切换至数据库的表属性页面

鼠标单击右方编辑器区域,快捷键Ctrl+A全选所有数据表(可以根据自己的需求,选择需要迁移的表)

右键蓝色区域(被选中表的区域),选择生成SQL->DDL->复制

切换到SQL编辑器窗体,顶部tab中切换当前SQL编辑器应用的数据库为刚刚新建的数据库(或者在SQL编辑器内,置顶写入一条use语句来切换操作的数据库),执行建表SQL脚本

到这里,数据库的结构已经完成了迁移,接下来只需要迁移数据即可

双击源数据库的表,右方编辑器区域切换至数据库的表属性页面

鼠标单击右方编辑器区域,快捷键Ctrl+A全选所有数据表(可以根据自己的需求,选择需要迁移的表)

右键蓝色区域(被选中表的区域),选择导出数据

选择导出目标和格式为数据库|数据库表,下一步

表映射中,点击选择按钮,选择目标数据库后,确认「映射」列的字段为existing,点击下一步

抽取设置中,可以手动调节最大线程数,来提升数据传输速率,点击下一步

数据加载设置中,勾选传送自动生成的列、取消勾选在完成时打开表编辑器,根据设备性能可以调整事务的大小,即在插入行后做提交的值,点击继续。

等待进度条走完,数据库迁移完成。

默认安装的Dbeaver在将一张两百万数据的远端表导出到本地数据库中时,抛出堆溢出的异常。

处理:找到配置文件(安装目录->dbeaver.init)调大Dbeaver的分配内存即可

Xms为最小内存,默认 64M

Xmx为最大内存,默认 1024M,调大此值即可,如10240M

在Dbeaver中右键点击表会出现以下弹窗

直接使用导出数据功能,将表数据复制到另外一个数据库时,若目标数据库不存在对应的表,Dbeaver则会执行新建表,但是这样生成的表,会丢失约束、索引等。

在数据库的迁移备份时,需要保证目标数据库的表结构与原表一致,此时这种方式不能满足需求。需要引入额外的操作,来同步表结构。

可以通过先在目标数据库建表,再迁移数据的方式来达到目的。

还是右键选择需要复制的表,但此时选择生成DDL语句

将生成的DDL语句在目标数据库执行后,再使用数据导出功能,此时Dbeaver会显示目标数据库中已存在该表

这样就能保持源表和目标表在数据和结构上的一致。

本文作者及来源:Renderbus瑞云渲染农场https://www.renderbus.com

点赞 0
收藏 0

文章为作者独立观点不代本网立场,未经允许不得转载。