Apa alasan untuk menghentikan SQL Server?

9

Yang saya baca adalah bagaimana berpotensi merusaknya untuk menghentikan SQL Server karena itu menciptakan cache dingin dan menyedot memori. Jadi mengapa seseorang ingin menghentikan SQL Server? Jika Anda dapat memberikan tautan apa pun ke artikel sehingga saya dapat membaca lebih lanjut tentang ini, saya akan sangat menghargainya!

Pertanyaan ini diajukan oleh guru saya. Kecuali itu pertanyaan jebakan, itu membuat saya benar-benar bingung. Pertanyaan persisnya adalah:

Lakukan penelitian menggunakan Internet dan pelajari mengapa seseorang ingin menghentikan SQL Server. Jelaskan jawabanmu.

Ini dalam konteks kami mengeksplorasi cara menggunakan SQL Server 2008 R2. Saya tidak yakin apakah dia meminta jawaban yang jelas, atau jika ada sesuatu yang saya lewatkan.

Amerilys
sumber
2
Mati listrik? Upgrade OS? Migrasi server fisik? Pada dasarnya semua alasan Anda ingin me-restart komputer Anda. Atau bagaimana dengan memutakhirkan SQL Server itu sendiri, bagaimana Anda akan melakukannya saat sedang berjalan?
user253751

Jawaban:

22

Brent mencantumkan beberapa alasan yang tidak valid untuk menghentikan layanan, tetapi ada alasan yang sah juga:

  • Mulai ulang diperlukan oleh paket layanan atau pembaruan lainnya
  • Perubahan konfigurasi tertentu (mis. Perubahan akun layanan, perubahan perangkat keras, inisialisasi file instan, daftar ini dapat berlangsung selama berminggu-minggu)
  • Dalam sebuah cluster, restart untuk memaksa failover atau menerapkan tambalan bergulir
  • Penambalan Windows
Aaron Bertrand
sumber
1
Dapatkah saya menyarankan peningkatan Perangkat Keras, SSD, Memori, ...?
McNets
1
Saya juga akan menambahkan IFI yang diaktifkan.
Erik Darling
Jika Anda memindahkan basis data sistem dari C: ke drive lain Anda harus menghentikannya. Ada alasan sah lainnya.
SQL_Deadwood
Mengaktifkan Selalu Tersedia Grup di manajer kontrol layanan adalah yang lain.
Kris Gruttemeyer
Tindakan tertentu yang dilakukan di SQL Server Configuration Manager, misalnya mengaktifkan port TCP / IP atau pipa bernama, juga memerlukan restart layanan agar berlaku.
dlatikay
19

Karena mereka pikir ada masalah memori - SQL Server menggunakan semua memori yang tersedia untuk itu, hingga pengaturan memori maks (dan bahkan lebih.) Orang-orang yang tidak tahu masuk ke Task Manager, melihat SQL Server menggunakan banyak memori, dan berpikir, "Pasti ada kebocoran memori - saya akan berhenti dan memulai kembali SQL Server, dan lihat apa yang terjadi." Benar saja, itu membebaskan banyak memori (karena SQL Server tidak langsung mengalokasikan semuanya secara default), sehingga mereka pikir mereka memperbaiki bug. Hal berikutnya yang Anda tahu, mereka me-restart SQL Server setiap minggu.

Karena mereka pikir ada masalah CPU - kueri akan menggunakan banyak sumber daya CPU, terutama dalam kasus masalah sniffing parameter. Orang yang tidak tahu mencoba menghubungkan ke SQL Server tanpa mengetahui tentang Dedicated Admin Connection (DAC), tidak dapat terhubung, dan hanya kehabisan pilihan. Mereka memulai kembali karena eksekutif berdiri di belakang mereka, menginginkan solusi cepat.

Karena mereka telah mendengarnya memperbaiki korupsi - ketika orang-orang mengalami masalah korupsi, mereka sering kali mau mencoba apa saja untuk memperbaikinya.

Karena mereka ingin rollback selesai - mereka membunuh kueri, dan itu tetap di rollback untuk sementara waktu karena mereka tidak tahu memutar kembali permintaan adalah single-threaded. Setelah beberapa menit (atau beberapa jam) menunggu, mereka me-restart SQL Server, berpikir bahwa rollback tidak diperlukan ketika mulai kembali lagi. Sayangnya, mereka salah, dan SQL Server terus berjalan dengan rollback saat startup.

Brent Ozar
sumber
"Karena mereka ingin rollback selesai": Saya ingat belajar pelajaran itu dengan cara yang sulit.
Michael J Swart
1

Salah satu alasannya adalah karena Anda membeli perangkat keras baru dan memigrasi basis data ke server baru ini. Anda sekarang mematikan instance server sql ini di kotak lama (bersama dengan kotak itu sendiri) karena Anda ingin memastikan tidak ada yang terhubung lagi

Anda pindah ke cloud, kotak di prem tidak diperlukan lagi, ditutup, diformat ulang, dan diubah bentuknya (jika tidak terlalu lama)

SQLMenace
sumber
1

Alasan yang valid adalah ketika ada perangkat lunak lain yang berjalan di server yang sama yang membutuhkan beberapa memori yang dimiliki SQL server, tetapi itu hanya berjalan beberapa kali dalam sebulan.

Misalnya istri saya (seorang akuntan yang ingin tahu sedikit (dan tidak kurang) tentang SQL server yang diperlukan untuk melakukan pekerjaannya) memiliki sistem berbasis server SQL yang digunakan oleh 3 orang termasuk dia untuk memproses dataset yang sangat besar, mereka melakukan banyak permintaan ad-hock, tetapi beberapa kali sebulan mereka harus menjalankan mesin penghitung yang ada di server yang sama, dan mengakses database. Mesin perhitungan membutuhkan memori. Mereka tidak memiliki DBA, mereka tidak bisa mendapatkan dana untuk lebih banyak perangkat keras, bahkan jika mereka bisa, departemen TI (yang tahu sedikit tentang SQL maka akuntan lakukan) akan membutuhkan waktu berbulan-bulan untuk menyiapkan perangkat keras baru, dan pengaturan ulang SQL Server memungkinkan mereka melakukan pekerjaan mereka sebagai akuntan. (Sistem transaksional terpisah.)

Ian Ringrose
sumber
Mereka mungkin ingin mengurangi dan meningkatkan pengaturan Memori maks sebagai gantinya membebaskan beberapa RAM.
Magier
@Magier dan berapa pengembalian investasi dari seorang akuntan yang belajar bagaimana melakukan itu daripada melakukan pekerjaannya .... (Dan segera setelah perubahan apa pun, diperlukan angka ajaib yang berbeda untuk diset sebagai waktu yang berbeda.)
Ian Ringrose