Saya memiliki contoh SQL Server 2012 berjalan sebagai layanan di komputer saya, dan menurut halaman layanan itu log on sebagai akun "NT Service \ MSSQLSERVER". Namun saya tidak bisa melihat nama akun itu di tempat lain termasuk di area "Pengguna dan Grup Lokal" di layar manajemen komputer, karena, seperti yang dikatakan tautan di bawah, itu bukan Akun Pengguna, itu adalah nama layanan, di kotak itu yang Microsoft sangat membantu memberi label "akun". Pada titik ini saya bisa melihat banyak orang bingung.
Tugas yang saya coba selesaikan adalah mengembalikan file menggunakan dialog SSMS "Locate Backup File", yang menggunakan dialog yang sama sekali berbeda dengan dialog buka file windows standar, mungkin karena sedang melakukan pekerjaan "jarak jauh" dan beroperasi dari konteks keamanan server SQL, sumber lain kebingungan pengguna akhir, yang saya harap pertanyaan ini dapat membantu menjernihkan.
Sejauh ini jika saya ingin mengembalikan file .mdf / .bak cadangan yang saya miliki di salah satu folder saya, saya harus mengatur folder itu agar dapat dibaca oleh semua orang atau saya tidak bisa masuk ke sana dengan SQL Server "Locate Backup Jendela file ". Saya menemukan ide ini bahwa Anda menggunakan GUI berbicara ke layanan yang memiliki akun pengguna dan hak berbeda dari Anda, bahwa tidak seorang pun di Microsoft bahkan peduli untuk menjelaskan kepada Anda, sangat membingungkan bahkan ketika saya memiliki pengalaman bertahun-tahun dengan administrasi sistem windows .
Saya berharap saya melewatkan beberapa halaman dokumentasi untuk SQL Server yang akan memberi tahu Anda, setelah menginstal contoh server SQL baru, bagaimana Anda mengatur keamanan.
Forum posting seperti ini bahkan memiliki staf Microsoft mengatakan "ini rumit", dan itu "berubah, lagi" di Denali. Bagaimana cara kerjanya sekarang di SQL Server 2012, dan bagaimana saya bisa menambahkan izin untuk membaca file milik Pengguna ke keamanan mesin Database SQL SID
.
sumber
Jawaban:
Untuk referensi "Denali" adalah SQL Server 2012. Berkenaan dengan "kebingungan pengguna akhir", saya tidak terlalu peduli dengan apakah pengguna akhir bingung atau tidak berkaitan dengan SSMS. Microsoft tidak mengembangkan alat ini untuk pengguna akhir normal, tetapi untuk administrator database dan / atau pengguna yang harus mengelola database. Oleh karena itu akan ada kurva belajar dengan alat yang disediakan dan bagaimana fungsinya. Kotak dialog file telah seperti itu di SSMS sejak SSMS keluar dengan SQL Server 2005. Ini sebabnya Anda akan secara umum melihat sebagian besar tetap dengan pernyataan T-SQL untuk membuat cadangan, memulihkan, atau melampirkan database yang telah menggunakannya sejak saat itu .
Untuk mengkonfigurasi izin sistem file dengan SQL Server Anda dapat mengikuti instruksi dari MSDN di sini .
Cara akun layanan ditangani tidak datang dengan atau karena SQL Server, itu karena perubahan pada tingkat sistem operasi. Window Server 2008 R2 menempatkan sedikit lapisan keamanan di sekitar akun layanan. Keuntungan yang Anda miliki adalah bahwa akun layanan dapat lebih mudah mengakses sumber daya pada domain bahkan jika diinstal dengan pengaturan default. Tautan ini memberikan tampilan yang cukup terperinci tentang bagaimana izin akun layanan ditangani dengan SQL Server 2012. Kutipan dari tautan di bawah ini di Akun Virtual yang digunakan secara default di SQL Server 2012. Ada juga tautan yang disediakan dalam artikel yang membahas lebih lanjut diskusi tentang konsep Akun Layanan dengan Windows, di sini. Itu dari Window Server 2008 R2 tapi saya percaya masih berlaku pada Window Server 2012, dan kemungkinan Window Server 2012 R2.
sumber
Untuk melihat / mengakses file di folder lain, berikan
NT SERVICE\MSSQLSERVER
izin pada folder tersebut. Lihat jawaban saya yang diposting pada file .bak tidak terlihat di direktori mana pun di SSMS untuk cuplikan layar dan langkah-langkah yang terlibat. (Sedikit berbeda dengan menambahkan izin pengguna / grup normal ke folder.)Semoga itu bisa membantu!
sumber
Bahkan, jika Anda mencoba melakukan pemulihan melalui SSMS, dan Anda masuk melalui Otentikasi Windows (!), Itu akan menjadi akun Windows ANDA (dan bukan "semua orang) yang memerlukan izin untuk itu - BUKAN Layanan SQL Server Akun. Harapan yang menghapus kebingungan. Akun layanan memiliki kebutuhan lain. Misalnya jika Anda masuk melalui Akun Otentikasi SQL - lalu izin mana yang diminta sistem operasi? - Ini akan menjadi Akun Layanan SQL Server dalam hal ini hanya kasus! Ini belum berubah sejak SQL Server 7.0 dan mungkin bahkan sebelum itu :)
sumber
.bak
file (yang umumnya tidak akan ada jika ada di direktori pengguna Anda, kecuali diberikan secara eksplisit).