Perangkat hilang menyebabkan database untuk ditandai tersangka

PENTING: Artikel ini diterjemahkan menggunakan perangkat lunak mesin penerjemah Microsoft dan bukan oleh seorang penerjemah. Microsoft menawarkan artikel yang diterjemahkan oleh seorang penerjemah maupun artikel yang diterjemahkan menggunakan mesin sehingga Anda akan memiliki akses ke seluruh artikel baru yang diterbitkan di Pangkalan Pengetahuan (Knowledge Base) dalam bahasa yang Anda gunakan. Namun, artikel yang diterjemahkan menggunakan mesin tidak selalu sempurna. Artikel tersebut mungkin memiliki kesalahan kosa kata, sintaksis, atau tata bahasa, hampir sama seperti orang asing yang berbicara dalam bahasa Anda. Microsoft tidak bertanggung jawab terhadap akurasi, kesalahan atau kerusakan yang disebabkan karena kesalahan penerjemahan konten atau penggunaannya oleh para pelanggan. Microsoft juga sering memperbarui perangkat lunak mesin penerjemah.

Klik disini untuk melihat versi Inggris dari artikel ini:180500
Artikel ini telah diarsipkan. Artikel ditawarkan dalam bentuk "apa adanya" dan tidak akan dapat diperbarui lagi.
GEJALA
SQL Server menandai tersangka database jika salah satu file perangkat untukDatabase tersedia ketika mencoba untuk memulai. Anda dapat melihat salah satu dariset berikut pesan log galat SQL Server:
Pesan galat 1
96/11/18 10:48:32.60 kernel udopen: sistem operasi kesalahan 32 (
proses tidak dapat mengakses file karena sedang digunakan oleh orang lain
proses.) selama penciptaan/pembukaan perangkat fisik,
C:\DATA\SQL\MSDB.DAT (atau C:\DATA\SQL\MSDB.MDF)

96/11/18 10:48:32.60 kernel udactivate (utama): gagal untuk membuka
perangkat C:\MSSQL\DATA\MSDB.DAT (atau C:\DATA\SQL\MSDB.MDF) untuk vdn 127
Pesan galat 2
96/11/18 10:48:32.60 kernel udopen: sistem operasi kesalahan 2 (
sistem tidak dapat menemukan berkas yang dicari.) selama penciptaan/pembukaan
perangkat fisik C:\MSSQL\DATA\MSDB.DAT (atau C:\DATA\SQL\MSDB.MDF)

96/11/18 10:48:32.60 kernel udactivate (utama): gagal untuk membuka perangkat C:\MSSQL\DATA\MSDB.DAT (atau C:\DATA\SQL\MSDB.MDF) untuk vdn 127
Ini akan mengikuti kemudian di log oleh:
96/11/18 10:48:36.70 kernel udread: sistem operasi kesalahan 6 (
menangani tidak sah.) pada perangkat ' C:\MSSQL\DATA\MSDB.DAT' (atau C:\DATA\SQL\MSDB.MDF) (virtpage
0x7f000018).

96/11/18 10:48:36.77 spid11 Error: 840, keparahan: 17, negara: 2

96/11/18 10:48:36.77 spid11 perangkat 'MSDBData' (dengan nama fisik
' C:\MSSQL\DATA\MSDB.DAT' (atau C:\DATA\SQL\MSDB.MDF), dan perangkat virtual nomor 127) tidak
tersedia. Silakan hubungi Administrator sistem untuk bantuan.

96/11/18 10:48:36.77 spid11 Buffer 1092480 dari database 'msdb'
memiliki nomor halaman 0 di header halaman dan halaman nomor 24 di
penyangga header

96/11/18 10:48:37.43 spid11 tidak dapat melanjutkan dengan pemulihan
dbid <5>karena dari kesalahan sebelumnya. Melanjutkan dengan berikutnya</5>
database.
Misalnya, melakukan langkah-langkah berikut akan menunjukkan masalah:
  1. Berhenti SQL Server.
  2. Mengeluarkan perintah berikut dari prompt perintah pada Mssql\Data direktori:

    Ren msdb.dat msdb.sav
  3. Mulai SQL Server.
Anda akan melihat kesalahan di atas (orang-orang dari set kedua) dalam SQLServer errorlog. Jika Anda kemudian mengeluarkan query berikut di masterdatabase
   select name, dbid, mode, status from sysdatabases where dbid =   db_id('msdb')				

Anda menerima hasil sebagai berikut:
   name     dbid   mode   status   ------------------------------   msdb      5      0      328				

Status 328 mengevaluasi untuk:
   truncate log on chkpt   database not recovered yet   database is suspect				

Untuk selengkapnya, lihat topik "Sysdatabases (Master Database hanya)"dalam SQL Server buku secara Online.
PENYEBAB
Pada saat startup, SQL Server cuba mendapatkan exclusive lock pada perangkatfile. Jika perangkat yang digunakan oleh proses lainnya (misalnya, cadanganperangkat lunak) atau jika berkas hilang, skenario yang dijelaskan di atas akandihadapi. Dalam kasus ini, biasanya ada tidak ada yang salah denganperangkat dan database. Untuk database untuk pulih dengan benar, perangkatharus dibuat tersedia, dan database status harus di-reset.
TEKNIK PEMECAHAN MASALAH
Untuk mengatasi masalah ini, lakukan langkah-langkah di bawah ini. Perhatikan bahwalangkah terakhir kritis.
  1. Memastikan bahwa berkas perangkat ini benar-benar tersedia.
  2. Menggunakan sp_resetstatus tambahan disimpan prosedur untuk me-reset status database tersangka. Jika Anda tidak melakukannya, membuat ini prosedur dengan mengeksekusi skrip Instsupl.sql, ditemukan di Mssql\Install direktori. Untuk informasi lebih lanjut tentang sp_resetstatus, lihat "Reset menduga Status" topik dalam SQL Server buku Online.
  3. Jalankan sp_resetstatus dalam database master untuk database curiga:
          use master      go      exec sp_resetstatus msdb   -- replace msdb with your database name 						
    Anda akan melihat output berikut:
          Prior to Update sysdatabases attempt for DBName='msdb', the mode=0      and status=328 (status suspect_bit=256). For DBName='msdb' in      sysdatabases, status bit 256 was forced Off and mode was forced to      0. WARNING: You MUST stop/restart SQL Server prior to accessing this      database! 					
  4. Berhenti dan restart SQL Server.
  5. Verifikasi bahwa database ditemukan dan tersedia.
  6. Menjalankan DBCC NEWALLOC, DBCC TEXTALL, dan DBCC CHECKDB.
INFORMASI LEBIH LANJUT
Jika database masih ditandai sebagai tersangka setelah melakukan langkah-langkah ini,mungkin ada masalah lain mencegah database pulih. Padatitik ini, Anda dapat memulihkan dari cadangan baik atau mengatur databaseuntuk modus darurat-menyalurkan dan menggunakan sebagian besar salinan program (BCP) untuk sebagian besar menyalin datakeluar. Untuk informasi selengkapnya, klik nomor artikel berikut untuk melihat artikel di Pangkalan Pengetahuan Microsoft:
165918Bypass (darurat) mode dan MEMBUANG transaksi dengan NO_LOG
Penting Jika Anda menggunakan artikel ini (Q165918) dan tidak yakin penuhkonsekuensi dari tindakan yang dijalankan, hubungi dasar Andadukungan Anda untuk bantuan.

DB pos pemeriksaan

Peringatan: Artikel ini telah diterjemahkan secara otomatis

Properti

ID Artikel: 180500 - Tinjauan Terakhir: 12/05/2015 08:22:01 - Revisi: 2.0

Microsoft SQL Server 6.0 Standard Edition, Microsoft SQL Server 6.5 Standard Edition

  • kbnosurvey kbarchive kbprb kbmt KB180500 KbMtid
Tanggapan