免费注册 查看新帖 |

Chinaunix

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

数据库中某表的出现异常,请高手赐教 [复制链接]

论坛徽章:
1
15-16赛季CBA联赛之江苏
日期:2017-04-05 11:23:15
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-02-13 09:54 |只看该作者 |倒序浏览
在数据库a中执行一SQL语句时,总是显示“执行中。。。。。。”然后就停在那,但是以前执行这一SQL是可以的,在同一机器上另一个数据库b上也是可以的,数据库a与b的结构相同,而且检查过SQL所涉及到的表的索引都一样。
请各位指点!谢谢。。。


[ 本帖最后由 yunzhongyue 于 2006-2-13 13:27 编辑 ]

论坛徽章:
0
2 [报告]
发表于 2006-02-13 10:53 |只看该作者
日志满了吧?

论坛徽章:
0
3 [报告]
发表于 2006-02-13 10:55 |只看该作者

回复 1楼 yunzhongyue 的帖子

online.log
onstat .......

论坛徽章:
1
15-16赛季CBA联赛之江苏
日期:2017-04-05 11:23:15
4 [报告]
发表于 2006-02-13 11:48 |只看该作者
数据库没有问题的,现在我又发现只是一个表有问题
当执行

  1. SELECT *                       FROM pmn_file WHERE
  2. (pmn20 - pmn50 +pmn55)>0
复制代码

是没有问题的,可是执行
  1. SELECT UNIQUE pmn01  FROM pmn_file WHERE
  2. (pmn20 - pmn50 +pmn55)>0
复制代码

就一直显示“执行中。。。”好像死机了一样
以前这个SQL是可以执行的啊!

[ 本帖最后由 yunzhongyue 于 2006-2-13 11:55 编辑 ]

论坛徽章:
0
5 [报告]
发表于 2006-02-13 13:46 |只看该作者

回复 4楼 yunzhongyue 的帖子

会不会是dbspace的空间不够sort操作?

用onstat -g mgm命令看看是不是在等待什么资源?

Load Control:    (Memory)      (Scans)  (Priority)  (Max Queries)   (Reinit)
                              Gate 1       Gate 2      Gate 3          Gate 4       Gate 5
(Queue Length)           0            0           0                 0                     0

[ 本帖最后由 ahkai 于 2006-2-13 14:02 编辑 ]

论坛徽章:
1
15-16赛季CBA联赛之江苏
日期:2017-04-05 11:23:15
6 [报告]
发表于 2006-02-13 14:39 |只看该作者
[informix@nberp8 informix]$ onstat -g mgm

Informix Dynamic Server Version 7.30.UC7   -- On-Line -- Up 7 days 15:41:47 -- 742392 Kbytes

Memory Grant Manager (MGM)
--------------------------

MAX_PDQPRIORITY:  100
DS_MAX_QUERIES:    13691
DS_MAX_SCANS:      1048576
DS_TOTAL_MEMORY:   1752544 KB

Queries:   Active     Ready   Maximum
                0         0     13691

Memory:     Total      Free   Quantum
(KB)       1752544   1752544       128

Scans:      Total      Free   Quantum
           1048576   1048576         1

Load Control:    (Memory)      (Scans)  (Priority)  (Max Queries)   (Reinit)
                   Gate 1       Gate 2      Gate 3         Gate 4     Gate 5
(Queue Length)          0            0           0              0          0

Active Queries:  None

Ready Queries:  None

Free Resource        Average #        Minimum #
--------------    ---------------     ---------
Memory               0.0 +- 0.0          219068
Scans                0.0 +- 0.0          1048576

Queries              Average #        Maximum #    Total #
--------------    ---------------     ---------    -------
Active               0.0 +- 0.0             0          0
Ready                0.0 +- 0.0             0          0

Resource/Lock Cycle Prevention count:  0
各位帮我看看是否有什么不正常的,谢谢,我看不太懂

论坛徽章:
0
7 [报告]
发表于 2006-02-13 14:45 |只看该作者

回复 6楼 yunzhongyue 的帖子

Load Control:    (Memory)      (Scans)  (Priority)  (Max Queries)   (Reinit)
                              Gate 1       Gate 2      Gate 3          Gate 4       Gate 5
(Queue Length)           0            0           0                 0                     0

都是0表示没有在等待资源。

论坛徽章:
0
8 [报告]
发表于 2006-02-13 14:52 |只看该作者

回复 6楼 yunzhongyue 的帖子

用onstat -g sql看看当前的SQL,选择你执行的SQL的session id。

执行onstat -g sql session_id ,看看有没有ISAM ERROR或SQL ERROR。

论坛徽章:
0
9 [报告]
发表于 2006-02-13 20:00 |只看该作者
原帖由 yunzhongyue 于 2006-2-13 11:48 发表
数据库没有问题的,现在我又发现只是一个表有问题
当执行

  1. SELECT *                       FROM pmn_file WHERE
  2. (pmn20 - pmn50 +pmn55)>0
复制代码

是没有问题的,可是执行
[code]SELECT UNIQU ...



表格的是数据是不是很多,检查pmn_file的索引,对表格做update statictis个优化,在试试看!

论坛徽章:
1
15-16赛季CBA联赛之江苏
日期:2017-04-05 11:23:15
10 [报告]
发表于 2006-02-14 08:29 |只看该作者
原帖由 eric.xie 于 2006-2-13 20:00 发表



表格的是数据是不是很多,检查pmn_file的索引,对表格做update statictis个优化,在试试看!


多谢指点,此表的数据大概有25万条,我怀疑也是索引坏掉了,我把数据库重新启动了一下就OK了。

[ 本帖最后由 yunzhongyue 于 2006-2-14 08:30 编辑 ]
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP