免费注册 查看新帖 |

ChinaUnix.net

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 34455 | 回复: 13

请教OFFLINE数据库如何删除?(已搞定) [复制链接]

论坛徽章:
0
发表于 2010-07-13 15:41 |显示全部楼层
本帖最后由 redwaves 于 2010-07-14 18:34 编辑

请教OFFLINE数据库如何删除?

在作数据库异机恢复时,先将数据库以单用户模式启动后成功恢复了master数据库.
重启数据库后通过sp_helpdb可以看到要恢复的数据库xhb是offline状态

通过drop database xhb,提示:
1> drop database xhb
2> go
Msg 840, Level 17, State 2:
Server 'AS5XHB', Line 1:
Device 'xhb_dev' (with physical name '/opt/sybase1254/data/xhb_dev.dat', and
virtual device number 3) has not been correctly activated at startup time.
Please contact a user with System Administrator (SA) role.
1>

请问如何删除这个库和设备文件重建以便作xhb这个数据库的恢复?

论坛徽章:
30
ChinaUnix元老
日期:2018-07-04 15:10:36CU大牛徽章
日期:2013-04-17 10:59:39荣誉版主
日期:2015-02-04 10:04:082015年亚洲杯之阿联酋
日期:2015-02-06 17:15:532015亚冠之武里南联
日期:2015-06-06 15:40:252015亚冠之北京国安
日期:2015-06-17 15:42:412022北京冬奥会纪念版徽章
日期:2015-08-10 16:30:322015亚冠之阿尔纳斯尔
日期:2015-09-20 09:42:1215-16赛季CBA联赛之北京
日期:2016-01-15 10:03:5915-16赛季CBA联赛之青岛
日期:2016-04-26 16:44:4915-16赛季CBA联赛之广夏
日期:2018-07-04 15:33:21C
日期:2016-10-25 16:12:14
发表于 2010-07-13 17:22 |显示全部楼层
都告诉你了先DROP设备,再DROP database了。

论坛徽章:
6
水瓶座
日期:2014-06-04 03:34:37水瓶座
日期:2014-06-17 13:20:31数据库技术版块每日发帖之星
日期:2016-07-09 06:20:00数据库技术版块每日发帖之星
日期:2016-07-17 06:20:00数据库技术版块每日发帖之星
日期:2016-08-01 06:20:00数据库技术版块每日发帖之星
日期:2016-08-04 06:20:00
发表于 2010-07-13 18:08 |显示全部楼层
回复 2# wfcjz


   理解不对,设备Device 'xhb_dev' 在数据库服务器启动的时候没有被激活,所以才导致删除其上的数据库时报错。

必须按照:先删除数据库,然后再删被数据库使用的设备。这个顺序。

论坛徽章:
6
水瓶座
日期:2014-06-04 03:34:37水瓶座
日期:2014-06-17 13:20:31数据库技术版块每日发帖之星
日期:2016-07-09 06:20:00数据库技术版块每日发帖之星
日期:2016-07-17 06:20:00数据库技术版块每日发帖之星
日期:2016-08-01 06:20:00数据库技术版块每日发帖之星
日期:2016-08-04 06:20:00
发表于 2010-07-13 18:14 |显示全部楼层
回复 1# redwaves


    两种方法:
第一种:
use master
go
dbcc traceon(3604)
go
dbcc dbrepair('xhb',dropdb)
go

第二种: 
use master
go
delete from sysusages where dbid = db_id('xhb')
go
delete from sysdatabases where name='xhb'
go

然后,手动删除xhb所使用的设备。 delete from sysdevices where name ='设备逻辑名字'
最后重启sybase数据库,即可!(利用sysusages表中的vdevno或者low vstart对应关系找到设备名称,稍微有点麻烦。)


ps:请慎用第二种方法。

论坛徽章:
0
发表于 2010-07-13 18:45 |显示全部楼层
多谢andkylee

论坛徽章:
0
发表于 2010-07-13 18:46 |显示全部楼层
都告诉你了先DROP设备,再DROP database了。
wfcjz 发表于 2010-07-13 17:22



    我知道先drop database 然后drop device

论坛徽章:
30
ChinaUnix元老
日期:2018-07-04 15:10:36CU大牛徽章
日期:2013-04-17 10:59:39荣誉版主
日期:2015-02-04 10:04:082015年亚洲杯之阿联酋
日期:2015-02-06 17:15:532015亚冠之武里南联
日期:2015-06-06 15:40:252015亚冠之北京国安
日期:2015-06-17 15:42:412022北京冬奥会纪念版徽章
日期:2015-08-10 16:30:322015亚冠之阿尔纳斯尔
日期:2015-09-20 09:42:1215-16赛季CBA联赛之北京
日期:2016-01-15 10:03:5915-16赛季CBA联赛之青岛
日期:2016-04-26 16:44:4915-16赛季CBA联赛之广夏
日期:2018-07-04 15:33:21C
日期:2016-10-25 16:12:14
发表于 2010-07-14 11:15 |显示全部楼层
回复 3# andkylee


   看误了,不知道最近怎么了。

多担旦

论坛徽章:
6
水瓶座
日期:2014-06-04 03:34:37水瓶座
日期:2014-06-17 13:20:31数据库技术版块每日发帖之星
日期:2016-07-09 06:20:00数据库技术版块每日发帖之星
日期:2016-07-17 06:20:00数据库技术版块每日发帖之星
日期:2016-08-01 06:20:00数据库技术版块每日发帖之星
日期:2016-08-04 06:20:00
发表于 2010-07-14 12:57 |显示全部楼层
回复 7# wfcjz


    呵呵,没事。技术的事可以讨论的。

论坛徽章:
0
发表于 2010-07-14 17:30 |显示全部楼层
本帖最后由 redwaves 于 2010-07-14 17:36 编辑

回4楼
按照您的指导作了还是不成功

1> use master
2> go
1> dbcc traceon(3604)
2> go
00:00000:00012:2010/07/14 17:15:35.75 server  DBCC TRACEON 3604, SPID 12
DBCC execution completed. If DBCC printed error messages, contact a user with
System Administrator (SA) role.
1> dbcc dbrepair('xhb',dropdb)
2> go
Msg 2573, Level 16, State 1:
Server 'AS5XHB', Line 1:
Database 'xhb' is not marked suspect. You cannot drop it with DBCC.
DBCC execution completed. If DBCC printed error messages, contact a user with
System Administrator (SA) role.
1>

按提示需要将数据库xhb标记为suspect
查过手册提示:
After You Execute sp_marksuspect
Once the procedure is created successfully, updates to the system catalog should be immediately disabled as follows:

1> sp_configure "allow updates", 0
2> go


Syntax
sp_marksuspect database_name


Example
1> sp_marksuspect PRODUCTION
2> go

通过sp_help没有找到sp_marksuspect命令,版本12.5.4

还有别的办法吗?

论坛徽章:
6
水瓶座
日期:2014-06-04 03:34:37水瓶座
日期:2014-06-17 13:20:31数据库技术版块每日发帖之星
日期:2016-07-09 06:20:00数据库技术版块每日发帖之星
日期:2016-07-17 06:20:00数据库技术版块每日发帖之星
日期:2016-08-01 06:20:00数据库技术版块每日发帖之星
日期:2016-08-04 06:20:00
发表于 2010-07-14 18:06 |显示全部楼层
sp_listsuspect_db 看看有没有数据库处于可疑状态?


只有sp_makesuspect_obj ,而没有让数据库直疑的过程。 
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

基于案例的 SQL 优化实战训练营

讲师:中电福富特级专家梁敬彬,参与本次课程培训,你将收获:
1. 能编写出较为高效的 SQL;
2. 能解决70%以上的数据库常见优化问题;
3. 能得到老师提供的高效的相关工具和解决方案;
4. 能举一反三,收获不仅仅是 SQL 优化。
现在购票享受8.8折优惠!
----------------------------------------
优惠时间:2019年3月20日前

大会官网>>
  

北京盛拓优讯信息技术有限公司. 版权所有 16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122
中国互联网协会会员  联系我们:huangweiwei@it168.com
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP