Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

ÈçºÎ¼ì²éSQL Server CPUÆ¿¾±

--¼ì²âCPUѹÁ¦µÄÒ»¸ö·½·¨ÊǼÆËãÔËÐÐ״̬ÏµĹ¤×÷½ø³ÌÊýÁ¿£¬
--ͨ¹ýÖ´ÐÐÈçϵÄDMV²éѯ¿ÉÒԵõ½Õâ¸öÐÅÏ¢
SELECT COUNT(*) AS workers_waiting_for_cpu,t2.scheduler_id
from sys.dm_os_workers AS t1, sys.dm_os_schedulers AS t2
WHERE t1.state='RUNNABLE' AND 
t1.scheduler_address = t2.scheduler_address AND
 t2.scheduler_id<255
GROUP BY t2.scheduler_id
--Ò²¿ÉÒÔÖ´ÐÐÈçϵIJéѯµÃµ½¹¤×÷½ø³ÌÔÚ¿ÉÔËÐÐ״̬Ï»¨·ÑµÄʱ¼ä
SELECT SUM(signal_wait_time_ms) from sys.dm_os_wait_stats
--ÏÂÃæÊÇÒ»¸öDMV²éѯ£¬Ëü¿ÉÒÔÓÃÀ´ÕÒ³öÿ´ÎÖ´ÐÐÖÐÕ¼ÓÃCPU×î¶àµÄÇ®10Ϊ²éѯ£¬
--Ò²ÁгöÁËSQLÓï¾äµÄ²éѯ¼Æ»®¼°¼Æ»®±»Ö´ÐеĴÎÊý¡£Èç¹ûÒ»¸ö²éѯ´ó¼ÒËä¸ß£¬
--µ«Ö´ÐдÎÊýÉÙ£¬ÄÇÒ²¿ÉÒÔ²ÉÄÉ¡£
SELECT TOP 10
total_worker_time/execution_count AS avg_cpu_cost, plan_handle,execution_count,
    (SELECT SUBSTRING(text,statement_start_offset/2+1,
        (CASE WHEN statement_end_offset=-1
        THEN LEN(CONVERT(NVARCHAR(max),text))*2
        ELSE statement_end_offset
        END -statement_start_offset)/2)
    from sys.dm_exec_sql_text(sql_handle)
    ) AS query_text
from sys.dm_exec_query_stats
ORDER BY [avg_cpu_cost] DESC
--ÒÔÉÏDMVÖ»ÏÔʾµ±Ç°±»»º´æµÄ²éѯºÏ¼ÆÍ³¼ÆÐÅÏ¢
--ΪÁËÕÒ³ö¹¤×÷¸ººÉÖÐÔËÐÐ×îÆµ·±µÄ²éѯ£¬¾ÍÐèÒªÖ´ÐÐÏÂÃæµÄDMV²éѯ¡£
SELECT TOP 10 total_worker_time ,plan_handle,execution_count,
    (SELECT SUBSTRING(text,statement_start_offset/2+1,
        (CASE WHEN statement_end_offset=-1
        THEN LEN(CONVERT(NVARCHAR(max),text))*2
        ELSE statement_end_offset
        END -statement_start_offset)/2)
    from sys.dm_exec_sql_text(sql_handle)
    ) AS query_text
from sys.dm_exec_query_stats ORDER BY execution_count
--SQL ServerÔÚÓÅ»¯²éѯ¼Æ»®ÉÏ»¨·ÑµÄʱ¼ä¿ÉÒÔÓÃÏÂÃæµÄDM


Ïà¹ØÎĵµ£º

SQLÖÐCONVERTת»¯º¯ÊýµÄÓ÷¨

¸ñʽ:
CONVERT(data_type,expression[,style])
˵Ã÷:
´ËÑùʽһ°ãÔÚʱ¼äÀàÐÍ(datetime,smalldatetime)Óë×Ö·û´®ÀàÐÍ(nchar,nvarchar,char,varchar)
Ï໥ת»»µÄʱºò²ÅÓõ½.
Àý×Ó:
SELECT CONVERT(varchar(30),getdate(),101) now
½á¹ûΪ:
now
---------------------------------------
|09/15/2001
===== ......

SQL 2008 ½Ø¶ÏÊÂÎñÈÕÖ¾²»ÄÜÓÃÁË£¿£¿

BACKUP DATABASENAME WITH NO_LOGÒ»Ö±ÊÇÎҽضÏÊÂÎñÈÕÖ¾£¬Ñ¹Ëõ¿Õ¼äµÄÀûÆ÷£¬½ñÌìÔÙSQL2008ÉÏÒ»Óã¬È´²»ÁéÁË
ÏûÏ¢ 3032£¬¼¶±ð 16£¬×´Ì¬ 2£¬µÚ 2 ÐÐ
´ËÓï¾ä²»Ö§³ÖÒ»¸ö»ò¶à¸öÑ¡Ïî(no_log)¡£Çë²éÔÄÎĵµÒÔÁ˽âËùÖ§³ÖµÄÑ¡Ïî¡£
²é¿´Áª»ú°ïÖúÊֲᣬÀïÃæÈ·ÊµÃ»ÓÐwith no_logµÄ¿ÉÑ¡ÏîÁË£¬ÄÇÔõô°ì°¡£¬50MµÄÊý¾ÝÎļþ£¬2GµÄÈÕÖ¾Îļþ£¬È ......

Oracle PL/SQL±à³Ì¹æ·¶Ö¸ÄÏ

Ò»¡¢PL/SQL±à³Ì¹æ·¶Ö®´óСд
¾ÍÏñÔÚSQLÖÐÒ»Ñù£¬PL / SQLÖÐÊDz»Çø·Ö´óСдµÄ¡£ÆäÒ»°ã×¼ÔòÈçÏ£º
¹Ø¼ü×Ö(BEGIN, EXCEPTION, END, IF THEN ELSE,LOOP, END LOOP)¡¢Êý¾ÝÀàÐÍ(VARCHAR2, NUMBER)¡¢ÄÚ²¿º¯Êý(LEAST, SUBSTR)ºÍÓû§¶¨ÒåµÄ×Ó³ÌÐò(procedures, functions,packages)£¬Ê¹Óôóд¡£
±äÁ¿ÃûÒÔ¼°SQLÖеÄÁÐÃûºÍ±íÃû£¬Ê¹ÓÃÐ ......

PL/SQLѧϰ±Ê¼Ç


1£®SQL²¢Ðвéѯ
alter session enable parallel dml execute immediate 'alter session enable parallel dml'; --Ð޸ĻỰ²¢ÐÐDML      select /*+parallel(a,4)*/ * from table_name a       select /*+parallel(a,8)*/ * from table_name a    ......

SQL ServerÖÐRollup¹Ø¼ü×ÖʹÓü¼ÇÉ

Ê×ÏÈ´´½¨²âÊÔ±í¡¢Ìí¼ÓÊý¾Ý¡£
create table #t(a int,b int,c int,d int,e int)
insert into #t values(1,2,3,4,5)
insert into #t values(1,2,3,4,6)
insert into #t values(1,2,3,4,7)
insert into #t values(1,2,3 ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ