免费注册 查看新帖 |

Chinaunix

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

栏位长度改不了 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-11-19 14:25 |只看该作者 |倒序浏览
有个表的栏位要从char(12)------>char(20),但是一直改不了,提示

   242: 无法开启资料库表格 (informix.bcw_file).
   106: ISAM 错误:  非独占性存取.

但是却并未发现有锁之类的,请问如何处理?

论坛徽章:
11
金牛座
日期:2015-03-19 16:56:22数据库技术版块每日发帖之星
日期:2016-08-02 06:20:00数据库技术版块每日发帖之星
日期:2016-04-24 06:20:00数据库技术版块每日发帖之星
日期:2016-04-13 06:20:00IT运维版块每日发帖之星
日期:2016-04-13 06:20:00数据库技术版块每日发帖之星
日期:2016-02-03 06:20:00数据库技术版块每日发帖之星
日期:2015-08-06 06:20:00季节之章:春
日期:2015-03-27 15:54:57羊年新春福章
日期:2015-03-27 15:54:37戌狗
日期:2015-03-19 16:56:41数据库技术版块每日发帖之星
日期:2016-08-18 06:20:00
2 [报告]
发表于 2010-11-19 14:43 |只看该作者
onstat -k 看下吧。。。使用parnum的16进制查找~

论坛徽章:
0
3 [报告]
发表于 2010-11-19 16:46 |只看该作者
本帖最后由 Hendane 于 2010-11-19 16:49 编辑

select hex(partnum) from systables
where tabname like "鎖住的表名"
這條語句會返回該表的物理地址。(取物理地址最后六位,如有大寫字母換成小寫。)
然后返回到informix用戶下
onstat -k | grep 表的物理地址(6位)
會返回該表的鎖定行。如果沒有返回。則証明該表沒有鎖定。
onstat -u | grep 鎖定地址
返回哪個用戶會話鎖定該表


这个是没发现有锁的。但是就是改不了。
改了几天了。

之前我也遇到过,但是实在没办法,就只能把这个库的所有session杀掉,再修改。
但是我想informix也不至于这么烂吧,是不是有其它方法能找到哪个session在使用这个表。

论坛徽章:
11
金牛座
日期:2015-03-19 16:56:22数据库技术版块每日发帖之星
日期:2016-08-02 06:20:00数据库技术版块每日发帖之星
日期:2016-04-24 06:20:00数据库技术版块每日发帖之星
日期:2016-04-13 06:20:00IT运维版块每日发帖之星
日期:2016-04-13 06:20:00数据库技术版块每日发帖之星
日期:2016-02-03 06:20:00数据库技术版块每日发帖之星
日期:2015-08-06 06:20:00季节之章:春
日期:2015-03-27 15:54:57羊年新春福章
日期:2015-03-27 15:54:37戌狗
日期:2015-03-19 16:56:41数据库技术版块每日发帖之星
日期:2016-08-18 06:20:00
4 [报告]
发表于 2010-11-19 17:20 |只看该作者
select hex(partnum) from systables
where tabname like "鎖住的表名"
這條語句會返回該表的物理地址。( ...
Hendane 发表于 2010-11-19 16:46



    onstat -g opn  通过partnum去匹配rstcp, 然后在onstat -u中匹配rstcp获取会话ID。

BTW:由于手动操作/即便是SHELL操作也是需要时间的,可能抓不到匹配的会话ID。 可以考虑set lock mode to wait ; lock table ..      ; drop table方式来删除表。

论坛徽章:
0
5 [报告]
发表于 2010-11-19 17:34 |只看该作者
TKS,刚试了试没找到匹配的,但是已经改掉了,可能是用户退出了。下次遇到这种情况再试试。还从来没用过
opn这个选项

论坛徽章:
11
数据库技术版块每日发帖之星
日期:2016-06-25 06:20:00数据库技术版块每日发帖之星
日期:2016-06-24 06:20:00数据库技术版块每日发帖之星
日期:2016-05-03 06:20:00数据库技术版块每日发帖之星
日期:2016-04-21 06:20:00数据库技术版块每日发帖之星
日期:2016-01-23 06:20:00数据库技术版块每日发帖之星
日期:2015-12-03 06:20:00综合交流区版块每周发帖之星
日期:2015-12-02 15:03:53数据库技术版块每日发帖之星
日期:2015-10-19 06:20:00数据库技术版块每日发帖之星
日期:2015-08-20 06:20:002015年辞旧岁徽章
日期:2015-03-03 16:54:15数据库技术版块每日发帖之星
日期:2016-07-30 06:20:00
6 [报告]
发表于 2010-11-19 22:03 |只看该作者
你的还是个中文版的!
看来挺别扭的!

这种情况肯定是锁了!

论坛徽章:
0
7 [报告]
发表于 2010-11-20 08:24 |只看该作者
知道是锁了,但是平常方法找不出锁,所以改不了。
确切的说是繁体版的

论坛徽章:
0
8 [报告]
发表于 2010-11-22 00:00 |只看该作者
回复 4# liaosnet


    這種方法是否能應對如下情況:造成表鎖的原因是由於指向該表的synonym造成(虛表有人在操作,虛表不在本機)?
   我們日常操作還有一種方法: select owner from sysmaster:syslocks where tabname like ""  和onmode -z owner 組合。但該方法只適合于常規。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP