当前位置:七道奇文章资讯数据防范MSSQL防范
日期:2011-05-02 15:21:00  来源:本站整理

SQL Server 7.0数据库的六种数据移动办法[MSSQL防范]

赞助商链接



  本文“SQL Server 7.0数据库的六种数据移动办法[MSSQL防范]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
本人从事的工作是数据库管理员,要保护多台服务器中的数据库,常常把某台服务器中的某个数据库移动到别的一台服务器,对数据的移动有些心得领会,但愿和大家共同交流.
1. 通过工具DTS的计划器举行导入或导出
DTS的计划器功效强盛,支持多任务,也是可视化界面,简单操作,但知道的人普通不多,假如只是举行sql server数据库中部份表的移动,用这种办法最好,当然,也可以举行全部表的移动.在SQL Server Enterprise Manager中,展开服务器左边的+,挑选数据库,右击,挑选All tasks/Import Data...(或All tasks/Export Data...),进入向导情势,按提醒一步一步走就行了,里面分得很细,可以机动的在差别数据源之间复制数据,很便利的.并且可以另存成DTS包,假如今后还有相同的复制任务,直接运行DTS包就行,省时省力.也可以直接翻开DTS计划器,办法是展开服务器名称下面的Data Transformation Services,选Local Packages,在右边的窗口中右击,选New Package,就翻开了DTS计划器.值得注意的是:假如源数据库要拷贝的表有外键,注意移动的次序,有时要分批移动,不然外键主键,索引大概丧失,移动的时刻选项旁边的提醒说的很懂得,大概一次性的复制到目标数据库中,再重新成立外键,主键,索引.
其实成立数据库时,成立外键,主键,索引的文件应当和建表文件脱离,并且用的数据文件也脱离,并辨别放在差别的驱动器上,有利于数据库的优化.
2. 操纵Bcp工具
这种工具固然在SQL Server7的版本中不举荐利用,但许大都据库管理员仍很喜好用它,特别是用过SQL Server早期版本的人.Bcp有范围性,首先它的界面不是图形化的,其次它只是在SQL Server的表(视图)与文本文件之间举行复制,但它的长处是性能好,开销小,占用内存少,速度快.有爱好的朋友可以查参考手册.
3. 操纵备份和恢复
先对源数据库举行完好备份,备份到一个设备(device)上,然后把备份文件复制到目的服务器上(恢复的速度快),举行数据库的恢复操作,在恢复的数据库名中填上源数据库的名字(名字必须相同),挑选强迫型恢复(可以覆盖从前数据库的选项),在挑选从设备中举行恢复,浏览时选中备份的文件就行了.这种办法可以完好恢复数据库,包含外键,主键,索引.
4. 直接拷贝数据文件
把数据库的数据文件(*.mdf)和日记文件(*.ldf)都拷贝到目的服务器,在SQL Server Query Analyzer顶用语句举行恢复:
EXEC sp_attach_db @dbname = 'test',
@filename1 = 'd:\mssql7\data\test_data.mdf',
@filename2 = 'd:\mssql7\data\test_log.ldf'
这样就把test数据库附加到SQL Server中,可以照常利用.假如不想用本来的日记文件,可以用以下的号令:
EXEC sp_detach_db @dbname = 'test'
EXEC sp_attach_single_file_db @dbname = 'test',
@physname = 'd:\mssql7\data\test_data.mdf'
这个语句的作用是仅仅加载数据文件,日记文件可以由SQL Server数据库自动增添,但是本来的日记文件中记录的数据就丧失了.
5. 在利用程序中定制
可以在利用程序(PB、VB)中履行自己编写的程序,也可以在Query Analyzer中履行,这种办法对比机动,其实是操纵一个平台衔接到数据库,在平台顶用的主要时SQL语句,这种办法对数据库的影响小,但是假如用到远程链接服务器,要求网络之间的传输性能好,普通有两种语句:
1> select ... into new_tablename where ...
2> insert (into) old_tablename select ... from ... where ...
辨别是前者把数据插入一个新表(先成立表,再插入数据),后者是把数据插入已经存在的一个表中,我个人喜好后者,因为在编程的构造上,利用的范围上,第二条语句强于前者.
6. SQL Server的复制功效
SQL Server供应了强盛的数据复制功效,也是最不易掌握的,具体利用请参考相关资料,值得注意的是要想成功举行数据的复制工作,有些条件是必不可少的:
1>SQL Server Agent必须启动,MSDTC必须启动.
2>全部要复制的表必须有主键.
3>假如表中有text或image数据范例,必须利用with log选项,不能利用with no_log选项.
别的max text repl size选项掌握可以复制的文本和图象数据的最大规模,超越这个限制的操作将失利.
4>在要举行复制的计算机上,应当至少是隐含同享,即同享名是C$或D$….
5>为SQL Server代理利用的Windows NT帐号不能是一个本地的系统帐号,因为本地的系统帐号不答应网络存取.
6>假如参与复制的服务器在别的的计算机域中,必须在这些域之间成立信任关系
  以上是“SQL Server 7.0数据库的六种数据移动办法[MSSQL防范]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
  • Windows 搭配 IIS7 PHP MySQL 环境
  • sqlserver索引的原理及索引成立的注意事项小结
  • SQL Join的一些总结(实例)
  • SQL的Join利用图解教程
  • SQL中JOIN和UNION辨别、用法及示例介绍
  • 关于SQL中CTE(公用表表达式)(Common Table Expression)的总结
  • mysql Out of memory (Needed 16777224 bytes)的错误办理
  • mysql提醒[Warning] Invalid (old?) table or database name问题的办理办法
  • mysql启用skip-name-resolve情势时呈现Warning的处理办法
  • mysql启用skip-name-resolve情势时呈现Warning的处理办法
  • MySQL Order By语法介绍
  • <b>MySQL ORDER BY 的实现解析</b>
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .