在学习Linux中~一起努力吧gefei.blog.chinaunix.net
gefeinic
全部博文(14)
2011年(1)
2010年(1)
2009年(12)
zhuqing_
小雅贝贝
大鬼不动
Bsolar
chenxjun
ycvip521
路人贾
张明亮亮
nvhongnv
分类: Sybase
2009-11-15 17:28:28
基本过程很简单,如下:1.备份到本地硬盘: dump transaction with truncate_only dump database … to … dump transaction 。。。
2.当装载数据库和事务日志时,为防止其他用户对数据库的操作,须把数据库设置为 dbo use only。 进行装载时的顺序为: dump transaction with no_truncate load database database_name from ... load transaction database_name from ... 。。。 online database 也可以用until指定恢复到某个时间
使用阈值管理 可以使用阈值管理,在阈值管理中安排当超过某个阈值时自动转储事务日志。当超过阀值以后,SQL Serve中断或挂起试图写这个日志的用户事务。对每一个挂起的事务 向errorlog 发一条消息;然后执行sp_thresholdaction sp_thresholdaction用户自己编写 create procedure sp_thresholdaction @dbname varchar(30), @segmentname varchar(30), as dump transaction @dbname to "DEVICE" print "LOG DUMP: %1! for %2! dumped", @segmentname, @dbname 其中参数 : @dbname 为达到阀值的数据库名; @segmentname 为达到阀值的段名;
用户数据库损坏的处理 如果数据库处于suspect状态,无法用drop database 删除时: dbcc dbrepair (db_name, dropdb) create database db_name on dev_name for load load database db_name from dump_device
master库损坏的处理 ?使用 buildmaster -m 重建一个新的 master 数据库; buildmaster 建立 master 设备并在这个设备上建立 master, model, tempdb 库。 -m 选项只重新写 master 库, 而不修改配置块或初始化 master 设备。 ? 以单用户方式重启动服务器, 如果需要的话, 则需增加转储设备; ? 从备份装载 master 数据库; ? 用 startserver 重启 SQL Server; ? 检查一致性: 对每一个数据库运行 dbcc checkalloc,并对重要的表进行检查;
但是,当我们问及sybase的技术支持是否建议使用threshold 时,他们并不积极建议这样做,理由是自动化操作往往会出现一些难于预料的结果。当然,要是有那么负责的dba,天天定时手工备份,当然是再好不过了。基本的备份操作是简单,但是我们在实际实施备策略时,往往会考虑这样那样的问题,也会出现一些意想不到的问题,比如:1、是整库备份还是增量备份2、每天什么时候备份,备份时间怎么安排3、万一需要恢复数据库,当前的备份能恢复到一个什么程度4、数据库在恢复时可能出现哪些紧急情况等等...
上一篇:【转帖】linux忘记了密码怎么办(lilo/grub)
下一篇:Sybase入门
登录 注册