




已阅读5页,还剩2页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
7操作手册Sybase数据库BCP导入导出操作手册目录1.常用数据库备份类型22.BCP数据导出使用情况23.BCP数据导入导出操作方法23.1.生成BCP导出语法23.2.BCP数据导出33.3.BCP数据导入43.4.分段导入以及日志清理43.5.前后台BCP out&in语法生成器64.注意事项61. 常用数据库备份类型l 使用Sybase的Backup Server(备份服务器),做Dump备份。 转储数据库(Dump database),就是为整个数据库(包括数据、表结构、触发器、游标、存储过程、事务日志等)做一次物理备份。转储数据库时,系统自动执行一次checkpoint,即将日志和数据从缓冲区拷贝到硬盘(只拷贝脏页),把已被分配的页(日志和数据)转储到设备。这种数据备份方式是将整个数据库的运行环境完整的复制一份,包括数据库的脏页和碎片,在使用load命令恢复时,只能恢复到同样大小的数据库中(数据和日志的大小都只能和原来完全一致),适用于在每天的日终营业网点下班后的日常备份。优点是数据库完整无误,缺点是不能直接查看备份内容。l BCP数据库备份 BCP(bulk copy)是SYBASE公司提供专门用于数据库表一级数据备份的工具,一般存放在所安装的ASE或者Open Client 的BIN目录中。利用这个命令来处理数据的备份和恢复,比软件中提供的数据备份、恢复要快的多,因为该命令对数据的操作不产生日志。2. BCP数据导出使用情况l 如果数据库受到硬伤(如数据库挂起无法恢复、或者系统表结构损坏等),造成数据不能通过备份服务器进行正常备份,或者正常备份的数据库也一样是损坏的,就要通过BCP数据导出方式,把数据库所有表数据导出来,再进行恢复。l 通过bcp备份恢复可以去掉原数据库的碎片,减小数据库大小, 提高数据库的存储效率和运行速度:Sybase数据库作为联机事务处理应用服务器,每天应用程序都对数据库做大量的插入、修改和删除等操作,不可避免的在数据库的物理存储介质上留下页碎片和扩展单元碎片,从而影响数据库的存储效率和运行速度。3. BCP数据导入导出操作方法3.1. 生成BCP导出语法命令格式:bcp 表名 out/in 路径名 文件名 -c -t 分隔符 -u (用户名)-p(密码)-S(服务器名)-J(字符串)解释:数据库名为要备份的数据库名字 表名为要备份的表的名字 out/in 备份用out,恢复用in 文件名:备份形成的文件或恢复需要的数据文件,要求包含文件的路径信息,否则默认为当前路径。 用户名:一般为sa密码:sa的口令 服务器名:如本机器连接多个数据库服务器,则需要指定相应的数据库服务器 字符串:cp850一定要填上,否则导出来的中文都是乱码。BCP out语法生成器:SELECT bcp 数据库名.pos.+ name + out + name + .txt -Usa -P -S服务名 -c -t -Jcp850 from sysobjectswhere type = Uorder by name; 通过PB将上述语法执行后形成的语句导出成txt文件,然后把后缀名改成bat形成批处理文件,在需要执行时,直接运行批处理文件即可。3.2. BCP数据导出在指定路径执行批处理后,就会开始导出数据,弹出DOS命令窗口,会显示当前的数据导出情况,如正在导出哪个表的数据,导出的数据条数多少或者报错信息等,同时,导出成功后就会在语法里设定的导出目录中生成txt文档: 3.3. BCP数据导入导出成功后,就需要重新建立一个新的数据库和新的表结构,然后通过BCP批处理导入数据。 同样,要先生成导入的语法:SELECT bcp 数据库名.pos.+ name + in + name + .txt -Usa -P S服务名 -c -t -Jcp850 from sysobjectswhere type = Uorder by name; 然后存为bat批处理文件再执行即可,同样也会弹出DOS命令窗口显示数据导入情况。3.4. 分段导入以及日志清理BCP导出数据不会产生日志信息,速度很快,而BCP数据导入的时候,如果表结构含有索引和主键,就会每BCp进一条数据,数据库都自动写一条log日志,记载此数据的上一条和下一条记录,确定本记录在此表中的准确位置,一是影响bcp速度,二是数据库的log日志飞速膨胀。 所以当日志满了之后,就会卡住不再运行,需要清理数据库日志才行,这就需要在BCP导入语法当中,在适当的位置添加调用清理日志的语法,每导出一部分表数据后,就自动清理日志。而一般服务器电脑上都有c:check文件夹,里面自带有清理日志的批处理语法,所以可以直接调用,在bcp导入语法中添加以下语句即可:call c:checkdbtruncate.bat 由于数据库的自动清除log功能只有在一个事务结束后才起作用,所以如果导出的是一个很大的表的话,有可能在导入的过程中就满日志卡住中断了,这样的话就需要对大表进行分段导出和导入,BCP大表导出例子(其中-F后面是起始行数,-L是结束行数):bcp kzx.pos.monthly_tx_summary out d:bcpdatamonthly_tx_summary1.txt -Usa -P -Skzx -c -t -Jcp850 -F 1 -L 200000 bcp kzx.pos.monthly_tx_summary out d:bcpdatamonthly_tx_summary2.txt -Usa -P -Skzx -c -t -Jcp850 -F 200001 -L 400000 bcp kzx.pos.monthly_tx_summary out d:bcpdatamonthly_tx_summary3.txt -Usa -P -Skzx -c -t -Jcp850 -F 400001 -L 600000bcp kzx.pos.monthly_tx_summary out d:bcpdatamonthly_tx_summary4.txt -Usa -P -Skzx -c -t -Jcp850 -F 600001 -L 800000bcp kzx.pos.monthly_tx_summary out d:bcpdatamonthly_tx_summary5.txt -Usa -P -Skzx -c -t -Jcp850 -F 800001 -L 1000000bcp kzx.pos.monthly_tx_summary out d:bcpdatamonthly_tx_summary6.txt -Usa -P -Skzx -c -t -Jcp850 -F 1000001与上面配套的BCP大表导入例子:bcp kzx_chg.pos.monthly_tx_summary ind:bcpdatamonthly_tx_summary1.txt -Usa -P -Skzx -c -t -Jcp850 bcp kzx_chg.pos.monthly_tx_summary in d:bcpdatamonthly_tx_summary2.txt -Usa -P -Skzx -c -t -Jcp850 bcp kzx_chg.pos.monthly_tx_summary in d:bcpdatamonthly_tx_summary3.txt -Usa -P -Skzx -c -t -Jcp850 bcp kzx_chg.pos.monthly_tx_summary ind:bcpdatamonthly_tx_summary4.txt -Usa -P -Skzx -c -t -Jcp850bcp kzx_chg.pos.monthly_tx_summary ind:bcpdatamonthly_tx_summary5.txt -Usa -P -Skzx -c -t -Jcp850bcp kzx_chg.pos.monthly_tx_summary ind:bcpdatamonthly_tx_summary6.txt -Usa -P -Skzx -c -t -Jcp850BCP分段导入导出有完整的操作方案文档,有兴趣的可以另外学习和参考。3.5. 前后台BCP out&in语法生成器以下是针对前台sybase网络版数据库的BCP语法生成器:/*BCP OUT */SELECT bcp 数据库名.dbo.+ name + out + name + .txt -Usa -P S服务名 -c -t -Jcp850 from sysobjectswhere type = Uorder by name;/*BCP IN*/SELECT bcp 数据库名.dbo.+ name + in + name + .txt -Usa -P S服务名 -c -t -Jcp850 from sysobjectswhere type = Uorder by name;后台数据库BCP语法生成器:/*BCP OUT */SELECT bcp 数据库名.pos.+ name + out + name + .txt -Usa -P -S服务名 -c -t -Jcp850 from sysobjectswhere type = Uorder by name;/*BCP IN*/SELECT bcp 数据库名.pos.+ name + in + name + .txt -Usa -P -S服务名 -c -t -Jcp850 from sysobjectswhere type = Uorder by name;4. 注意事项l 数据库属性必须把选项中的“允许选择进入/批量复制”和“检查点上截断日志”两项勾上。l 导入的数据库以及temdb大小要足够大。l 如果数据量大的话,导出的txt文件大小会很大,故导出的路径要保证有足够的空间。l 导入的数据库的表结构必须与导出数据库的表结构一致,否则会导入失败,对于一些临时
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年数字内容创作者考试试卷及答案
- 2025年小学数学期末考试题及答案
- 2025年物业管理与服务行业能力考试卷及答案
- 2025年数据分析与处理技能测试题及答案
- 2025年兽医学专业核心知识考试题及答案
- 2025年汽车工程技术专业考试题及答案
- 2025年跨文化交际能力评估试卷及答案
- 2025年跨境电商业务管理考试试卷及答案
- 2025年健康管理师考试试卷及答案指导
- 2025年环境工程技术人员考试题及答案
- 香港证券及期货从业资格考试温习手册版HK
- 2025年中考物理知识点归纳(挖空版)
- 2024年安徽省初中学业水平考试生物试题含答案
- 2024年浙江省中考英语试题卷(含答案解析)
- 2024年演出经纪人考试必背1000题及完整答案(各地真题)
- 团员组织关系转接介绍信(样表)
- GB/T 18926-2008包装容器木构件
- 汉语拼音音节表带声调
- 假发行业英语术语整理
- 中国银行营业网点基础服务礼仪规范
- 一份很详细的模具报价单
评论
0/150
提交评论