JohnPhan 发表于 2007-7-26 14:18:47

sqlsrvr(dataserver) 的启动参数-T 大家来收集

<p>那日里QQ群(1185914)的一段对话:</p><p>行了(394548) 14:12:58<br/>sqlsrvr(dataserver)是启动ASE的程序,有各种启动参数可选择,其中的-T启动参数,几乎没有讲解,但出问题的时候却经常被使用,例如 -T3607. 那里有-T参数的详细讲解的资料。<br/></p><p>无言独上西楼(1095061) 14:13:37<br/>收集<br/></p><p>行了(394548) 14:14:06<br/>Sybase留了一手嘛!!</p><p><strong>大家一起来收集 sqlsrvr(dataserver) 的启动参数-T </strong></p>
[此贴子已经被作者于2007-7-30 10:42:48编辑过]

JohnPhan 发表于 2007-7-26 14:24:00

<p><span class="javascript" id="text1170319" style="FONT-SIZE: 12px;">3607的意思是:boot without recovering anything<br/></span><span class="javascript" style="FONT-SIZE: 12px;"></span></p><p><span class="javascript" style="FONT-SIZE: 12px;">恢复master数据库时候: ASE can't setup and has no valid dump of master<br/><br/>方法之一即是 编辑RUN_servername<br/>在命令行最后加入:-T3607</span></p><p><span class="javascript" style="FONT-SIZE: 12px;">提示:buidmaster程序在ASE &gt;12 中没有了,由dataserver程序代替了</span></p>
[此贴子已经被作者于2007-7-27 16:13:06编辑过]

JohnPhan 发表于 2007-7-27 12:45:21

<p>-T3608:不回滚master数据库<br/>-T3607:不回滚所有数据库</p>

JohnPhan 发表于 2007-7-30 10:38:31

Do not attempt a normal shutdown after using trace flags 3607 or 3608. Always<br/>use shutdown with nowait in these cases.

JohnPhan 发表于 2007-8-2 12:56:47

<p>-T699 Turn&nbsp;off&nbsp;transaction&nbsp;logging&nbsp;for&nbsp;the&nbsp;entire&nbsp;SQL&nbsp;dataserver </p><p>是否可用,待核!&nbsp;</p>

JohnPhan 发表于 2007-8-2 13:04:15

<p>Trace flags can be set through dbcc traceon/traceoff or added to the<br/>RUN_SERVER file , depending on their function and the desired effect.</p><p>292&nbsp; - reduces network traffic by suppressing server-to-client &amp;quot;done-in-proc&amp;quot; network<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; packets in combination with dbcc tune(“doneinproc”,0). (Note: in previous<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; versions of this QuickRef, trace flag 260 was mistakenly mentioned here&amp;#59; however,<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 260 was for ASE version 10, and has been replaced with trace flag 292).<br/>299&nbsp; - don't recompile stored procs inheriting a temp table from a parent proc<br/>302&nbsp; - print info about the optimizer's index selection<br/>310&nbsp; - print info about the optimizer's join selection (for better join orders)<br/>317&nbsp; - print info about the optimizer's join selection (for rejected join orders)<br/>319&nbsp; - print info on reformatting decisions during query processing<br/>1204 - replaced by config option &amp;quot;print deadlock information&amp;quot;<br/>1213 - used with dbcc object_stats&amp;#59; see there (12.0) 1608 - starts only engine 0 &amp;#59; for use with dbcc engine (&amp;quot;online&amp;quot; )<br/>1610 - replaced by config option &amp;quot;tcp no delay&amp;quot;<br/>2512 - dbcc checkalloc will skip syslogs to suppress spurious alloc. errors<br/>3300 - prints detailed info when performing recovery (can be voluminous)<br/>3502 - log checkpointing of databases in the server errorlog<br/>3604 - redirect dbcc output to client session<br/>3605 - redirect dbcc output to the server errorlog<br/>3607 - opens only master device&amp;#59; &amp;quot;master&amp;quot; db is accessible but not recovered<br/>3608 - recovering only &amp;quot;master&amp;quot; db&amp;#59; other databases are accessible but not recovered&amp;#59; to avoid &amp;quot;log suicide&amp;quot;, use &amp;quot;shutdown with nowait&amp;quot; and do not checkpoint.<br/>3609 - all databases are recovered, but tempdb is not re-initialised<br/>3610 - divide-by-zero results in NULL (as in version 4.x), instead of an error<br/>4001 - write every login record to the server errorlog<br/>4012 - don't start checkpoint process<br/>4013 - write loginname, spid and kpid to the server errorlog for every login<br/>4044 - allows to log into server as &amp;quot;sa&amp;quot; when this login is locked<br/>8003 - prints info on RPC calls<br/>8203 - display locking info when deadlock occurs<br/>8399 - used by dbcc monitor to fill sysmonitors table<br/>11201 - Logs CIS client connect- / disconnect- and attention events<br/>11202 - Logs CIS client language, cursor declare, dynamic prepare, and dynamic<br/>execute-immediate text<br/>11203 - Logs CIS client rpc events<br/>11204 - Logs all CIS messages routed to client<br/>11205 - Logs all CIS interaction with remote servers<br/>11209 - For &amp;quot;update statistics&amp;quot; on proxy tables, only get row counts, not complete<br/>distribution statistics<br/>11218 - Cursors involving proxy tables will be &amp;quot;read only&amp;quot; by default</p><p>转载自:<a href="http://www.lslnet.com/linux/edosc/64/linux-64419621.htm">http://www.lslnet.com/linux/edosc/64/linux-64419621.htm</a></p>
[此贴子已经被作者于2007-8-2 13:28:40编辑过]

JohnPhan 发表于 2007-8-2 13:25:33

200 "Before" image of query tree <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 201 "After" image of query tree <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 260 To prevent "done_in_proc" messages <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 302 Information in index selection <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 310 Information in join selection <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 317 Complete information in join selection (voluminous) <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 320 Turn off join order heuristic <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1204 Print out deadlock chains and victim <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1205 Print out stack traces of deadlocked pids. Use in conjuction with 1204 <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2512 Bypass syslogs when doing checkalloc <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1603 Use only standard unix calls for disk I/O <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1610 Disable packet batching <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 3300 Display each log record as it is processed by recovery (voluminous) <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 3402 Do a alloc upgrade during loaddb recovery <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 3604 Send dbcc output to screen <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 3605 Send dbcc output to errorlog <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 3607 Do not recover any database, clear tempdb, or startup checkpoint <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 3608 Recover master only. Do not clear tempdb, or startup checkpoint <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 3609 Recover all databases. Do not clear tempdb, or startup checkpoint <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 3620 Do not kill infected processes <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 3701 Allows dropping and creating of system indexes (DANGEROUS!) <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 4000 Crash server at next loop for recovery testing <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 4012 Boot without starting up checkpoint process <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 4013 Place a record into errorlog each time someone logs in to the server <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 5101 Engine 0 will perform all disk and network I/O. <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 5102 Prevents engine 0 from running any non-affinitied tasks <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 8399 Enable descriptive names for groups (dbcc monitor) <br/>

JohnPhan 发表于 2007-8-2 13:31:31

<table cellpadding="3" width="100%" border="3"><caption><font size="+2">Trace Flags</font></caption><b><b><tbody><tr><th>Flag</th><th>Description</th></tr><tr><td>108</td><td>(Documented) To allow dynamic and host variables in create view statements in ASE 12.5 and above.</td></tr><tr><td>200</td><td>Displays messages about the <b>before</b> image of the query-tree.</td></tr><tr><td>201</td><td>Displays messages about the <b>after</b> image of the query-tree.</td></tr><tr><td>241</td><td>Compress all query-trees whenever the SQL dataserver is started.</td></tr><tr><td>260</td><td>Reduce TDS (Tabular Data Stream) overhead in stored procedures. Turn off <b>done-in-behaviour packets. Do not use this if your application is a ct-lib based application; it'll break. <p>Why set this on? Glad you asked, typically with a db-lib application a packet is sent back to the client for each batch executed within a stored procedure. This can be taxing in a WAN/LAN environment. </p></b></td></tr><tr><td>291</td><td>Changes the hierarchy and casting of datatypes to pre-11.5.1 behaviour. There was an issue is some very rare cases where a wrong result could occur, but that's been cleared up in 11.9.2 and above. <p>The trace can be used at boot time or at the session level. Keep in mind that it does not disqualify a table scan from occurring. What it will do is result in fewer datatype mismatch situations and thus the optimizer will be able to estimate the costs of SARGs and joins on columns involved in a mismatch.</p></td></tr><tr><td>299</td><td>This trace flag instructs the dataserver to <b>not</b> recompile a child stored procedure that <b>inherits</b> a temp table from a parent procedure.</td></tr><tr><td>302</td><td>Print information about the optimizer's index selection.</td></tr><tr><td>303</td><td>Display OR strategy</td></tr><tr><td>304</td><td>Revert special <b>or</b> optimizer strategy to that strategy used in pre-System 11 (this traceflag resolved several bug issues in System 11, most of these bugs are fixed in ASE 11.0.3.2)</td></tr><tr><td>310</td><td>Print information about the optimizer's join selection.</td></tr><tr><td>311</td><td>Display the expected IO to satisfy a query. Like statistics IO without actually executing.</td></tr><tr><td>317</td><td>Provide extra optimization information.</td></tr><tr><td>319</td><td>Reformatting strategies.</td></tr><tr><td>320</td><td>Turn off the join order heuristic.</td></tr><tr><td>324</td><td>Turn off the like optimization for ad-hoc queries using @local_variables.</td></tr><tr><td>326</td><td>(Only valid in ASE versions <i>prior</i> to 11.9.2.)&nbsp; Instructs the server to use arithmetic averaging when calculating density instead of a geometric weighted average when updating statistics.&nbsp; Useful for building better stats when an index has skew on the leading column.&nbsp; Use <i>only</i> for<b></b><b></b>
                                                        <b>updating the stats of a table/index with known skewed data.</b></td></tr><b><b><tr><td>602</td><td>Prints out diagnostic information for deadlock prevention.</td></tr><tr><td>603</td><td>Prints out diagnostic information when avoiding deadlock.</td></tr><tr><td>699</td><td>Turn off transaction logging for the entire SQL dataserver.</td></tr><tr><td>1204<sup>*</sup></td><td>Send deadlock detection to the errorlog.</td></tr><tr><td>1205</td><td>Stack trace on deadlock.</td></tr><tr><td>1206</td><td>Disable lock promotion.</td></tr><tr><td>1603<sup>*</sup></td><td>Use standard disk I/O (i.e. turn off asynchronous I/O).</td></tr><tr><td>1605</td><td>Start secondary engines by hand</td></tr><tr><td>1606</td><td>Create a <b>debug engine</b> start file. This allows you to start up a debug engine which can access the server's shared memory for running diagnostics. I'm not sure how useful this is in a production environment as the debugger often brings down the server. I'm not sure if Sybase have ported the debug stuff to 10/11. Like most of their debug tools it started off quite strongly but was never developed. </td></tr><tr><td>1608</td><td>Startup <b>only</b> engine 0; use dbcc engine("online") to incrementally bring up additional engines until the maximum number of configured engines.</td></tr><tr><td>1610<sup>*</sup></td><td>Boot the SQL dataserver with TCP_NODELAY enabled.</td></tr><tr><td>1611<sup>*</sup></td><td>If possible, pin shared memory -- check errorlog for success/failure.</td></tr><tr><td>1613</td><td>Set affinity of the SQL dataserver engine's onto particular CPUs -- usually pins engine 0 to processor 0, engine 1 to processor 1... </td></tr><tr><td>1615</td><td>SGI only: turn on recoverability to filesystem devices.</td></tr><tr><td>1625</td><td>Linux only: Revert to using cached filesystem I/O.&nbsp; By default, ASE on Linux (11.9.2 and above) opens filesystem devices using O_SYNC, unlike other Unix based releases, which means it is safe to use filesystems devices for production systems.</td></tr><tr><td>2512</td><td>Prevent dbcc from checking syslogs. Useful when you are constantly getting spurious allocation errors.</td></tr><tr><td>3300</td><td>Display each log record that is being processed during recovery. You may wish to redirect stdout because it can be a <b>lot</b> of information.</td></tr><tr><td>3500</td><td>Disable checkpointing.</td></tr><tr><td>3502</td><td>Track checkpointing of databases in errorlog.</td></tr><tr><td>3601</td><td>Stack trace when error raised.</td></tr><tr><td>3604</td><td>Send dbcc output to screen.</td></tr><tr><td>3605</td><td>Send dbcc output to errorlog.</td></tr><tr><td>3607</td><td>Do not recover any database, clear behaviour start up checkpoint process.</td></tr><tr><td><a name="3608">3608</a></td><td>Recover master only. Do not clear tempdb or start up checkpoint process.</td></tr><tr><td>3609</td><td>Recover all databases. Do not clear tempdb or start up checkpoint process.</td></tr><tr><td>3610</td><td>Pre-System 10 behaviour: divide by zero to result in NULL instead of error - also see <a href="http://www.isug.com/Sybase_FAQ/ASE/section6.2.html#6.2.5">Q6.2.5</a>.</td></tr><tr><td>3620</td><td>Do not kill infected processes.</td></tr><tr><td>4001</td><td>Very verbose logging of each login attempt to the errorlog. Includes tons of information.</td></tr><tr><td>4012</td><td>Don't spawn chkptproc.</td></tr><tr><td>4013</td><td>Place a record in the errorlog for each login to the dataserver.</td></tr><tr><td>4020</td><td>Boot without recover.</td></tr><tr><td>5101</td><td>Forces all I/O requests to go through engine 0. This removes the contention between processors but could create a bottleneck if engine 0 becomes busy with non-I/O tasks. For more information...<a href="http://www.isug.com/Sybase_FAQ/ASE/section1.3.html#1.3.4">5101/5102.</a></td></tr><tr><td>5102</td><td>Prevents engine 0 from running any non-affinitied tasks. For more information...<a href="http://www.isug.com/Sybase_FAQ/ASE/section1.3.html#1.3.4">5101/5102.</a></td></tr><tr><td>7103</td><td>Disable table lock promotion for text columns.</td></tr><tr><td>8203</td><td>Display statement and transaction locks on a deadlock error.</td></tr><tr><td>*</td><td><i>Starting with System 11 these are sp_configure'able</i></td></tr><p><a href="http://www.isug.com/Sybase_FAQ/ASE/section1.3.html#AdvancedAdmin"></a></p><hr/><h1><a name="1.3.4">1.3.4 Trace Flags -- 5101 and 5102</a></h1><hr/><h3>5101</h3><p>Normally, each engine issues and checks for its own Disk I/O on behalf of the tasks it runs. In completely symmetric operating systems, this behavior provides maximum I/O throughput for ASE. Some operating systems are not completely symmetric in their Disk I/O routines. For these environments, the server can be booted with the 5101 trace flag. While tasks still request disk I/O from any engine, the actual request to/from the OS is performed by engine 0. The performance benefit comes from the reduced or eliminated contention on the locking mechanism inside the OS kernel. To enable I/O affinity to engine 0, start ASE with the 5101 Trace Flag. </p><p>Your errorlog will indicate the use of this option with the message: </p><pre>        Disk I/O affinitied to engine: 0
</pre><p>This trace flag only provides performance gains for servers with 3 or more dataserver engines configured and being significantly utilized. </p><p><b>Use of this trace flag with fully symmetric operating systems will degrade performance!</b>
                                                        </p><h3>5102</h3><p>The 5102 trace flag prevents engine 0 from running any non-affinitied tasks. Normally, this forces engine 0 to perform Network I/O only. Applications with heavy result set requirements (either large results or many connections issuing short, fast requests) may benefit. This effectively eliminates the normal latency for engine 0 to complete running its user thread before it issues the network I/O to the underlying network transport driver. If used in conjunction with the 5101 trace flag, engine 0 would perform all Disk I/O and Network I/O. For environments with heavy disk and network I/O, engine 0 could easily saturate when only the 5101 flag is in use. This flag allows engine 0 to concentrate on I/O by not allowing it to run user tasks. To force task affinity off engine 0, start ASE with the 5102 Trace Flag. </p><p>Your errorlog will indicate the use of this option with the message: </p><pre>        I/O only enabled for engine: 0
</pre><hr/><font size="-1"><b><p>Warning: Not supported by Sybase. Provided here for your enjoyment.</p><p>转载自:<a href="http://www.isug.com/Sybase_FAQ/ASE/section1.3.html#1.3.4">http://www.isug.com/Sybase_FAQ/ASE/section1.3.html#1.3.4</a></p></b></font></b></b></tbody><p><a href="http://www.isug.com/Sybase_FAQ/ASE/section1.3.html#AdvancedAdmin"></a></p><hr/><h1><a name="1.3.4">1.3.4 Trace Flags -- 5101 and 5102</a></h1><hr/><h3>5101</h3><p>Normally, each engine issues and checks for its own Disk I/O on behalf of the tasks it runs. In completely symmetric operating systems, this behavior provides maximum I/O throughput for ASE. Some operating systems are not completely symmetric in their Disk I/O routines. For these environments, the server can be booted with the 5101 trace flag. While tasks still request disk I/O from any engine, the actual request to/from the OS is performed by engine 0. The performance benefit comes from the reduced or eliminated contention on the locking mechanism inside the OS kernel. To enable I/O affinity to engine 0, start ASE with the 5101 Trace Flag. </p><p>Your errorlog will indicate the use of this option with the message: </p><pre>        Disk I/O affinitied to engine: 0
</pre><p>This trace flag only provides performance gains for servers with 3 or more dataserver engines configured and being significantly utilized. </p><p><b>Use of this trace flag with fully symmetric operating systems will degrade performance!</b>
                                </p><h3>5102</h3><p>The 5102 trace flag prevents engine 0 from running any non-affinitied tasks. Normally, this forces engine 0 to perform Network I/O only. Applications with heavy result set requirements (either large results or many connections issuing short, fast requests) may benefit. This effectively eliminates the normal latency for engine 0 to complete running its user thread before it issues the network I/O to the underlying network transport driver. If used in conjunction with the 5101 trace flag, engine 0 would perform all Disk I/O and Network I/O. For environments with heavy disk and network I/O, engine 0 could easily saturate when only the 5101 flag is in use. This flag allows engine 0 to concentrate on I/O by not allowing it to run user tasks. To force task affinity off engine 0, start ASE with the 5102 Trace Flag. </p><p>Your errorlog will indicate the use of this option with the message: </p><pre>        I/O only enabled for engine: 0
</pre><hr/><font size="-1"><b><p>Warning: Not supported by Sybase. Provided here for your enjoyment.</p><p>转载自:<a href="http://www.isug.com/Sybase_FAQ/ASE/section1.3.html#1.3.4">http://www.isug.com/Sybase_FAQ/ASE/section1.3.html#1.3.4</a></p></b></font></b></b></table><p><a href="http://www.isug.com/Sybase_FAQ/ASE/section1.3.html#AdvancedAdmin"></a></p><hr/><h1><a name="1.3.4">1.3.4 Trace Flags -- 5101 and 5102</a></h1><hr/><h3>5101</h3><p>Normally, each engine issues and checks for its own Disk I/O on behalf of the tasks it runs. In completely symmetric operating systems, this behavior provides maximum I/O throughput for ASE. Some operating systems are not completely symmetric in their Disk I/O routines. For these environments, the server can be booted with the 5101 trace flag. While tasks still request disk I/O from any engine, the actual request to/from the OS is performed by engine 0. The performance benefit comes from the reduced or eliminated contention on the locking mechanism inside the OS kernel. To enable I/O affinity to engine 0, start ASE with the 5101 Trace Flag. </p><p>Your errorlog will indicate the use of this option with the message: </p><pre>        Disk I/O affinitied to engine: 0
</pre><p>This trace flag only provides performance gains for servers with 3 or more dataserver engines configured and being significantly utilized. </p><p><b>Use of this trace flag with fully symmetric operating systems will degrade performance!</b>
        </p><h3>5102</h3><p>The 5102 trace flag prevents engine 0 from running any non-affinitied tasks. Normally, this forces engine 0 to perform Network I/O only. Applications with heavy result set requirements (either large results or many connections issuing short, fast requests) may benefit. This effectively eliminates the normal latency for engine 0 to complete running its user thread before it issues the network I/O to the underlying network transport driver. If used in conjunction with the 5101 trace flag, engine 0 would perform all Disk I/O and Network I/O. For environments with heavy disk and network I/O, engine 0 could easily saturate when only the 5101 flag is in use. This flag allows engine 0 to concentrate on I/O by not allowing it to run user tasks. To force task affinity off engine 0, start ASE with the 5102 Trace Flag. </p><p>Your errorlog will indicate the use of this option with the message: </p><pre>        I/O only enabled for engine: 0
</pre><hr/><font size="-1"><b><p>Warning: Not supported by Sybase. Provided here for your enjoyment.</p><p>转载自:<a href="http://www.isug.com/Sybase_FAQ/ASE/section1.3.html#1.3.4">http://www.isug.com/Sybase_FAQ/ASE/section1.3.html#1.3.4</a></p></b></font>
页: [1]
查看完整版本: sqlsrvr(dataserver) 的启动参数-T 大家来收集

免责声明:
本站所发布的一切破解补丁、注册机和注册信息及软件的解密分析文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。

Mail To:Admin@SybaseBbs.com