免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3229 | 回复: 7
打印 上一主题 下一主题

sybase早版本中增加原有数据库空间出错 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-12-13 14:50 |只看该作者 |倒序浏览
环境:
    操作系统是win2000,分区格式为NTFS,分为C:,D:,E:三个区,D:为存放数据库文件地方。
    sybase为11.9

问题:
    当应用在执行数据操作时,会提示我Can't allocate space for object `%.*s' in database `%.*s' because `%.*s' segment is full. If you ran out of space in syslogs, dump the transaction log. Otherwise, use ALTER DATABASE or sp_extendsegment to increase size of the segment.我先是尝试清除日志,当我清除日志后问题依然存在,后来发现是当初分配给该数据库的空间已经用完(D盘硬盘空间还有很大,只是分配给该数据库的空间已经用完)。我尝试用alter database database_name on database_drive1=100但无效。用sybase central在数据库右键属性里进行修改也不能成功。甚至后来出现"ALTER DATABASE failed. Log space in master database has reached the last chance threshold. Please free-up log space in master database and try again. "这样的错误。

现在我是不知如何是好。请众兄弟姐妹指教指教!我万分感谢!因为是新人没有分可给。以后将报答!

[ 本帖最后由 dtfox 于 2008-12-13 16:09 编辑 ]

论坛徽章:
0
2 [报告]
发表于 2008-12-13 14:55 |只看该作者
并且已经在google和baidu进行过搜索,未果!

论坛徽章:
0
3 [报告]
发表于 2008-12-13 14:58 |只看该作者
name                    db_size      owner                    dbid        created        status                                                                                                
----                    -------      -----                    ----------- -------        ------                                                                                                
past                        1500.0 MB sa                                6 Dec 13, 2005  trunc log on chkpt                                                                                    

device_fragments              size          usage                free kbytes
----------------              ----          -----                -----------
past_data                      1000.0 MB    data only                      0
past_log                      500.0 MB      log only                  511984

数据库的情况,空间没有了。

论坛徽章:
0
4 [报告]
发表于 2008-12-14 00:38 |只看该作者
11.9啊...

那就disk init先,建立一个设备,不过这个版本需要指定设备号,具体的语法可以查到
然后alter database past on 新设备

然后操作就不会报错了

论坛徽章:
0
5 [报告]
发表于 2008-12-14 16:37 |只看该作者
原帖由 D_D_D_D 于 2008-12-14 00:38 发表
11.9啊...

那就disk init先,建立一个设备,不过这个版本需要指定设备号,具体的语法可以查到
然后alter database past on 新设备

然后操作就不会报错了


我不知道disk init怎么做,因为我根本没有使用过sybase。希望能得到详细操作流程和具体语句。谢谢

在CSDN上听有人说是因为master使用太多需要清理,不知道是不是那么一回事。我也去测试一下。

论坛徽章:
0
6 [报告]
发表于 2008-12-14 17:02 |只看该作者
看见CSDN上有人那么据说后,我去sp_helpdb master后确认了有项目为0了,在使用dump tran master with truncate_only清理后,已经有了些许的空间,但是当我通过sybase central增加该数据库的空间时,确实不在出现以上错误,但是仍然提示我:“CREATE of ALTER DATABASE failed because the device 'past_data' has no space available either for log or for data.”,是不是因为该数据库本身没有空间,就无法增加其空间呢?该如何处理?谢谢。

我SQL Advantage里用alter database past on past_data = 100也是提示上述错误。

论坛徽章:
0
7 [报告]
发表于 2008-12-14 19:05 |只看该作者
先删master的日志是正确的,disk init举例

DISK INIT
NAME=设备名,
PHYSNAME=物理设备名,
VDEVNO=虚拟设备号,
SIZE=块数
希望还是能自己看看,别人都写了对提高没有任何好处的

然后就可以alter database  past on了

设备最好做的大点,因为11.9不支持 disk reinit

论坛徽章:
0
8 [报告]
发表于 2008-12-15 17:03 |只看该作者
非常谢谢4d的帮助,现问题已经解决。谢谢谢谢。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP