SQL SERVER 数据库复制表结构的表怎么复制?

比特客户端
您的位置:
详解大数据
详解大数据
详解大数据
详解大数据
SQL Server 2008数据库复制实现数据库同步备份
备份 复制 同步
 企业软件热点文章
  复制是通过发布/订阅的机制进行多台之间的数据同步,我们把它用于数据库的同步备份。这里的同步备份指的是备份服务器与主服务器进行实时数据同步,正常情况下只使用主数据库服务器,备份服务器只在主服务器出现故障时投入使用。它是一种优于文件备份的数据库备份解决。
  在选择数据库同步备份解决方案时,我们评估了两种方式:SQL Server 2008的数据库镜像和SQL Server 2008数据库复制。数据库镜像的优点是系统能自动发现主服务器故障,并且自动切换至镜像服务器。但缺点是配置复杂,镜像数据库中的数据不可见(在 Management Studio中,只能看到镜像数据库处于镜像状态,无法进行任何数据库操作,最简单的查询也不行。想眼见为实,镜像数据库中的数据是否正确都不行。只有将镜像数据库切换主数据库才可见)。如果你要使用数据库镜像,强烈推荐killkill写的SQL Server 2005 镜像构建手册,我们就是按照这篇文章完成了数据库镜像部署测试。
  最终,我们选择了SQL Server 2008数据库复制。
  下面通过一个示例和大家一起学习一下如何部署SQL Server 2008数据库复制。
  测试环境:Windows Server 2008 R2 + SQL Server 2008 R2(英文版),两台服务器,一台主数据库服务器CNBlogsDB1,一台备份数据库服务器CNBlogsDB2。
  复制原理:我们采用的是基于的事务复制。主数据库服务器生成快照,备份库服务器读取并加载该快照,然后不停地从主数据库服务器复制事务日志。见下图:
  图片来自SQL Server联机丛书
  安装与配置步骤:
  一、在两台服务器上安装好SQL Server 2008 R2,主要安装的组件:Database Engine(含SQL Server Replication),Management Tools。
  二、主数据库服务器(发布服务器)的配置:
  1. 在主数据库服务器CNBlogsDB1新建示例数据库CNBlogsDemo(注意Recovery mode要使用默认值Full,只有这个模式才能进行事务复制),然后建立一张测试表,比如:CNBlogsTest。
  2. 设置存放快照的文件夹:
  创建发布之前,先设置一下存放快照的文件夹,创建发布后会在该文件夹生成快照文件,订阅服务器需要在初始化时加载该快照文件。
  选择Replication》Local Publications》属性,在出现的窗口中选择Publishers,如下图:
  点击红框处的按钮,出现设置窗口:
  在Default Snapshot Folder中设置快照文件存放路径。
  3. 在主数据库服务器创建发布:
  在Replication》Local Publications中选择New Publication,出现一个向导。先选择要发布的数据库CNBlogsDemo,然后选择发布类型Transational publication,如下图:
  点击Next,出现错误:
  原来所有要复制的表都需要有主键,刚才建CNBlogsTest表时,没有建主键。建一下主键,并重新启动向导就可以了。
  接着选择要复制的对象:
  点Next,Next,进入Snapshot Agent窗口,选择Create a snapshot immediately and keep the snapshot available to initialize subscriptions,见下图:
  Next,进入Agent Security:
  选择Security Settings,进行相应的帐户设置:
  一个是设置运行Snapshot Agent的Windows帐户,我们这里选择与SQL Server Agent同样的帐户。
  一个是设置连接发布服务器的SQL帐户,我们这里就用主数据库服务器的sa帐户。
  继续:OK,Next,Next,为这个发布起个名字:
  点击Finish,就开始正式创建发布,创建成功就会出现如下窗口:
  这时查看快照文件夹,就会看到unc文件夹,快照文件就在这个文件夹中。
  这里要考虑这样一个问题,如何让订阅服务器通过网络访问这个快照文件夹。
  我们在这个问题上折腾了一些时间,本来想通过共享文件夹的方式,但又不想打开匿名共享,折腾了半天,没搞定订阅服务器访问共享文件夹用户验证的问题。于是采用了的方式,所以,下面介绍一下如何让订阅服务器通过FTP访问快照文件。
  4. 设置快照的FTP访问
  首先在主数据库服务器上开通FTP服务,建立一个指向快照文件夹的FTP站点,设置好可以远程连接的FTP帐户。然后在这台发布服务器设置一下FTP客户端配置。配置方法如下:
  在Replication》Local Publications中选择刚才创建的发布[CNBlogsDemo]:CNBlogsDemo_Publication,选择属性》FTP Snapshot,如下图:
  选中Allow Subscribers to download snapshot files using FTP,并设置一下FTP客户端连接参数,订阅服务器就是通过这里的设置连接的(注:Path from the FTP root folder的设置要和上图一样,设置为:/ftp)。
  点击OK,这时会在快照文件夹中创建一个ftp文件夹,并在该文件夹中生成快照文件。
  这样,发布好了,下面配置订阅服务器。
  三、备份数据库服务器(订阅服务器)的配置:
  进入订阅服务器CNBlogsDB2,创建与发布服务器同名的数据库CNBlogsDemo,使用完全恢复模式。
  在Replication》Local Subscriptions中选择New Subscriptions,进入向导。
  Next,进入选择发布服务器的窗口,选择Find SQL Server Publisher,出现服务器连接窗口:
  这里要注意的是Server Name中一定要填写发布服务器的计算机名,如果计算机名连接不上,要在hosts文件中加一个IP地址解析。
  成功连接发布服务器之后,就可以看到刚才在主数据库服务器上创建的发布:
  Next,进入“分发代理工作位置”的选择窗口:
  我们这里选择pull subscriptions,把数据给拉过来,这样主数据库服务器的负担会轻些。
  Next,选择订阅服务器上的数据库,之前我们已经建好同名的数据库,所以系统自己会找到。
  Next,进入分发代理安全设置窗口:
  点击红框内的按钮,进入设置窗口:
  设置如上图,Connect to the Distributor处设置的是发布服务器的sa帐户。
  OK, Next, Next, Next:
  Next, Finish, Success:
  备份数据库的订阅就建好了!
  现在来瞧一瞧订阅服务器CNBlogsDB2上的用于复制的数据库CNBlogsDemo:
  看!我们在发布服务器上建立的表CNBlogsTest复制过来了。
  现在我们去发布服务器CNBlogsDB1上添加记录:
  再去订阅服务器CNBlogsDB2瞧一瞧:
  数据立即同步过来了!搞定!
  遇到的问题:
  在测试过程中被两个问题折腾了很长时间。
  1)发布服务器的Log Reader Agent不能启动,错误信息:
  ?The process could not execute 'sp_replcmds' on 'YCSERVER006'. (Source: MSSQL_REPL, Error number: MSSQL_REPL20011)
  Get help: http://help/MSSQL_REPL20011
  ?Cannot execute as the database principal because the principal "dbo" does not exist, this type of principal cannot be impersonated, or you do not have permission. (Source: MSSQLServer, Error number: 15517)
  Get help: http://help/15517
  ?The process could not execute 'sp_replcmds' on 'YCSERVER006'. (Source: MSSQL_REPL, Error number: MSSQL_REPL22037)
  Get help: http://help/MSSQL_REPL22037
  开始测试时,附加了一个现有数据库进行复制遇到了这个问题,附加的是一下SQL Server 2005数据库文件,Owner为空,改为sa问题就解决了,如下图:
  2)第二个问题就是前面已经描述过的订阅服务器访问发布服务器上的快照文件夹的问题,后来通过FTP的方式解决的。
  对于SQL Server 2008数据库复制,目前我就学习了这些,期待园子里有这方面经验的朋友也来分享一下,在分享过程中你也会学到很多。
[ 责任编辑:之极 ]
去年,手机江湖里的竞争格局还是…
甲骨文的云战略已经完成第一阶段…
软件信息化周刊
比特软件信息化周刊提供以数据库、操作系统和管理软件为重点的全面软件信息化产业热点、应用方案推荐、实用技巧分享等。以最新的软件资讯,最新的软件技巧,最新的软件与服务业内动态来为IT用户找到软捷径。
商务办公周刊
比特商务周刊是一个及行业资讯、深度分析、企业导购等为一体的综合性周刊。其中,与中国计量科学研究院合力打造的比特实验室可以为商业用户提供最权威的采购指南。是企业用户不可缺少的智选周刊!
比特网络周刊向企业网管员以及网络技术和产品使用者提供关于网络产业动态、技术热点、组网、建网、网络管理、网络运维等最新技术和实用技巧,帮助网管答疑解惑,成为网管好帮手。
服务器周刊
比特服务器周刊作为比特网的重点频道之一,主要关注x86服务器,RISC架构服务器以及高性能计算机行业的产品及发展动态。通过最独到的编辑观点和业界动态分析,让您第一时间了解服务器行业的趋势。
比特存储周刊长期以来,为读者提供企业存储领域高质量的原创内容,及时、全面的资讯、技术、方案以及案例文章,力求成为业界领先的存储媒体。比特存储周刊始终致力于用户的企业信息化建设、存储业务、数据保护与容灾构建以及数据管理部署等方面服务。
比特安全周刊通过专业的信息安全内容建设,为企业级用户打造最具商业价值的信息沟通平台,并为安全厂商提供多层面、多维度的媒体宣传手段。与其他同类网站信息安全内容相比,比特安全周刊运作模式更加独立,对信息安全界的动态新闻更新更快。
新闻中心热点推荐
新闻中心以独特视角精选一周内最具影响力的行业重大事件或圈内精彩故事,为企业级用户打造重点突出,可读性强,商业价值高的信息共享平台;同时为互联网、IT业界及通信厂商提供一条精准快捷,渗透力强,覆盖面广的媒体传播途径。
云计算周刊
比特云计算周刊关注云计算产业热点技术应用与趋势发展,全方位报道云计算领域最新动态。为用户与企业架设起沟通交流平台。包括IaaS、PaaS、SaaS各种不同的服务类型以及相关的安全与管理内容介绍。
CIO俱乐部周刊
比特CIO俱乐部周刊以大量高端CIO沙龙或专题研讨会以及对明星CIO的深入采访为依托,汇聚中国500强CIO的集体智慧。旨为中国杰出的CIO提供一个良好的互融互通 、促进交流的平台,并持续提供丰富的资讯和服务,探讨信息化建设,推动中国信息化发展引领CIO未来职业发展。
IT专家新闻邮件长期以来,以定向、分众、整合的商业模式,为企业IT专业人士以及IT系统采购决策者提供高质量的原创内容,包括IT新闻、评论、专家答疑、技巧和白皮书。此外,IT专家网还为读者提供包括咨询、社区、论坛、线下会议、读者沙龙等多种服务。
X周刊是一份IT人的技术娱乐周刊,给用户实时传递I最新T资讯、IT段子、技术技巧、畅销书籍,同时用户还能参与我们推荐的互动游戏,给广大的IT技术人士忙碌工作之余带来轻松休闲一刻。
微信扫一扫
关注ChinabyteSql数据库附加错误MDF文件无法复制或移动怎么办?Sql数据库附加错误MDF文件无法复制或移动怎么办?农业技术百家号Sql数据库附加错误MDF文件无法复制或移动怎么办?互联网公司数据库附加错误求急救近日,一位来自某互联网公司的技术侯先生致电达思数据恢复应急中心,内部的业务系统无法访问了,检查服务器后发现系统已经宕掉了,重启也无济于事。把服务器里面的硬盘挂在其他服务器上,可以认盘,但是sqlserver数据库的MDF文件附加错误,而且MDF文件无法复制,也没办法移动。sql数据库运行在这台戴尔服务器,硬盘型号是HE161HJ的三星硬盘达思数据库修复技术专家准确诊断数据库修复事半功倍达思数据库修复工程师请侯先生尽快到达思数据恢复中心进行急救,并不需要携带服务器,只要带上硬盘即可。侯先生不敢耽搁,很快就到了达思公司。侯先生带来的是戴尔服务器的两块硬盘,型号是HE161HJ三星硬盘,是160G的sata硬盘,达思数据恢复工程师立即把两块硬盘接在达思数据恢复专用机预检机进行底层检测。发现的确是有不少坏道。达思数据恢复软件标准版可以验证镜像后的数据是否正确对于有坏道的硬盘,达思数据恢复专家提醒您,千万不要强行读取,因为强读并不能顺利读出数据,而且还可能进一步损坏硬盘。遇到这种情况一定要找专业的数据恢复公司把硬盘做镜像处理,然后在镜像盘再修复数据。数据库虽然可以复制了,但是数据库还是坏的报错我们使用达思数据恢复专用机阿波罗把两块硬盘的镜像完全做到一个好的硬盘里。然后,用达思数据恢复软件标准版打开镜像,看看情况。打开镜像,发现数据库文件可以轻松的复制,并且也可以移动了。我们来看看附加这个数据库,数据库损坏修复的问题就交给达思sql数据库修复软件解决吧,我们打开D-RecoveryforMSSqlserver,打开数据库,看到左下角正在scan数据库,这是在自动扫描并修复数据库,根据数据库的大小不同,最多几分钟修复完成,数据库就直接打开了。修复sql数据库问题,达思sql数据库修复软件智能修复更强大用d-recoveryformssqlserver修复数据库后,怎么快速导出呢?我们建一个新库,然后把所有修好的数据表文件导入新库。达思sql数据库修复软件修复数据库问题更强大数据库导到新库后,应侯先生请求,看看能否直接附加?为了验证修复的数据库,我们来尝试用附加一下数据库。数据库修复后能够附加才是完美的sql数据库修复,达思sql数据库修复软件修复效果更好达思SQLServer数据库修复技术解密实际上,达思软件在开发D-RecoveryForMSSQLServer时,考虑到很多用户并没有真正做过数据恢复,因此,把操作尽可能做的简单化,而且,根本不需要搭建sql数据库环境。达思sql数据库修复软件,打开损坏的数据库,就开始自动修复了。用户没有察觉的情况下,数据库修复已经完成。不仅可以导出当前打开的库文件的所有数据表结构,也可以单独导出某个表的表结构。而且,把所有表数据导出保存成.sql文件,也可以单独导出某个表保存成.sql文件。用户可以根据需要,把相应的.sql文件通过MSSQLServer查询分析器手工导入到运行中的数据库中。用D-RecoveryForMSSQLServer修复数据库,最快最实用的方法是建一个新的空库,然后直接把修复的数据库导入新库,完成后直接附加就完成了。自主研发,技术领先,请支持国产软件达思sql数据库修复软件达思SQL数据库修复软件有以下特点:SQL数据库支持7.0、、、2014等几乎所有的数据库版本;可以修复数据库置疑状态;可以修复数据库无法附加或附加报错;可以修复数据表查询错误;可以修复MDF文件损坏;可以修复数据库备份文件损坏;可以修复数据库被误删除;可以修复数据库被恢复后还是坏的;可以修复一致性错误;可以修复错误823;可以修复输入数据有误;可以修复运算溢出;可以修复SQL数据库某些应用程序出错;可以修复并行事务发生死锁;针对重装系统把数据库覆盖的情况,达思软件提供了碎片重组的算法。想体验试用达思sql数据库修复软件吗?http://www.dstfix.com/list/17/26.htm点击这个网页下载试试吧!达思科技还有一款windows数据恢复软件,我们也来介绍一下这款达思数据恢复软件标准版:达思数据恢复软件标准版D-RecoveryStandard是由国内知名软件公司达思科技研发的针对windows操作系统下FAT(12/16/32)/NTFS文件系统设计的一款专业的数据恢复软件。一、硬盘分区丢失数据恢复:支持的分区故障类型:Ghost重装系统后分区被合并;Ghost备份后分区数量改变;误删除分区(删除所有分区或者删除单个分区);重新分区后数据丢失;笔记电脑一键还原后多个分区变成一个大分区等。扫描丢失分区:在没有覆盖的前提下,可以扫描到丢失的分区,并且恢复分区;分区表备份:备份当前状态的磁盘分区表信息,一旦分区损坏或丢失时,方便恢复到当前状态;分区表恢复:用事先备份好的分区表信息恢复成备份时的状态;分区表重建:扫描出来分区,选取正确的分区后进行重建分区表,即可恢复分区。二、常用的数据恢复功能适用于数据恢复故障:误删除、误格式化、文件系统损坏、误装系统、Ghost分区对分区覆盖等数据丢失的问题。全盘扫描:主要用于文件系统损坏、扫描丢失分区失败、以及其他数据恢复效果不好时,全盘扫描可以虚构出分区信息并提高数据恢复的成功率;分区扫描:主要用于分区数据被删除、分区的文件系统无法打开,分区提示格式化、分区被格式化等问题,使用分区扫描即可恢复数据。三、达思数据恢复软件标准版贵吗?不贵,因为可以免费试用,也就是说先让用户看到数据,再注册购买,这样是没有风险的。对于临时用一次的数据恢复用户来说,只需要注册24小时版就可以了,只需要99元,支持微信、支付宝支付,10秒钟就可以获取到激活码,是不是很划算呢?http://www.dstfix.com/list/17/23.htm点击下载试一下吧?本文仅代表作者观点,不代表百度立场。系作者授权百家号发表,未经许可不得转载。农业技术百家号最近更新:简介:分享科技知识,推荐高品质生活品!作者最新文章相关文章其他回答(5)
看了以上的需求,想起客户的话,这个很简单,哒哒哒哒哒.....最后给了句,你看看三天能完成吗?
我们看了三天,还没看出咋完成,哈哈...
你的需求如果是具体的特定的数据库,倒是好办,但是要通用的解决方案就麻烦了。
1、2、3基本都可以,不过1、2要修改为50条数据或是100条数据一保存,全部保存不现实,一条条保存太慢。
要考虑到参照完整性的话,数据导入一定要有特定的顺序。主表先导,再到子表。
不管你是保存为XML、EXCEL还是Sqlite还是Access或是MDF,这个都不重要,关键还是导入导出的代码。
感觉这种事情不会经常进行啊,哪家公司无聊了整天这么折腾数据啊,一年搞个一次差不多了。
收获园豆:10
园豆:25793
园豆:25793
直接双击热备.
额,这个直接用SQL Server自带的SSIS不就行了?导入导出无任何压力,特别是大数据量下,然后在C#里面直接调用SSIS就可以了(SSIS提供了.NET的API,我们可以很方便的在.NET程序中调用)。
收获园豆:30
按照你的需求,新建一个数据库,写相关的数据导出语句,视机器性能和网络状况,考虑是在另外一台服务器上弄还是在同一台服务器上弄。用作业定时执行或者手动执行导出过程,然后就备份这个新数据库,导出备份的工作就完啦~~~
导入时,同样是写好相关的数据导入语句,最简单的是导出时的数据结构和导入时的一样,这样就不用转换,直接可以查询使用了。
这样你的数据可能是这样的:主数据库maindata,备份数据库bkdata、bkdata&&如果你的数据备份很简单,可以不多个数据库,而是在同一个数据库里用不同时间戳的表,然后半年或者一年再备份一次整个备份数据库。
收获园豆:10
redgate 有一个轻量的数据导入导出工具 &并有压缩备份功能.
园豆:3592
&&&您需要以后才能回答,未注册用户请先。sql server 复制表结构,复制表数据_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
sql server 复制表结构,复制表数据
阅读已结束,下载文档到电脑
想免费下载更多文档?
定制HR最喜欢的简历
下载文档到电脑,方便使用
还剩1页未读,继续阅读
定制HR最喜欢的简历
你可能喜欢

我要回帖

更多关于 复制表到另一个数据库 的文章

 

随机推荐