เมื่อเร็ว ๆ นี้ฉันทำการอัปเกรดระบบปฏิบัติการบนเซิร์ฟเวอร์ฐานข้อมูลหนึ่งของเราย้ายจาก Server 2003 ไปเป็น Server 2008 DBMS คือ SQL Server 2005 ในขณะที่ติดตั้ง SQL ในการติดตั้ง Windows ใหม่ฉันไปที่เซิร์ฟเวอร์ DB อื่นเพื่อตรวจสอบคู่ ของการตั้งค่า
ตอนนี้ฉันคิดเสมอว่าเซิร์ฟเวอร์ตัวที่สองนี้คือ Server 2003 x64 + SQL 2005 x64 (จากที่ฉันบอกไป) แต่ตอนนี้ฉันมีข้อสงสัยเกี่ยวกับเรื่องนี้ ตอนนี้ฉันสงสัยว่าจริงๆแล้วมันเป็น SQL 32 บิตเท่านั้น แต่ฉันต้องการตรวจสอบสิ่งนี้
นี่คือรายละเอียดบางส่วน:
ระบบปฏิบัติการแน่นอน 64 บิต
xp_msver
แสดงให้เห็นPlatform
ว่าNT INTEL X86
SELECT @@VERSION
แสดงให้เห็นว่า Microsoft SQL Server 2005 - 9.00.4035.00 (Intel X86)...
อย่างไรก็ตาม sqlservr.exe ไม่แสดงด้วย '* 32' ใน taskmgr ไม่มีใครรู้ว่าทำไมถึงเป็นเช่นนี้ถ้าเป็น 32 บิตตามที่อ้างจริง อย่างไรก็ตามเรื่องนี้ดูเหมือนว่าจะหมดลงในโฟลเดอร์ไฟล์โปรแกรม x86
ถ้าฉันทำการตรวจสอบแบบเดียวกันกับการติดตั้ง 64 บิตที่ได้รับการยืนยันก็จะให้การอ่าน 64 บิตที่คาดไว้กลับคืนซึ่งสามารถพิสูจน์ได้ว่าเซิร์ฟเวอร์นี้มีปัญหาใช้งานได้เพียง 32 บิตเท่านั้น
ในตอนนี้คำถามก็เกิดขึ้นว่าหน่วยความจำที่ติดตั้ง '32 บิต 'นี้สามารถใช้งานได้เท่าใด ตัวจัดการงานรายงานเกี่ยวกับการใช้หน่วยความจำ 3.5GB สำหรับ sqlservr.exe (เซิร์ฟเวอร์มีหน่วยความจำ 16GB) ฉันสงสัยว่า AWE ไม่ได้รับการกำหนดค่าเลยและดังนั้นเซิร์ฟเวอร์จะมีการใช้งานน้อย (จำได้ว่าระบบปฏิบัติการเป็น 64 บิต) หาก SQL ใช้พื้นที่ที่อยู่ 32 บิตเพียงอย่างเดียว
สมมติฐานนี้ถูกต้องหรือไม่
ฉันรู้สึกว่าเซิร์ฟเวอร์ควรติดตั้ง SQL ใหม่เป็น 64 บิตเพื่อใช้ประโยชน์จากแพลตฟอร์มฮาร์ดแวร์อย่างเต็มที่ แต่ขณะนี้อยู่ระหว่างการผลิตอย่างมาก นี่จะไม่ใช่เรื่องง่าย ฉันสงสัยว่าเราอาจต้องกำหนดค่า AWE ให้ถูกต้องและปล่อยทิ้งไว้ในขณะนั้น (เว้นแต่จะเป็นแนวคิดที่ไม่ดีใช่ไหม)
ฉันขอโทษที่คำถามนี้คลุมเครือ / หายไปเล็กน้อย ฉันไม่มีผู้เชี่ยวชาญ SQL เพียงพยายามจัดการสิ่งที่เกิดขึ้นที่นี่