timesten专题:timesten邂逅925错误-凯发app官方网站

凯发app官方网站-凯发k8官网下载客户端中心 | | 凯发app官方网站-凯发k8官网下载客户端中心
  • 博客访问: 2090524
  • 博文数量: 195
  • 博客积分: 4378
  • 博客等级: 上校
  • 技术积分: 4046
  • 用 户 组: 普通用户
  • 注册时间: 2007-09-09 11:37
个人简介

白天和黑夜只交替没交换无法想像对方的世界

文章分类

全部博文(195)

文章存档

2014年(3)

2013年(20)

2012年(18)

2011年(107)

2010年(17)

2009年(5)

2008年(20)

2007年(5)

相关博文
  • ·
  • ·
  • ·
  • ·
  • ·
  • ·
  • ·
  • ·
  • ·
  • ·

分类: oracle

2012-03-13 18:30:39

timesten专题:timesten邂逅925错误 :
 
开发人员反映说timesten的datastore突然连不上了, 查看日志,发现一直在报错:
tt0925: cannot create data store semaphores (invalid argument)
 
查看tt配置文件,发现sys.odbc.info中的连接参数为默认值64.是有点小,不能真正发挥tt的强大功能。
于是想通过增加tt的并发连接数来提高tt的处理性能,将默认连接数修改为100后,执行如下命令:
 

  1. [timesten@db_test info]$ ttdaemonadmin -stop
  2. [timesten@db_test info]$ ttdaemonadmin -start
  3. [timesten@db_test info]$ ttisql tt_utf8db
  4. 凯发app官方网站 copyright (c) 1996-2011, oracle. all rights reserved.
  5. type ? or "help" for help, type "exit" to quit ttisql.

  6. connect "dsn=tt_utf8db";
  7.   925: cannot create data store semaphores (invalid argument)
  8. the command failed.
  9. done.


第一反应,可能是kernel的一些配置不对了,但是查看 kernel.shmmax, kernel.shmall都正常。
然后开始搜索有关linux的kernel配置, 发现semaphores跟kernel.sem有关。
查看本机的 kernel.sem, 配置是 kernel.sem="250 32000 100 128"
将其修改为kernel.sem="512   32000   100  256"
同时修改 /etc/sysctl.conf, 保存。
 
再执行ttisql, 能够正常连接, 问题解决。

  1. [timesten@db_test info]$ ttisql tt_utf8db
  2. 凯发app官方网站 copyright (c) 1996-2011, oracle. all rights reserved.
  3. type ? or "help" for help, type "exit" to quit ttisql.

  4. connect "dsn=tt_utf8db";
  5. connection successful: dsn=tt_utf8db;uid=timesten;datastore=/data0/timesten/datastore/utf8db/utf8db;databasecharacterset=al32utf8;connectioncharacterset=us7ascii;driver=/data0/timesten/timesten/tt1122/lib/libtten.so;permsize=100;tempsize=32;connections=357;ckptfrequency=120;ckptlogvolume=0;typemode=0;oraclenetservicename=utf8db;
  6. (default setting autocommit=1)
  7. command> quit
  8. disconnecting...
  9. done.

 
当把参数设置为kernel.sem = 4096 524288 200 256进行连接测试,tt可支持的最大并发连接数为connections=2000.
 

  1. # sysctl -p
  2. net.ipv4.ip_forward = 0
  3. net.ipv4.conf.default.rp_filter = 1
  4. net.ipv4.conf.default.accept_source_route = 0
  5. kernel.sysrq = 0
  6. kernel.core_uses_pid = 1
  7. net.ipv4.tcp_syncookies = 1
  8. kernel.msgmnb = 65536
  9. kernel.msgmax = 65536
  10. kernel.shmmax = 4294967295
  11. kernel.shmall = 268435456
  12. fs.file-max = 6815744
  13. fs.aio-max-nr = 1048576
  14. kernel.shmall = 2097152
  15. kernel.shmmax = 2147483648
  16. kernel.shmmni = 4096
  17. kernel.sem = 4096 524288 200 256
  18. net.ipv4.ip_local_port_range = 9000 65500
  19. net.core.rmem_default = 4194304
  20. net.core.rmem_max = 4194304
  21. net.core.wmem_default = 262144
  22. net.core.wmem_max = 1048576
执行如下命令:

  1. $ ttisql tt_workshop

  2. 凯发app官方网站 copyright (c) 1996-2011, oracle. all rights reserved.
  3. type ? or "help" for help, type "exit" to quit ttisql.



  4. connect "dsn=tt_workshop";
  5. connection successful: dsn=tt_workshop;uid=timesten;datastore=/data0/timesten/datastore/tt_workshop/;databasecharacterset=zhs16gbk;connectioncharacterset=us7ascii;driver=/data0/timesten/timesten/tt1122/lib/libtten.so;permsize=100;tempsize=32;connections=2000;ckptfrequency=120;ckptlogvolume=0;typemode=0;oraclenetservicename=mytest;
  6. (default setting autocommit=1)
  7. command>
kernel.sem的几个值的具体含义如下:
 

  1. kernel.sem = semmsl semmns semopm semmni

  2.  semmsl :maximum number of semaphores per set
  3.   每个信号对象集的最大信号对象数;
  4.  semmns :maximum number of semaphores system-wide
  5.   系统范围内最大信号对象数;
  6.  semopm :maximum number of operations per set
  7.   每个信号对象支持的最大操作数;
  8.  semmni :maximum number of semaphore identifiers
  9.   系统范围内最大信号对象集数。

  10. 其中 semmns的值等于 semmsl*semmni。



阅读(5612) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~
")); function link(t){ var href= $(t).attr('href'); href ="?url=" encodeuricomponent(location.href); $(t).attr('href',href); //setcookie("returnouturl", location.href, 60, "/"); }
网站地图