Нещодавно я проводив оновлення ОС на одному з наших серверів БД, переходячи з Server 2003 до Server 2008. СУБД - це SQL Server 2005. Перевстановлюючи SQL на новій установці Windows, я перейшов до іншого нашого сервера БД, щоб перевірити пару налаштувань.
Тепер я завжди вважав, що на цьому другому сервері був сервер 2003 x64 + SQL 2005 x64 (з того, що мені сказали), але зараз я сумніваюся з цього приводу. Зараз я підозрюю, що це насправді лише 32-бітний SQL, однак я хотів би це перевірити.
Ось деякі деталі:
ОС, безумовно, 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,5 Гб пам’яті для sqlservr.exe (Сервер має 16 Гб фізичної форми). Я підозрюю, що AWE взагалі не був налаштований, і тому сервер буде істотно недостатньо використаний (пам'ятаючи, що ОС 64-бітний), якщо SQL просто використовує 32-бітний адресний простір.
Чи правильне це припущення?
Я вважаю, що для повного використання апаратної платформи сервер повинен перевстановити SQL як 64 біт, однак він наразі сильно виробляється; це не буде легким завданням. Я підозрюю, що нам, можливо, доведеться правильно налаштувати AWE і нехай це буде наразі (якщо це погана ідея?).
Прошу вибачення, що це запитання трохи неясне / втрачене; Я не експерт SQL, просто намагаюся зрозуміти, що тут відбувається.