Anda menginstal contoh Microsoft SQL Server 2005, Microsoft SQL Server 2008, atau Microsoft SQL Server 2008 R2.
Contoh SQL Server bernama INST1 dan host database yang dinamakan Test_RO_FG_DB.
Database berisi kelompok berkas berikut:
Utama
RO_FG
RW_FG
Filegroup yang bernama RO_FG ditandai sebagai READ_ONLY.
Anda menginstal contoh baru dari Microsoft SQL Server 2012. Contoh ini SQL Server 2012 bernama INST2.
Anda melepaskan database Test_RO_FG_DB dari INST1.
Anda mencoba untuk melampirkan Test_RO_FG_DB database ke INST2.
Anda menerima pesan galat yang menyerupai berikut ini:
MSG 3415, tingkat 16, negara bagian 2, garis jatuh berseri 1 Database 'Test_RO_FG_DB' tidak dapat ditingkatkan karena hal itu baca-saja, memiliki read-only file atau pengguna tidak memiliki izin untuk mengubah beberapa file. Membuat database atau file ditulisi, dan jalankan kembali pemulihan.
Anda mencoba untuk melekatkan kembali database Test_RO_FG_DB untuk INST1.
Dalam skenario ini, Anda tidak bisa kembali database untuk INST1. Dan, Anda menerima pesan galat berikut di log kesalahan SQL Server:
2012-05 / 03 22:55:45.37 spid52 mulai database 'Test_RO_FG_DB'. 2012-05-03 22:55:45.78 spid52 * ******************************************************************************* 2012-05 / 03 22:55:45.78 spid52 * mulai STACK DUMP: 2012-05 / 03 22:55:45.78 spid52 * 05/03/12 22: 55: 45 spid 52 2012-05 / 03 22:55:45.78 spid52 * lokasi: logscan.cpp:1490 2012-05 / 03 22:55:45.78 spid52 * ekspresi: palsu 2012-05 / 03 22:55:45.78 spid52 * SPID: 52 2012-05 / 03 22:55:45.78 spid52 * proses ID: 9156 2012-05 / 03 22:55:45.78 spid52 * deskripsi: nilai tidak sah switch 2012-05 / 03 22:55:45.78 spid52 * byte masukan Buffer 98 - 2012-05 / 03 22:55:45.78 spid52 * mengubah database Test_RO_FG_DB mengatur online 2012-05 / 03 22:55:51.05 spid52 Error: 17065, keparahan: 16 negara: 1. 2012-05 / 03 22:55:51.05 spid52 SQL Server pernyataan: File: <logscan.cpp>, baris = 1490 gagal pernyataan = saklar tidak valid 'Palsu' nilai. Kesalahan ini mungkin berhubungan dengan waktu. Jika kesalahan tetap ada setelah pernyataan Siarang, menggunakan DBCC CHECKDB untuk memeriksa database untuk integritas struktural, atau me-restart server untuk memastikan struktur data di kehabisan memori tidak rusak. 2012-05 / 03 22:55:51.10 spid52 Error: 3624, keparahan: 20 negara: 1. 2012-05 / 03 22:55:51.10 spid52 a sistem pernyataan cek telah gagal. Periksa log galat SQL Server untuk rincian. Biasanya, kegagalan pernyataan yang disebabkan oleh peranti penangkap lunak bug atau data korupsi. Untuk memeriksa database korupsi, mempertimbangkan menjalankan DBCC CHECKDB. Jika Anda setuju untuk mengirim dump ke Microsoft selama penataan, mini dump akan dikirim ke Microsoft. Pembaruan mungkin tersedia dari Microsoft dalam paket layanan terbaru atau QFE dari dukungan teknis. 2012-05 / 03 22:56:09.16 spid52 Error: hingga sepanjang 3414, keparahan: 21 negara: 1. 2012-05 / 03 22:56:09.16 spid52 An error terjadi selama pemulihan, mencegah database 'Test_RO_FG_DB' (database ID 19) untuk me-restart. Mendiagnosa pemulihan kesalahan dan memperbaikinya, atau memulihkan dari cadangan baik dikenal. Jika galat tidak diperbaiki atau diharapkan, hubungi dukungan teknis. 2012-05 / 03 22:56:09.18 spid52 Error: 928, keparahan: 20 negara: 1. 2012-05 / 03 22:56:09.18 spid52 selama upgrade database mengangkat pengecualian 926 keparahan 14, negara bagian 1, alamat penyuratan 0000000000F6A971. Menggunakan nomor pengecualian untuk menentukan penyebabnya.</logscan.cpp>
Catatan Masalah ini hanya terjadi ketika Anda mencoba melampirkan sebuah database yang berisi filegroup yang ditandai READ_ONLY. Masalah ini tidak terjadi ketika Anda mencoba untuk memindahkan database READ_ONLY di mana semua data ditandai READ_ONLY.
Masalah ini terjadi karena SQL Server 2012 tidak mendeteksi filegroup baca-saja sebelum dimulai untuk meng-upgrade database. Setelah upgrade telah dimulai, SQL Server 2012 menulis entri log transaksi. Versi sebelumnya tidak dapat membaca entri log transaksi yang baru.
Perbaikan untuk masalah ini pertama kali dirilis pada 2 Update kumulatif untuk SQL Server 2012. Untuk informasi lebih lanjut tentang paket pembaruan kumulatif ini, klik nomor artikel berikut ini untuk melihat artikel di dalam Pangkalan Pengetahuan Microsoft:
Catatan Karena membangun kumulatif, setiap baru memperbaiki rilis berisi semua perbaikan terbaru dan semua perbaikan keamanan yang disertakan dengan sebelumnya SQL Server 2012 memperbaiki rilis. Microsoft menganjurkan agar Anda menerapkan terbaru fix release yang berisi perbaikan terbaru ini. Untuk informasi lebih lanjut, klik nomor artikel berikut ini untuk melihat artikel di dalam Pangkalan Pengetahuan Microsoft:
Dalam SQL Server Management Studio, menciptakan database yang memiliki nama yang sama dan struktur fisik sebagai database yang ingin Anda sertakan. Dalam kode contoh berikut menunjukkan cara untuk melakukannya:
Pada prompt perintah, mengubah nama file dalam database yang Anda pindah pada langkah 2. Ubah nama berkas untuk mencocokkan database yang Anda buat di langkah 4. Perintah contoh berikut menunjukkan cara untuk melakukannya:
Dalam SQL Server Management Studio, menciptakan database yang memiliki nama yang sama dan struktur fisik sebagai database yang ingin Anda sertakan. Dalam kode contoh berikut menunjukkan cara untuk melakukannya:
Pada prompt perintah, mengubah nama file dalam database yang Anda pindah pada langkah 2. Ubah nama berkas untuk mencocokkan database yang Anda buat di langkah 4. Perintah contoh berikut menunjukkan cara untuk melakukannya:
Mengatur database ke modus darurat, dan melakukan perbaikan. Untuk melakukan ini, jalankan perintah berikut.
Catatan Log transaksi database dibangun selama langkah ini. Hal ini dapat mengakibatkan kehilangan data. Oleh karena itu, sebaiknya Anda cadangan database sebelum Anda menjalankan langkah ini.
ALTER DATABASE Test_RO_FG_DB SET EMERGENCY
GO
ALTER DATABASE Test_RO_FG_DB SET SINGLE_USER
GO
DBCC CHECKDB (Test_RO_FG_DB, repair_allow_data_loss) WITH ALL_ERRORMSGS
GO
ALTER DATABASE Test_RO_FG_DB SET MULTI_USER
GO
Verifikasi bahwa database online, dan gulung balik fungsi layanan Broker.
Menghapus file database yang tidak diperlukan. Perintah contoh berikut menunjukkan cara untuk melakukannya:
del /P new_Test_RO_FG.mdf
del /P new_Test_RO_FG_File1.ndf
del /P new_Test_RW_FG_File1.ndf
del /P new_Test_RO_FG_log.ldf
Ada beberapa langkah yang terjadi saat database melekat contoh SQL Server. Langkah-langkah ini termasuk memulihkan database dan meng-upgrade file dari versi sebelumnya dari SQL Server.
Dalam edisi yang dijelaskan di bagian "Gejala", SQL Server 2012 mulai proses upgrade sebelum read-only file dalam database terdeteksi. Langkah-langkah upgrade mencakup mulai transaksi untuk menghapus "bersih menutup" sedikit di halaman boot database. Versi sebelumnya SQL Server tidak dapat membaca catatan transaksi mulai. Oleh karena itu, basis data tidak dapat digunakan dalam versi sebelumnya dari SQL Server, dan SQL Server menghasilkan kesalahan 3624.
Di tempat upgrade ketika database ditandai sebagai baca-saja
Ketika Anda menjalankan upgrade di tempat dari suatu contoh dari SQL Server yang berisi baca-saja database yang bernama Test_RO_DB untuk SQL Server 2012, Anda mungkin menerima pesan galat yang menyerupai berikut di log kesalahan SQL Server:
2012-05-04 21:03:59.23 spid19s mulai database 'Test_RO_DB'. 2012-05-04 21:03:59.56 spid19s Converting database 'Test_RO_DB' dari versi 661 untuk versi 706. 2012-05-04 21:03:59.56 spid19s Error: 928, keparahan: 20 negara: 1. 2012-05-04 21:03:59.56 spid19s selama upgrade, database mengangkat pengecualian 3415, keparahan 16, negara bagian 1, alamat penyuratan 000007FEE66D784A. Menggunakan nomor pengecualian untuk menentukan penyebabnya. 2012-05-04 21:03:59.61 spid19s Error: 3415, keparahan: 16 negara: 1. 2012-05-04 21:03:59.61 spid19s Database 'Test_RO_DB' tidak dapat ditingkatkan karena hal itu baca-saja, memiliki read-only file atau pengguna tidak memiliki izin untuk mengubah beberapa file. Membuat database atau file ditulisi, dan jalankan kembali pemulihan.
Pada akhir proses upgrade, Test_RO_DB database akan di negara RECOVERY_PENDING. Anda harus menggunakan perintah Mengubah DATABASE untuk mengatur database untuk READ_WRITE. Kemudian gunakan perintah Mengubah DATABASE untuk menetapkan database untuk READ_ONLY. Hal ini memungkinkan mesin SQL Server database-upgrade ke versi yang benar.
Di tempat upgrade ketika membaca/menulis database berisi kelompok file yang ditandai sebagai baca-saja
Ketika Anda menjalankan upgrade di tempat untuk SQL Server 2012, Anda mungkin menerima pesan yang menyerupai berikut di log kesalahan SQL Server. Masalah ini terjadi saat contoh sebelumnya SQL server host database baca/tulis dan berisi kelompok file yang ditandai READ_ONLY. Namun, proses upgrade selesai seperti yang diharapkan, dan database mulai online.
Catatan Dalam pesan kesalahan berikut, database bernama Test_RO_FG:
2012-05-04 21:03:59.23 spid18s mulai database 'Test_RO_FG'. 2012-05-04 21:03:59.71 spid18s Converting database 'Test_RO_FG' dari versi 661 untuk versi 706. 2012-05-04 21:03:59.71 spid18s Database 'Test_RO_FG' menjalankan langkah upgrade dari versi 661 ke versi 668.
ID Artikel: 2710782 - Kajian Terakhir: 18 Juni 2012 - Revisi: 2.0
Berlaku bagi:
Microsoft SQL Server 2012 Enterprise
Kata kunci:
kbsurveynew kbprb kbtshoot kbmt KB2710782 KbMtid
Penerjemahan Mesin
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: 2710782
Terima kasih! Masukan Anda akan digunakan untuk membantu kami meningkatkan konten dukungan. Untuk opsi bantuan lainnya, kunjungi Halaman Beranda Bantuan dan Dukungan.