﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>C++博客-唯C主义-随笔分类-ARCSDE</title><link>http://www.cppblog.com/netboy/category/9582.html</link><description /><language>zh-cn</language><lastBuildDate>Tue, 31 May 2011 13:01:59 GMT</lastBuildDate><pubDate>Tue, 31 May 2011 13:01:59 GMT</pubDate><ttl>60</ttl><item><title>ArcSDE常用命令之sdemon</title><link>http://www.cppblog.com/netboy/archive/2011/05/31/147770.html</link><dc:creator>王勇良</dc:creator><author>王勇良</author><pubDate>Tue, 31 May 2011 10:06:00 GMT</pubDate><guid>http://www.cppblog.com/netboy/archive/2011/05/31/147770.html</guid><wfw:comment>http://www.cppblog.com/netboy/comments/147770.html</wfw:comment><comments>http://www.cppblog.com/netboy/archive/2011/05/31/147770.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.cppblog.com/netboy/comments/commentRss/147770.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/netboy/services/trackbacks/147770.html</trackback:ping><description><![CDATA[sdemon -o status<br />作用：查看sde连接状态，快速查看有几个连接<br />sdemon -o info -I users<br />作用：查看sde连接状态，查看连接的用户明细（用户名、操作系统、连接开始时间）<br />sdemon -o kill -t 146 -p sde<br />作用：可以利用该命令直接使某个用户断开连接，需要提供断开用户的S-ID(可以通过上一个命令查看)，需要提供sde用户密码<br />sdemon -o kill -t all -s&nbsp;127.0.0.1 -i 5151 -p sde<br />作用：可以利用该命令直接使所有用户断开连接<br />sdemon -o info -I instances<br />作用：查看sde的实例个数和名称<br />sdemon -o info -I stats<br />作用：查看sde连接的S-ID、读、写、Buffers等值的统计<br />sdemon -o info -I locks<br />作用：查看sde用户所占用的表，表后面的数字为sde库里面table_registry表对应的注册ID<br />sdemon -o info -I config<br />作用：查看SDE版本号、数据库名称、最大连接数、SDE的安装的根路径、最大最小缓冲值大小、sde实例名、sde端口号等相关的设置参数。其他某些参数其实就是giomgr.defs文件的内容。<br />sdemon -o info -I vars<br />作用：查看操作系统类型、操作系统环境变量、数据库实例名、系统盘符、SDE安装目录等信息。<br />sdemon -o start<br />sdemon -o shutdown<br />sdemon -o pause<br />sdemon -o resume<br />作用：利用该命令对sde服务进行开始、暂停、继续、关闭等管理，需要提供sde用户的密码，在非windows操作系统经常需要sdemon -o start -p sde启动服务<br /><br />sdemon -?<br />查看sdemon命令的所有用法<img src ="http://www.cppblog.com/netboy/aggbug/147770.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/netboy/" target="_blank">王勇良</a> 2011-05-31 18:06 <a href="http://www.cppblog.com/netboy/archive/2011/05/31/147770.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>SDE直连</title><link>http://www.cppblog.com/netboy/archive/2011/05/29/147625.html</link><dc:creator>王勇良</dc:creator><author>王勇良</author><pubDate>Sun, 29 May 2011 07:41:00 GMT</pubDate><guid>http://www.cppblog.com/netboy/archive/2011/05/29/147625.html</guid><wfw:comment>http://www.cppblog.com/netboy/comments/147625.html</wfw:comment><comments>http://www.cppblog.com/netboy/archive/2011/05/29/147625.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/netboy/comments/commentRss/147625.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/netboy/services/trackbacks/147625.html</trackback:ping><description><![CDATA[<p>通过SDE服务来连接Oracle数据库，SDE服务存在很多不稳定的地方。当连接SDE的用户数多了的时候经常出现故障。为了避免这种情况，SDE提供了直连Oracle的方式，即通过Oracle的连接方式来连接。 <br />
</p>
<div>
<div>直连的优点：</div>
<div>&nbsp;</div>
<div></div>
<div>1)&nbsp;不管理ArcSDE服务</div>
<div>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;直连数据库驱动不需要管理ArcSDE服务，不需要安装、配置和启动中间进程giomgr.exe。</div>
<div>2)&nbsp;为可伸缩的系统提供更多的选择</div>
<div>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;直连架构将ArcSDE组件的功能迁移到桌面执行，移除了服务器端的ArcSDE负载，释放更多的资源可供DBMS使用，为数据库服务器提供了更好的可伸缩性。</div>
<div>&nbsp;3)&nbsp;直连速度更快</div>
<div>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;直连在客户机上执行处理，比服务器端处理更快。与客户机上执行处理相比，服务器端执行要同时处理来自许多客户机的请求，然后把计算结果需通过网络传送到客户机。</div>
</div>
<p><br />
直连的前提条件：<br />
<br />
如果是Oracle，客户端对服务器数据库的直连，必须要安装Oracle的客户端程序并且配置好。装oracle客户端，然后在Net Manager下面配置一下连接。<br />
<br />
直连的参数配置：<br />
Oracle：设置service、username、password三项即可<br />
<br />
<span style="font-family: Verdana; color: black; font-size: 10.5pt; mso-fareast-font-family: 宋体; mso-bidi-font-family: 宋体; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA" lang="EN-US">service：<a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#115;&#100;&#101;&#64;&#111;&#114;&#97;&#99;&#108;&#101;&#49;&#48;&#103;"><span style="color: red">sde@oracle10g</span></a>(</span><span style="font-family: 宋体; color: black; font-size: 10.5pt; mso-bidi-font-family: 宋体; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">或</span><span style="font-family: Verdana; color: black; font-size: 10.5pt; mso-fareast-font-family: 宋体; mso-bidi-font-family: 宋体; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA" lang="EN-US">oracle9i)<br />
username：</span><span style="font-family: Verdana; color: red; font-size: 10.5pt; mso-fareast-font-family: 宋体; mso-bidi-font-family: 宋体; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA" lang="EN-US">username</span><span style="font-family: 宋体; color: black; font-size: 10.5pt; mso-bidi-font-family: 宋体; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">（</span><span style="font-family: Verdana; color: black; font-size: 10.5pt; mso-fareast-font-family: 宋体; mso-bidi-font-family: 宋体; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA" lang="EN-US">比如</span><span style="font-family: 宋体; color: black; font-size: 10.5pt; mso-bidi-font-family: 宋体; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">：</span><span style="font-family: 宋体; color: red; font-size: 10.5pt; mso-bidi-font-family: 宋体; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">sde）</span><span style="font-family: Verdana; color: black; font-size: 10.5pt; mso-fareast-font-family: 宋体; mso-bidi-font-family: 宋体; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA" lang="EN-US"><br />
<a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#112;&#97;&#115;&#115;&#119;&#111;&#114;&#100;&#64;&#111;&#114;&#97;&#99;&#108;&#101;">password<font color="#000000">：</font>password@oracle</a>客户端连接服务名(比如：<a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#115;&#100;&#101;&#64;&#108;&#111;&#99;&#97;&#108;&#104;&#111;&#115;&#116;&#58;&#49;&#53;&#50;&#49;&#47;&#111;&#114;&#99;&#108;"><span style="color: red">sde@localhost:1521/orcl</span></a> </span><span style="font-family: Verdana; color: black; font-size: 10.5pt; mso-fareast-font-family: 宋体; mso-bidi-font-family: 宋体; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA" lang="EN-US">)<br style="mso-special-character: line-break" />
<br />
SQLServer：设置Service、Database、username、password即可，<br />
<br />
service：sde:sqlserver:IP(比如：sde:sqlserver:127.0.0.1)<br />
database：sde数据库名(比如：sde)<br />
username：username(比如：sde)<br />
password：password(比如：sde)</span></p><img src ="http://www.cppblog.com/netboy/aggbug/147625.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/netboy/" target="_blank">王勇良</a> 2011-05-29 15:41 <a href="http://www.cppblog.com/netboy/archive/2011/05/29/147625.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>修改SDE最大连接数</title><link>http://www.cppblog.com/netboy/archive/2011/05/29/147616.html</link><dc:creator>王勇良</dc:creator><author>王勇良</author><pubDate>Sun, 29 May 2011 06:05:00 GMT</pubDate><guid>http://www.cppblog.com/netboy/archive/2011/05/29/147616.html</guid><wfw:comment>http://www.cppblog.com/netboy/comments/147616.html</wfw:comment><comments>http://www.cppblog.com/netboy/archive/2011/05/29/147616.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/netboy/comments/commentRss/147616.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/netboy/services/trackbacks/147616.html</trackback:ping><description><![CDATA[<p>一、设置CONNECTIONS参数</p>
<p>设置CONNECTIONS参数为你的最大连接数。默认为48，可以修改为200</p>
<p>二、修改SharedSection参数值</p>
<p>在Windows 操作系统上，ArcSDE 服务作为一个&#8220;非交互式桌面程序&#8221;运行，而windows的一个称作SharedSection的初始化参数限定了为&#8220;非交互式桌面程序&#8221;分配的最大堆栈内存，我们可以通过windows注册表修改该值。</p>
<p>点击&#8220;开始&#8221;－&gt;&#8220;运行&#8221;－&gt;&#8221;regedit&#8221;，打开注册表：找到以下路径：<br />
[url=file://\\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session]\\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session[/url] Manager\ SubSystems\Windows</p>
<p>这个字符串示例如下：</p>
<p>%SystemRoot%\system32\csrss.exe ObjectDirectory=\Windows SharedSection=1024,3072,512 Windows=On SubSystemType=Windows ServerDll=basesrv,1 ServerDll=winsrv:UserServerDllInitialization,3 ServerDll=winsrv:ConServerDllInitialization,2 ProfileControl=Off MaxRequestThreads=16</p>
<p>这个字符串包含了windows的初始化参数。在该字符串中，我们可以找到SharedSection参数，默认值是1024,3072,512。第三个值（512Kb）就是为&#8220;非交互式桌面程序&#8221;分配的最大堆栈内存。 在这个数值（512Kb）下，ArcSDE能够接受的最大连接数大约为56个。增加该数值到2M就能够使ArcSDE支持的最大连接数达到270个。即此时的设置为：1024,3072,2048</p>
<p><br />
对于Windows来说，所有的堆栈内存（非交互式桌面和交互式桌面）总和是48Mb，因此，我们在调整SharedSection参数的时候需要仔细。<br />
</p><img src ="http://www.cppblog.com/netboy/aggbug/147616.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/netboy/" target="_blank">王勇良</a> 2011-05-29 14:05 <a href="http://www.cppblog.com/netboy/archive/2011/05/29/147616.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>自动踢除SDE死连接</title><link>http://www.cppblog.com/netboy/archive/2011/05/29/147613.html</link><dc:creator>王勇良</dc:creator><author>王勇良</author><pubDate>Sun, 29 May 2011 06:04:00 GMT</pubDate><guid>http://www.cppblog.com/netboy/archive/2011/05/29/147613.html</guid><wfw:comment>http://www.cppblog.com/netboy/comments/147613.html</wfw:comment><comments>http://www.cppblog.com/netboy/archive/2011/05/29/147613.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/netboy/comments/commentRss/147613.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/netboy/services/trackbacks/147613.html</trackback:ping><description><![CDATA[<p>一、设置TCPKEEPALIVE参数为TRUE</p>
<p>方法一：用PLSQL或TOAD打开SDE用户下的表SEVER_CONFIG，编辑字段CONNECTIONS值为你的最大连接数。设置字段TCPKEEPALIVE值为TRUE。<br />
方法二：打开SDE的安装目录下的（一般安装路径为C:\arcgis\ArcSDE\sqlexe\etc）giomgr.defs文件进行编辑，设置CONNECTIONS参数为你的最大连接数。然后设置TCPKEEPALIVE参数为TRUE。 通过命令导入到数据库中：sdeconfig &#8211;o import &#8211;f C:\arcgis\ArcSDE\sqlexe\etc\giomgr.defs &#8211;i esri_sde(数据库实例名) &#8211;s (ServerName) &#8211;u sde(用户名) &#8211;p sde(密码) 。 设置好后需要重启SDE服务才能生效。</p>
<p>二、设置KeepAliveTime参数值<br />
在 Microsoft Windows 设置 KeepAliveTime 为 300000. <br />
\HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\TCPIP\Parameters\KeepAliveTime<br />
If the如果这个注册表键值不存在，则要自己创建这个值. <br />
同进这个时间指的是毫秒. </p>
<p>其中当线程资料超过corePoolSize的值时，则线程时间超过KeepAliveTime的则自动断开，KeepAliveTime＝300000。</p>
<p>当TCPKEEPALIVE参数设置为TRUE后，数据库会根据SDE服务所在机器的注册表项KEEPALIVETIME所提供的响应时间， 不断侦测所有连接是否为无效连接，如果为无效连接，则自动删除该连接。 对默认安装操作系统的机器而言KEEPALIVETIME注册表项是没有的。 如果没有话，服务器不会主动发送 KeepAlive 数据包来确认空闲连接是否依然毫无变化。也就不会进行删除操作。 所以上面提到的无效连接会越来越多。可以在如下路径中：Local_Machine\system\CurrentControlSet\Services\Tcpip\Parameters 添加DWORD项：KeepAliveTime。 如果不设置值的话默认为两小时。具体时间可以看情况而定。一般推荐为5分钟。然后重启机器（一定要重启，注册表的新加项才生效）。世界从此清静了， 以后超出最大连接数的错误再也不会烦扰你的头皮。<br />
</p><img src ="http://www.cppblog.com/netboy/aggbug/147613.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/netboy/" target="_blank">王勇良</a> 2011-05-29 14:04 <a href="http://www.cppblog.com/netboy/archive/2011/05/29/147613.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>