博客

  • 目前CCNA考試中switch與OSPF實驗題的解答方法

    目前的是2道,一道關於switch的,一個配置OSPF的:

    首先說switch的,總結有以下幾種問題

    1:給你一個mac地址,問你連接到哪個端口。
    解答:用show mac查找對應mac地址的端口回答即可

    2:說有一個原來存在的switch被拿走,修改了配置然後又拿回來,和Sw-AC3相連,給出了show vtp stat和show vlan的顯示,問你會發生什麼情況
    解答:使用show vtp stat查看Sw-AC3的,如果configuration revision比拿回來的那個小,那麼Sw-AC3的配置會被移除,如果比拿回來的大,則SwX的會被替換成Sw-AC3的

    3:問你vlan 1的root bridge
    解答:用show span,則能夠看到每個vlan的詳細信息,如果本switch為root bridge,則會有英文告訴你本switch就是root,如果不是的話,在這個vlan信息下面能顯示出rootid連接的端口,然後使用show cdp neighbor就能找到對應的root bridge

    4:問你從哪接受vlan更新信息
    解答:使用show vtp stat,可以看到本機就是vtp server狀態,則選擇local即可。本機不是server,目前還沒想到怎麼做,不過試驗似乎沒出現過這樣的。

    5:給你一個source MAC address和destination MAC address,問你switch如何處理
    解答:使用show mac,如果destination MAC address在顯示中,那麼就選擇發送到相對應的端口,如果不在,則看source MAC address所對應的那項,最前面會顯示vlan的號碼,選擇同樣號碼對應的端口即可。這裡我今天遇到了,用show mac和show vlan所顯示的vlan端口分配不一致,這裡使用show mac的比較保險。

    6:問你哪個port跟router相連
    解答:使用show cdp nei

    7:問哪些port是trunk端口
    解答:show int trunk或者用show vlan看哪些port沒有在列表中

    8:給你一個port,問連接的default-gateway是什麼
    解答:show vlan,看給你的port屬於哪個vlan,然後根據圖中所顯示的路由器子接口IP信息即可回答。

    9:問switch接收到一個IP packet如果目標地址不在本地,從哪個port出去
    解答:經過與router相連的port出去,使用show cdp nei吧

    10:switch接收到一個IP packet含有目標IP地址為192.0.2.24的MAC address是多少
    解答:目標不在任何一個vlan中,則肯定目標MAC地址是路由器的MAC地址,使用show arp

    目前似乎只有這10種不同的問題,我的解答不知道正確不正確,我今天考得是前5個,肯定是正確的。後面的應該也沒什麼問題,有錯誤了請大家指出來。

    關於OSPF配置

    首先,考試已經替你配好了一切的IP地址還有OSPF協議,但是有一些router的協議是不正確的,你要找出來,清除掉重新配即可。清除的命令是XXX(config)#no router ospf 2,錯誤可能是ospf 1配成了ospf 2,或者wild card錯誤,或者area錯誤。最後配置好了別忘了copy run start!

  • 思科證書的意義:技術經驗的證明

    許多人問學思科考哪個證書對他們最有用。不幸的是,對這個問題沒有簡單或通用的答案。但對這個或相似的問題,我有一個總結性的回答:現在考思科證書是很流行的。 60%的企業都使用思科的產品,因此公司在招聘時很有可能考慮僱用擁有CISCO證書的新僱員。雖然證書不是很容易得到,但學習的人仍很多。思科和其它許多企業(如進行工資、經濟、市場調查的刊物和網站)都在傳播你已獲得某項證書,你的工資就越高的觀點。 CISCO證書級別劃分清楚,由低至高,基礎課程(如CCNA)被視為不需要很多的經驗、經過艱苦學習就可以獲得的。
     
    我認為,獲取CISCO證書、學習CISCO技術有一個理由:即你掌握CISCO產品技術和你擁有網絡相關使用經驗的一種書面形式的保證。我並不認為所有獲得思科證書的人的水平是一樣的,那些學習並在實際工作中實踐過的人比依靠考試資料而獲得證書的人更應被選擇為僱員。證書從來都不應被認為是經驗的替代品。對那些剛剛入門或從事初級網絡工作的人,有證書比沒有證書好;但對於從事中級或高級網絡技術工作的人,證書不如經驗重要,尤其是對網絡這個行業來說。
     
    我不想貶低那些PAPER,但我認為應該提供更現實更真實的信息,有些人員極有可能是在沒有接觸過網絡環境的前提下獲得的CCNA、CCNP證書,這些現像比起CISCO證書的聲望來說是荒謬的。好比Cisco的證書CCNP(思科資深網絡工程師認證),在沒有熟悉路由器、交換機的情況下幾乎不可能通過CCNP考試。事實上,Cisco頂級證書CCIE(思科互聯網絡專家認證)的兩門考試中,CCIE Lab的首次考試失敗率也是很高的,沒有足夠的實際路由器、交換機經驗是不可能通過考試的。
     
    如果你希望成為網絡方面的專業技術人員,那很好,建議你去得到一個CISCO證書。但不要指望揮舞著有約翰錢伯斯簽名的證書就可以得到年薪79000美元的工作,那不會發生。你需要找到機會,找到提供給你掌握實際工作經驗並管理廣泛範圍的硬件和軟件產品的工作。你得到思科和其它公司的相應證書,再學到實際經驗,用經驗來支持證書是得到工作升遷的唯一途徑。
     
    有個問題:有些人很少重視實際工作中現實存在的問題。我從未聽說過有任何一家公司需要只具備CCNA水平的技術人員,因此,擁有更高一級的CISCO證書可以幫你為公司提供足夠的技術來解決實際工作中的網絡問題,只有CCNA證書並不意味著你可以處理失效的路由器和網絡相關故障問題。
     
    證書來自於假設。雇主看到羅列在你簡歷裡的證書會推想你能從事證書有關的工作。如果你不能以實際經驗來支持你的證書,請不要提到它們。例如,如果你拿出CCNA的證書,你應當能完成如安裝、調試、配置路由器和交換機的基本任務。同樣,如果你拿出CCNP,那麼,你應當可以做到100至500多個節點的大型企業網絡安裝、配置和運行LAN、WAN和撥號訪問業務,以及網絡故障排除。
     
    所以,你需要學習CISCO的哪個證書?你需要與你將來所要從事的工作結合起來考慮,證書是與網絡經驗、技術和能力相符的,如果你不能從事與更高一級證書相匹配的工作,那麼請等到你能行的時候再去應聘。

  • 微軟Windows Server 2003認證介紹

    Windows Server 2003作為微軟有史以來最強大的操作系統平台,已於2003年5月23日在中國正式發布。
    Windows Server 2003是一個全面的、完整的、可靠的服務器操作系統,他減少了成本,提高了計算操作的效率,幫助IT人員做到事半功倍。
    Windows Server 2003相關課程,將對學員在Windows Server 2003環境下系統管理和維護的技術熟練程度及專業水平進行有效的、可靠的測試。同時這些考試認證也將對解決方案設計和實現方面的技術精通程度和專長進行有效和可靠的衡量。
     
    一、適用對象
    凡具有Windows和一定英語水平的在職人員﹑各大專院校在校學生及要求獲得網絡技術知識的人員均可報名參加微軟認證類在線培訓。學習本專業者需有一定計算機基礎和英文基礎,計算機方面應有Dos和Windows基礎,要求會編制批處理文件,對系統配置文件的部分參數有一定的了解。在英文方面應能讀懂基本的計算機方面的專業詞彙或相當於高中畢業的英文水平。

    二、認證體系

    MCSAMCSE作為微軟的兩項高端IT資格認證,微軟公司已出台其針對於Windows Server 2003的認證體系,並在國內已能申請參加所有相應科目的考試。
    1、MCSA 2003——MCSA2003微軟認證系統管理員證書證明您有能力勝任網絡及系統管理員職位,獲得業界承認的對微軟部分產品的技術的精通和所需的專業技能。
    2、MCSA:Security on Windows Server 2003——該認證著重考察學員在管理和維護一個安全的企業網絡方面的技術和能力。
    3、MCSA:Messaging on Windows Server 2003——該認證表明獲得者能夠實現,管理和維護一個基於Exchange Server的消息基礎結構平台。要求認證的參加者需要至少一年的Exchange和Windows 2003的運行環境的管理經驗。需要通過4門考試。包括3門核心考試和1門選修考試。
    4、MCSE 2003——MCSE 2003微軟認證系統工程師證書是行業中承認範圍最廣的一項高級技術證書。獲得MCSE證書,證明自己具備使用高級的Microsoft Windows平台和Microsoft服務器產品,為企業提供成功的設計、實施和管理商業解決方案的能力。
    5、MCSE: Security on Windows Server 2003——該認證著重考察學員在管理和維護一個安全的企業網絡方面的技術和能力。
    6、MCSE: Messaging on Windows Server 2003——該認證表明獲得者能夠完成設計,規劃和實現一個基於Microsoft Exchange Server的消息基礎平台結構。要求參加該認證的系統工程師至少擁有一年以上的部署Exchange Server和Windows 2003系統環境的部署經驗。需要通過6門核心考試和2門消息平台方面特定考試。

    三、認證途徑

    在學習或考試時,你可以選擇先學習MCSA 2003的課程,然後再繼續學習剩下的MCSE 2003的課程,循序漸進!

    四、業界評論

    一位業內人士說,微軟認證在國外IT認證中知名度是最高的,參加考試和通過認證的人數也是最多的,因為在計算機操作系統中微軟所佔的市場份額是最大的,所以,通過微軟認證相對而言更具有普遍意義。中國科學院軟件研究所博士生導師仲萃豪研究員說,一些跨國企業、外資企業對它的員工要求比較高,特別是從事IT行業的工作,微軟證書幾乎成了應聘的通行證,沒有它的證書就做不好它的產品。所以要想從事微軟公司的工作,必須獲得微軟的證書。
    六、 MCSA 2003/MCSE 2003主要課程介紹
    70-290: 《管理Windows Server 2003環境》(MS2274)《維護Windows Server 2003環境》(MS2275)
    1.管理用戶和計算機帳號、組、資源的訪問
    2.實現打印,管理打印和組織單元中的對象訪問
    3.實現組策略使用組策略管理用戶環境
    4.介紹Windows2003中的安全性
    5.管理服務器與監視服務器性能
    6.維護設備驅動,管理磁盤、數據存儲、容錯
    7.使用軟件更新服務維護軟件
    70-291:《建置Windows Server 2003網絡基礎架構:網絡主機》(MS2276) 《建置、管理與維護Windows Server 2003網絡基礎架構:網絡服務》(MS2277)

    1.在多個子網中分配IP地址
    2.配置客戶端IP地址及客戶端配置名稱解析
    3.Isolating Common Connectivity Issues
    4.使用RRAS配置路由
    5.使用DHCP分配IP地址管理和監視DHCP
    6.名稱解析使用DNS解析主機名
    7.管理和監視DNS
    8.使用WINS解析NetBIOS名稱
    9.使用IPSec和證書增加網絡通信的安全性
    10.配置網絡訪問管理和監視遠程訪問

    70-293:《規劃與維護Windows Server 2003網絡基礎架構》(MS2278)

    1.規劃TCP/IP物理和邏輯網絡與路由和交換的規劃和排錯
    2.Planning,Optimizing,and Troubleshooting DHCP
    3.DNS的規劃策略、優化和排錯
    4.Planning and Optimizing WINS
    5.IPSec的規劃和排錯,規劃遠程訪問,網絡訪問排錯
    6.規劃Windows2003的網絡架構

    70-294:《規劃、建置與維護Windows Server 2003Active Directory基礎架構》(MS2279)
    1.介紹AD的架構實現AD森林和域的架構
    2.實現組織單元架構實現用戶,組和計算機帳號實現組策略
    3.使用組策略分發和管理軟件實現Sites管理AD複製
    4.佈置域控制器管理操作主控
    5.維護AD可用性規劃和實現AD架構

    70-298:《規劃與設計安全的網絡環境》(MS2830)
    1.網絡安全分析
    2.設計物理資源訪問的安全
    3.規劃主機安全、規劃帳號安全、規劃驗證安全
    4.規劃數據安全、規劃數據傳輸安全、規劃用戶策略
    5.設計管理網絡的策略

    70-227:《部署與管理Microsoft Internet Security and Acceleration Server 2000》(MS2159)
    70-270:《建置與支援Windows XP Professional》(MS2272)

    五、 MCSA 2003/MCSE 2003培訓目標

    網絡管理員
    網絡工程師
    系統管理員
    信息技術專業人員
    信息系統管理員
    網絡操作分析員
    網絡技術員
    技術支持專業人員
    系統工程師
    技術支持工程師
    系統分析師
    網絡分析師
    技術諮詢人員

  • Java基礎知識J2EE初學者需要注意的問題

    J2EE體系結構簡單介紹

    一、J2EE提出的背景

    1、企業級應用框架的需求

    在許多企業級應用中,例如數據庫連接、郵件服務、事務處理等都是一些通用企業需求模塊,這些模塊如果每次再開發中都由開發人員來完

    成的話,將會造成開發週期長和代碼可靠性差等問題。於是許多大公司開發了自己的通用模塊服務。這些服務性的軟件系列同陳為中間件。

    2、為了通用必須要提出規範,不然無法達到通用

    在上面的需求基礎之上,許多公司都開發了自己的中間件,但其與用戶的溝通都各有不同,從而導致用戶無法將各個公司不同的中間件組裝

    在一塊為自己服務。從而產生瓶頸。於是提出標準的概念。其實J2EE就是基於JAVA技術的一系列標準。

    注:中間件的解釋中間件處在操作系統和更高一級應用程序之間。他充當的功能是:將應用程序運行環境與操作系統隔離,從而實現應用程

    序開發者不必為更多系統問題憂慮,而直接關注該應用程序在解決問題上的能力。我們後面說到的容器的概念就是中間件的一種。

    二、相關名詞解釋

    容器:充當中間件的角色

    WEB容器:給處於其中的應用程序組件(JSP,SERVLET)提供一個環境,使JSP,SERVLET直接更容器中的環境變量接口交互,不必關注其它系

    統問題。主要有WEB服務器來實現。例如:TOMCAT,WEBLOGIC,WEBSPHERE等。該容器提供的接口嚴格遵守J2EE規範中的WEB APPLICATION標準

    。我們把遵守以上標準的WEB服務器就叫做J2EE中的WEB容器。

    EJB容器:Enterprise java bean容器。更具有行業領域特色。他提供給運行在其中的組件EJB各種管理功能。只要滿足J2EE規範的EJB放入

    該容器,馬上就會被容器進行高效率的管理。並且可以通過現成的接口來獲得系統級別的服務。例如郵件服務、事務管理。

    WEB容器和EJB容器在原理上是大體相同的,更多的區別是被隔離的外界環境。 WEB容器更多的是跟基於HTTP的請求打交道。而EJB容器不是

    。它是更多的跟數據庫、其它服務打交道。但他們都是把與外界的交互實現從而減輕應用程序的負擔。例如SERVLET不用關心HTTP的細節,

    直接引用環境變量session,request,response就行、EJB不用關心數據庫連接速度、各種事務控制,直接由容器來完成。

    RMI/IIOP:遠程方法調用/internet對象請求中介協議,他們主要用於通過遠程調用服務。例如,遠程有一台計算機上運行一個程序,它提供

    股票分析服務,我們可以在本地計算機上實現對其直接調用。當然這是要通過一定的規範才能在異構的系統之間進行通信。 RMI是JAVA特有

    的。

    JNDI:JAVA命名目錄服務。主要提供的功能是:提供一個目錄系統,讓其它各地的應用程序在其上面留下自己的索引,從而滿足快速查找和

    定位分佈式應用程序的功能。

    JMS:JAVA消息服務。主要實現各個應用程序之間的通訊。包括點對點和廣播。

    JAVAMAIL:JAVA郵件服務。提供郵件的存儲、傳輸功能。他是JAVA編程中實現郵件功能的核心。相當MS中的EXCHANGE開發包。

    JTA:JAVA事務服務。提供各種分佈式事務服務。應用程序只需調用其提供的接口即可。

    JAF:JAVA安全認證框架。提供一些安全控制方面的框架。讓開發者通過各種部署和自定義實現自己的個性安全控制策略。

    EAI:企業應用集成。是一種概念,從而牽涉到好多技術。 J2EE技術是一種很好的集成實現。

    三、J2EE的優越性

    1、基於JAVA技術,平台無關性表現突出

    2、開放的標準,許多大型公司已經實現了對該規範支持的應用服務器。如BEA ,IBM,ORACLE等。

    3、提供相當專業的通用軟件服務。

    4、提供了一個優秀的企業級應用程序框架,對快速高質量開發打下基礎

    四、現狀

    J2EE是由SUN公司開發的一套企業級應用規範。現在最高版本是1.4。支持J2EE的應用服務器有IBM WEBSPHERE APPLICATION SERVER,BEA

    WEBLOGIC SERVER,JBOSS,ORACLE APPLICATION SERVER,SUN ONE APPLICATION SERVER等。

  • CCNA Security Exam Tutorial: When It’s Good To Add Salt

    ITCERT提供的廣告:

    When you started studying for your CCNA certification exam, one of the very first things you learned was the major difference between the enable password and the enable secret – the enable secret is encrypted by default, where the enable password is just sitting there in clear text, waiting to be read!

    When you look at the enable secret in a Cisco router configuration, it looks like it would be impossible to guess. 640-802:Cisco Certified Network Associate(CCNA) After setting the enable secret on this router to the word security, here’s how it appears in the configuration:enable secret 5 $1$24me$gVFxUOI4gYp0IQbhtH8Rz0

    That password has been encrypted by MD5, the Message Digest 5 algorithm. The result of the MD5 algorithm being applied to the password is a 32-character hexadecimal value.

    That password is hard to guess, but not terribly hard to crack. Anyone looking over your shoulder would not be able to come up with that password, but there are readily-available password cracking software devices that can crack that encryption in a matter of minutes. That’s true of any MD5-encrypted password, not just those on Cisco routers.So what can we do about this? We can add SALT to our MD5.

    The salt itself is simply a string of random characters that are added to the encryption process. Salting makes it much more difficult for a hacker to come up with the password; each bit added by the salt process literally makes it twice as difficult for the password to be compromised. A recent Wikipedia entry states that if a password was one of 200,000 words, a 32-bit salt would require 800 trillion hashes for a full-blown brute force attack.

    The actual creation and application of a salt is beyond the scope of the CCNA Security exam, but once you’ve earned that valuable certification – or maybe while you’re preparing for it – do a Google search on “salt md5” and read up on this powerful security tool. In the meantime, look for more CCNA Security tutorials on the site you’re on now as well as my website!

    Chris Bryant, CCIE #12933, is the owner of The Bryant Advantage, home of over 100 free certification exam tutorials, including Cisco CCNA certification test prep articles. His exclusive Cisco CCNA study guide and Cisco CCNA training is also available! Visit his blog and sign up for Cisco Certification Central, a daily newsletter packed with CCNA, Network+, Security+, A+, and CCNP certification exam practice questions! A free 7-part course, “How To Pass The CCNA”, is also available, and you can attend an in-person or online CCNA boot camp with The Bryant Advantage!

  • 好用的 MS SQL 2005 字串加密應用 ( MD5 & SHA1 )

    部門最近決議,要將早期舊系統中使用者密碼的部分轉為加密字串,當然隨之而來的技術討論會議就開始了。
    有人質疑為什麼密碼一定要加密呢??這個問題牽扯到資訊安全的環節了。請想想以下情況:

     

     

     

     

    • 駭客入侵資料庫竊取資料
    • 公司內部有心人士將資料庫內容偷偷竊取
    • 網管人員偷偷使用主管級的帳密登入系統

    當一個公開的系統帳密完全外洩時,輕則系統下架不使用;重則公司或部門將面臨結束營業的情形 (TigerLin 朋友的公司曾經發生過,想當然爾…結束營業)。這就是一直強調密碼要編碼過的原因所在了。

    在找了 MSDN 相關文件之後發現…其實 SQL 2005 就有內建的函式可直接應用了,而且很方便的呢。不過…中間也是發生了一點插曲,折騰了一下才試出來 ^~^a …

    MS SQL 2005 字串加密函式 — HashBytes

    HashBytes提供的加密法有幾種 (MD2、MD4、MD5、SHA、SHA1 ),但最常使用的還是 MD5 與 SHA1。而整個使用過程的感覺來說,基本上還算簡單~只是有一些”眉角”要注意。首先先測試 HashBytes 運作是否合乎需求: 

     
    1 select hashbytes(‘MD5’,‘12345’as MD5,hashbytes(‘SHA1’,‘12345’as SHA1; 
       


      

     產生以下的結果

    MD5 SHA1
    0x827CCB0EEA8A706C4C34A16891F84E7B 0x8CB2237D0679CA88DB6464EAC60DA96345513964

    針對 HashBytes 的應用測試過程

    接下來開一個測試用的 Table 來試試轉換的結果如何:

     

     
    1 CREATE TABLE [dbo].[HashTest](  
    2 [INDEX_NO] [int] IDENTITY(1,1) NOT NULL,  
    3 [PassWD] [varchar](50) COLLATE Chinese_Taiwan_Stroke_CI_AS NOT NULL,  
    4 [HashedPW] [varchar](50) COLLATE Chinese_Taiwan_Stroke_CI_AS NULL,  
    5 CONSTRAINT [PK_HashTest] PRIMARY KEY CLUSTERED  
    6 (  
    7 [INDEX_NO] ASC 
    8 )WITH (IGNORE_DUP_KEY = OFFON [PRIMARY]  
    9 ON [PRIMARY]  
    10 GO 
       

     

    在 PassWD 欄位中輸入一些字串, HashedPW 保持空白,等等要看加密的結果是否正確

    INDEX_NO PassWD HashedPW
    1 test  
    2 test2  
    3 test3  

     然後將以 SHA1 加密過的字串更新到 HashedPW 看看 —

     
    1 update hashtest set hashedPW = HashBytes(‘SHA1’, PassWD) 
       

     咦??怎麼都變成亂碼了啊 O_o…這樣子根本不能用啊…再看了 MSDN 之後發現該函數的回傳值型態為 varbinary,並不是字串形態,所以要再使用 sys.fn_VarBinToHexStr() 進行轉換的動作 — 
      

    INDEX_NO PassWD HashedPW
    1 test 咐戔 L s???閨
    2 test2
    3 test3 >縛 鄀 o Y

     

     
    1 update hashtest set hashedPW = sys.fn_VarBinToHexStr(HashBytes(‘SHA1’, PassWD)); 
       

     

    輸出的結果就正確了 🙂

    INDEX_NO PassWD HashedPW
    1 test 0xa94a8fe5ccb19ba61c4c0873d391e987982fbbd3
    2 test2 0x109f4b3c50d7b0df729d299bc6f8e9ef9066971f
    3 test3 0x3ebfa301dc59196f18593c45e519287a23297589

     

    最後…改一下登入機制的驗證方式,修改比對的欄位後…原本明碼的密碼就可以隨風而逝了,需求達成~

  • SQL Server 2005 檢視表的不思議現象

     春天到了~俗話說「春天後母臉 — 說變就變」,那系統可以說是女人心 — 永遠都有可愛又難以捉模的時刻~ 咳咳咳…扯遠了…回到正題 ^^”。由於最近公司的 DB Server 進行升級,系統也將原本的 SQL 2000 升級至 2005,步驟在一般不過了:
    安裝 => 設定 => 升級 SP2 => 完成把原本的 MDF 掛載上去後,修改連線密碼,一切正常!!上線~隔天不思議的情形就發生了…網頁上顯示的資料居然都是最舊的!! What’s up !?!?

    將頁面上使用的 view 表以 SSMS 開啟,發現排序的指令沒有生效
    程式內使用的 SQL String 為 “Select * from vwTest”
    而 vwTest 內則有下 order by [dtDate] 的語法,恩恩~怎麼看都沒錯啊~
    切到檢視表設計下看…排序以及資料都是正常的!!好…看來是檢視表內的 order 語法無法在讀取檢視表 vwTest 的第一時間生效了…馬上進行 Troble Shooting!!

    在 Google 了一下之後,首先看到了微軟的 KB,裡面說到其症頭為 —

    The SELECT statement uses the TOP (100) PERCENT expression.
    ==> vwTest裡面的確有用到 TOP (100) PERCENT 的選取方式


    The SELECT statement uses the ORDER BY clause.
    ==> 也有使用 order 排序

    解決方式 —
    936305 Cumulative update package 2 for SQL Server 2005 Service Pack 2 is available

    安裝時明明有升級到 SQL 2005 SP2 … 現象卻依然持續的發生,只好繼續找了 T_T
    最後在國外的 SQL SERVER 為主題的 BLOG 中找到了一篇文章說明了因應的對策

    • 在Select語法的部分,將原本的 Select TOP (100) PERCENT 改為 Select TOP 2147483647
    • 有找到另外一種解法,將 Select 語法改為 Select TOP (99.999999999999)也是可行的,注意~小數點後面是 12 個 9 唷!

    我採用的方法是 12 個 9 的方法,將 vwTest 的語法修改之後並儲存,在開啟的同時…一切又回到美好的正常狀態了!這裡也有一個看起來頗奇怪的地方呢,不知道各位有沒有注意到,既然都選取 TOP 100 PERCENT 了,不就是選取全部了嗎?為什麼還要特別加上以百分比選取的語法呢?後來跟程式設計師討論了一下,可能是早期的程式產生器所產生的 VIEW 特有的現象,由於程式已經是 N 年前寫的,現在已經不可考了。但為了安全…輕易的把 TOP 100 PERCENT 拿掉又怕會有更不可思議的意外,因此暫且先用 14個 9 的選取方式代替。

    小插曲 — 針對 SQL 2005 SP2 的重大更新
    這一個更新是在找資料中看到的,標題很有趣的寫著 “A Service Pack for a Service Pack
    這個 hotfix 修正的可是一個大問題呢…”清除工作未在排定的時間間隔執行
    什麼 O_o…排定的工作不會執行,這可是大事,當然馬上把它下載到 SERVER 進行安裝
    有先發現總比到後面問題發生在處理好多了,這雖然是一個小插曲,卻是一個很大的意外收穫呢 ^^b

    參考資料:
    http://support.microsoft.com/kb/926292/en-us
    http://support.microsoft.com/kb/933508
    http://support.microsoft.com/kb/933508
    http://www.themssforum.com/SQLServer/Order-views/
    http://sqlblog.com/blogs/tibor_karaszi/archive/2007/11/28/sorted-views.aspx
    http://www.sqlmag.com/Article/ArticleID/95449/sql_server_95449.html

     

    來源:www.51-pass.com

  • IT & Program 那一方有優勢?

    某一天上班的時間,我正在規劃新的網路架構與DNS安全性的議題報告時,突然有一種很深的感慨…
    在近十年的工作資歷當中,IT相關的部份一直佔得很重,當然台灣企業來說不太像國外一樣分的那麼清楚,所以當IT的同時也兼著開發ERP系統,可以說是「IT為主 程式為輔」的界定吧^^b!之前在鈊象電子任職軟體設計師的時候,就一直覺得很吃力,雖然說寫程式是我的興趣,也算是專長之一,但跟極專業的軟體設計師比我當然還是差多了。有鑑於此在感觸的當下我把 MSN 的暱稱改為「當 IT 比當程式設計師有成就感多了!」~
    後來 Maduka 敲我的 MSN 時看到我的暱稱,只發出了一陣陰險的笑聲(XD),莫約十秒後他的暱稱變成「當程式設計師 比當 IT 有成就感多了!」。好吧~我被嗆了~哇哈~由於當下我沒想太多,看了笑一下之後我就繼續我的工作了。
    下班騎機車回來途中,腦袋一直運轉著下午的話題,分析到底是 IT 好還是 Program 好,後來發現…
    現在是網際網路發達的年代,如果今天程式寫的再好,那沒有好的 IT 架構也沒有用啊!舉個例子:
    ================================================
     今天公司有發送大量電子報的需求,RD部門已經將程式的效能、執行續、網路 I/O 相關的部份寫的非常好了!測試 1000 封發送速度極快,已經可以上線了!但正式運作時則經常發生以下情形 —
    01.退信率高
    02.發信時部門網路幾乎癱瘓
    03.發送到某個數量時 SMTP Server 主機會產生死當
    04.超過 10000 封以後寄信速度會只剩下 1 / 6
     
    從以上的情形看來是程式設計的問題嗎?為什麼在測試的時候很ok,一上線就變成這個樣子呢?
    會以電子報作為例子是因為這是個很典型的 程式 + IT 一起運作的例子 (我在某機公司就遇到這樣的情況),問題其實是出在 —
    01.DNS 無 MX 紀錄或是反解不正確
    02.網路架構層級太深,電子報的 Server 位於網路底層,但 SMTP Server 在網路的上層
    03.沒有調整 SMTP 工作階段的數量,大量發送的情況下 MTA 程式更是一個關鍵點
     
    讓我們來針對每一個問題作處理 (以下為 IT 部門的負責範圍) —

    1. DNS 的 MX 紀錄設定好,PTR紀錄設反解,如果要成功機率更高則加入 SPF Record 與 CallerID Record
    2. 可將 SMTP 放置到 DMZ 中,減少封包經由 NAT 轉換的損失,並將電子報主機移至跟 SMTP Server 同一個 Switch ( 視情況是否加入 DMZ)
    3. MTA來說,可以使用 Linux Base 的 Postfix,並參閱官方的設定說明 (建議發送 eDM 不要使用 IIS 的 SMTP)。

    ================================================
     
    由以上的例子可以看得出來,程式寫的好但是 IT 架構設計不良,程式的好無法顯現出來
    IT 架構設計優良,但是沒有好的程式來執行測試,那其價值也無法發揮
     
    最後,我的 MSN 參照「食神」中的撒尿牛丸改成「IT 與 Program 有什麼好爭的!混在一起搞個 ERP 不就得了!
    最後我的朋友也很欣然同意了我的說法了 ^^
     
    現在是團隊合作的時候,單兵作戰的時代已經過去了,唯有多方面的配合才能讓企業更加快速的成長
    願我的朋友們每一位都可以擔任團隊中的關鍵角色,你們一定可以的!GO~