Artikel ini selangkah demi selangkah menjelaskan cara untuk memindahkan Microsoft SQL Server
pengguna database dan paling umum komponen SQL Server antara komputer yang
menjalankan SQL Server.
Langkah-langkah yang dijelaskan dalam artikel ini mengasumsikan bahwa
Anda tidak akan bergerak
Master,
Model,
Code, atau
msdb sistem database. Langkah-langkah memberikan pilihan yang berbeda bagi Anda untuk
mentransfer login dan komponen paling umum yang terdapat di dalam
Master dan
msdb database.
Untuk informasi tentang spesifik
item tidak ditransfer ketika Anda mengikuti langkah-langkah pada artikel ini, lihat
Bagian "Informasi selengkapnya".
Catatan Untuk Microsoft SQL Server 2008, lihat topik "Mengelola Metadata ketika membuat Database tersedia pada Server contoh lain" pada berikut dalam SQL Server 2008 buku pada baris situs:
Catatan Migrasi data dari SQL Server 2000 untuk Microsoft SQL Server 2000 (64-bit) yang didukung. Anda dapat melampirkan database 32-bit untuk 64-bit database dengan menggunakan
sp_attach_db sistem disimpan prosedur atau
sp_attach_single_file_db sistem disimpan prosedur, atau dengan menggunakan backup dan restore di 32-bit Enterprise Manager. Anda dapat memindahkan database bolak-balik antara 32-bit dan 64-bit versi SQL Server. Anda juga dapat memigrasi data dari SQL Server 7.0 dengan menggunakan metode yang sama. Namun, merendahkan data untuk SQL Server 7.0 dari SQL Server 2000 (64-bit) tidak didukung.
Deskripsi dari masing-masing metode berikut.
Langkah 1: Bagaimana memindahkan pengguna
database
Jika Anda menggunakan SQL Server 2005, Anda dapat menggunakan metode yang sama untuk memigrasi data dari SQL Server 7.0 atau SQL Server 2000. Namun, alat manajemen di Microsoft SQL Server 2005 berbeda dari alat manajemen dalam SQL Server 7.0 atau SQL Server 2000. Anda harus menggunakan SQL Server Management Studio bukan SQL Server Enterprise Manager. Selain itu, Anda harus menggunakan SQL Server impor dan ekspor Wizard (DTSWizard.exe) bukan Data
Transformasi layanan impor dan Ekspor Data Wizard.
Untuk memindahkan database pengguna, gunakan salah satu dari tiga metode berikut.
Metode 1: Backup dan restore database pengguna
Membuat cadangan database pengguna di server sumber, dan kemudian mengembalikan
pengguna database ke server tujuan.
- Database dapat digunakan ketika cadangan adalah dalam proses.
Jika pengguna melakukan INSERT, UPDATE, atau menghapus pernyataan pada database setelah
cadangan lengkap, cadangan tidak akan berisi perubahan ini. Jika Anda harus
mentransfer semua perubahan, Anda dapat memindahkan perubahan-perubahan dengan minimal downtime jika Anda
melakukan cadangan log transaksi dan database penuh cadangan.
- Mengembalikan cadangan database penuh pada tujuan
server dan menentukan DENGAN NORECOVERY pilihan.
Catatan Untuk mencegah tambahan database modifikasi, mengarahkan pengguna untuk
berhenti aktivitas database pada server sumber. - Melakukan transaksi log cadangan dan mengembalikan
transaksi log cadangan ke server tujuan dengan menggunakan DENGAN PEMULIHAN pilihan. Downtime terbatas waktu log transaksi
Backup dan restore. Untuk informasi lebih lanjut, lihat sub-"Kembalikan" topik di
Topik "Transact-SQL referensi" SQL Server buku Online.
- Database pada server tujuan akan sama
ukuran sebagai database pada server sumber. Untuk mengurangi ukuran database,
Anda juga harus mengurangi sumber database sebelum Anda melakukan backup, atau
mengurangi database tujuan setelah pemulihan selesai. Untuk lebih
informasi, melihat sub-topik "Menyusut Database" dalam "membuat dan
Mempertahankan database"judul SQL Server buku Online.
- Apabila Anda memulihkan database ke lokasi file yang berbeda
dari sumber database, Anda harus menentukan DENGAN BERGERAK pilihan. Sebagai contoh, pada sumber server database adalah di
D:\Mssql\Data folder. Server tujuan tidak memiliki d drive, dan Anda
ingin memulihkan database ke map C:\Mssql\Data.Untuk informasi lebih lanjut tentang cara memulihkan database yang
lokasi, klik nomor artikel di bawah ini untuk melihat artikel di dalam Basis Pengetahuan Microsoft:
221465
(http://support.microsoft.com/kb/221465/
)
Menggunakan pilihan dengan bergerak dengan pernyataan pemulihan
304692
(http://support.microsoft.com/kb/304692/
)
Database SQL Server 7.0 bergerak ke lokasi baru dengan BACKUP dan RESTORE
- Jika Anda ingin menimpa database yang sudah ada pada
server tujuan, Anda harus menentukan DENGAN MENGGANTI pilihan. Untuk informasi lebih lanjut, lihat sub-"Kembalikan" topik di
Topik "Transact-SQL referensi" SQL Server buku Online.
- Tergantung pada versi SQL Server yang Anda
pemulihan, character set, urutan, dan pemeriksaan Unicode mungkin harus
sama pada sumber dan tujuan server. Untuk informasi lebih lanjut, lihat
"Catatan tentang pemeriksaan" kemudian dalam bagian ini.
Metode 2: Gunakan "sp_detach_db" dan "sp_attach_db" disimpan prosedur
Untuk menggunakan
sp_detach_db dan
sp_attach_db disimpan prosedur, ikuti langkah berikut:
- Melepaskan database pada server sumber dengan menggunakan sp_detach_db prosedur yang tersimpan. Anda harus menyalin berkas .mdf, .ndf dan .ldf
terkait dengan database untuk server tujuan. Lihat tabel ini untuk
deskripsi dari jenis file:
Perkecil tabel iniPerbesar tabel ini
| Ekstensi nama berkas | Deskripsi |
|---|
| .MDF | File data primer |
| .NDF | File data sekunder |
| .LDF | File log transaksi |
- Melampirkan database pada server tujuan dengan menggunakan sp_attach_db disimpan prosedur dan menunjuk ke file Anda disalin ke
server tujuan di langkah sebelumnya.Untuk informasi lebih lanjut tentang bagaimana menggunakan ini
metode, klik nomor artikel di bawah ini untuk melihat artikel di dalam Basis Pengetahuan Microsoft:
224071
(http://support.microsoft.com/kb/224071/
)
Bagaimana memindahkan database SQL Server ke lokasi baru dengan menggunakan fungsi Detach dan melampirkan dalam SQL Server
- Database tidak bisa diakses setelah detach, dan Anda
tidak dapat menggunakan database saat Anda menyalin file. Semua data yang terdapat dalam
database pada titik waktu dari detach pindah.
- Set karakter, urutan dan Unicode pemeriksaan mungkin
harus sama pada kedua server ketika Anda menggunakan Melampirkan atau Melepaskan metode. Untuk informasi lebih lanjut, lihat catatan berikut tentang pemeriksaan.
Catatan tentang pemeriksaan Jika Anda memindahkan database antara server SQL Server 7.0 dengan menggunakan
Backup dan restore atau
Melampirkan dan
Melepaskan metode, set karakter, menyortir pesanan dan Unicode pemeriksaan harus
akan sama pada kedua server. Jika Anda memindahkan database dari SQL Server 7.0 ke SQL
Server 2000 atau antara SQL Server 2000 Server, database mempertahankan
pemeriksaan sumber database. Ini berarti bahwa jika server tujuan
yang menjalankan SQL Server 2000 memiliki pemeriksaan berbeda dari sumber
database, tujuan database memiliki pemeriksaan berbeda daripada
server tujuan
Master,
Model,
Code, dan
msdb database. Untuk selengkapnya, lihat "campuran pemeriksaan
Lingkungan"topik dalam SQL Server 2000 buku Online.
Metode 3: Gunakan impor dan Ekspor Data Wizard untuk menyalin objek dan data antara SQL Server Database
Anda dapat menyalin seluruh database atau selektif menyalin objek dan
data dari sumber database untuk tujuan database dengan menggunakan Data
Transformasi layanan impor dan Ekspor Data Wizard.
- Basis data sumber dapat digunakan selama
transfer. Jika sumber database digunakan selama transfer, Anda mungkin melihat beberapa menghalangi ketika transfer
berlangsung.
- Ketika Anda menggunakan impor dan Ekspor Data Wizard,
character set, urutan dan pemeriksaan tidak harus sama antara
sumber server dan server tujuan.
- Karena ruang yang tidak digunakan dalam database sumber tidak bergerak,
tujuan database mungkin tidak harus sebagai besar sebagai sumber database.
Demikian pula, jika Anda memindahkan hanya beberapa objek, tujuan database mungkin tidak memiliki
harus sebagai besar sebagai sumber database.
- SQL Server 7.0 Data transformasi layanan mungkin tidak
mentransfer teks dan gambar lebih dari 64 KB data dengan benar. Masalah ini tidak
berlaku untuk versi SQL Server 2000 layanan transformasi Data.Untuk informasi selengkapnya, klik nomor artikel berikut untuk melihat artikel di Pangkalan Pengetahuan Microsoft:
257425
(http://support.microsoft.com/kb/257425/
)
FIX: DTS objek Transfer tidak mentransfer data BLOB yang lebih besar dari 64 KB
Langkah 2: Cara mentransfer login dan password
Jika Anda tidak mentransfer login dari sumber server untuk
server tujuan, pengguna SQL Server Anda saat ini mungkin tidak dapat logon ke
server tujuan. Anda dapat mentransfer login dan password dengan menggunakan
petunjuk berikut Microsoft basis pengetahuan
Artikel:
246133
(http://support.microsoft.com/kb/246133/
)
Cara mentransfer login dan password antara contoh-contoh SQL Server
Database default untuk login pada server tujuan mungkin berbeda dari database default untuk login pada server sumber. Anda dapat mengubah database default untuk logon dengan sp_defaultdb prosedur yang tersimpan. Untuk selengkapnya, lihat "sp_defaultdb"
sub-topik topik "Transact-SQL referensi" di SQL Server buku Online.
Langkah 3: Bagaimana untuk memecahkan pengguna yatim
Setelah Anda mentransfer login dan password ke server tujuan,
pengguna mungkin tidak dapat mengakses database. Login terkait ke
pengguna dengan pengidentifikasi keamanan (SID), dan jika SID tidak konsisten setelah
Anda memindahkan database, SQL Server dapat menolak akses pengguna ke database. Ini
masalah dikenal sebagai yatim piatu pengguna. Jika Anda mentransfer login dan password oleh
menggunakan fitur SQL Server 2000 DTS Transfer Login, Anda mungkin memiliki
yatim piatu pengguna. Selain itu, login terpadu diberikan akses pada tujuan
server di domain yang berbeda dari sumber server menyebabkan yatim pengguna.
- Mencari pengguna yatim piatu. Membuka Query Analyzer pada
server tujuan, dan kemudian jalankan kode berikut dalam pengguna database yang Anda
Dipindahkan:
exec sp_change_users_login 'Report'
Prosedur daftar pengguna manapun yatim piatu yang tidak menghubungkan untuk logon. Jika
tidak ada pengguna terdaftar, melewati langkah 2 dan langkah 3 dan lanjutkan ke langkah 4. - Menyelesaikan pengguna yatim piatu. Jika pengguna menjadi yatim piatu, database
pengguna dapat log on ke server berhasil tetapi tidak akan memiliki izin untuk
mengakses database. Jika Anda mencoba untuk memberikan akses masuk ke database, Anda menerima
Setelah pesan galat karena pengguna yang sudah ada:
Microsoft SQL-DMO (ODBC SQLState: 42000) kesalahan 15023:
Pengguna atau peran '% s' sudah ada dalam database saat ini.
Untuk informasi lebih lanjut tentang cara mengatasi yatim pengguna, klik nomor artikel di bawah ini untuk melihat artikel di dalam Basis Pengetahuan Microsoft:240872
(http://support.microsoft.com/kb/240872/
)
Cara mengatasi masalah izin ketika Anda memindahkan database antara server yang menjalankan SQL Server
Artikel ini berisi petunjuk mengenai bagaimana memetakan login untuk database pengguna dan menyelesaikan pengguna yatim piatu dari standar SQL Server login dan terintegrasi login.
274188
(http://support.microsoft.com/kb/274188/
)
"Mengatasi masalah Orphaned pengguna" topik di buku Online tidak lengkap
Artikel ini menjelaskan cara menggunakan sp_change_users_login disimpan prosedur untuk memperbaiki pengguna yatim satu per satu. The sp_change_users_login disimpan prosedur hanya menyelesaikan pengguna yatim piatu dari standar SQL Server login. - Jika (pemilik databasedbo) terdaftar sebagai yatim piatu, menjalankan kode ini dalam database pengguna:
exec sp_changedbowner 'sa'
Prosedur yang tersimpan perubahan pemilik database untuk dbo dan memperbaiki masalah. Untuk mengubah database pemilik lain
pengguna, jalankan sp_changedbowner lagi dengan pengguna Anda inginkan. Untuk informasi lebih lanjut, lihat
sub-topik "sp_changedbowner" di topik "Transact-SQL referensi" SQL
Server buku secara Online. - Jika server tujuan Anda menjalankan SQL Server 2000
Paket Layanan 1, pemilik database pengguna mungkin tidak dalam daftar di Pengguna folder dalam Enterprise Manager setelah Anda menjalankan melampirkan atau
pemulihan atau keduanya.Untuk informasi selengkapnya, klik nomor artikel berikut untuk melihat artikel di Pangkalan Pengetahuan Microsoft:
305711
(http://support.microsoft.com/kb/305711/
)
BUG: DBO pengguna tidak menampilkan dalam Enterprise Manager
- Anda mungkin menerima pesan galat berikut jika Anda mencoba untuk
mengubah sistem administrator (sa) sandi melalui Enterprise Manager jika logon yang dipetakan
untuk dbo pada sumber server tidak ada di tujuan
Server:
Kesalahan 21776: [SQL-DMO] nama 'dbo' adalah tidak
ditemukan dalam koleksi pengguna. Jika nama adalah nama berkualitas, menggunakan [] untuk
memisahkan berbagai bagian dari nama, dan coba lagi.
Untuk informasi selengkapnya, klik nomor artikel berikut untuk melihat artikel di Pangkalan Pengetahuan Microsoft:218172
(http://support.microsoft.com/kb/218172/
)
Tidak dapat mengubah password SA di Enterprise Manager
Warning Jika Anda mengembalikan atau melampirkan database lagi, pengguna database
mungkin re-orphaned dan Anda harus mengulangi langkah 3.
Langkah 4: Bagaimana memindahkan pekerjaan, peringatan, dan operator
Langkah 4 opsional. Anda dapat menghasilkan script untuk semua pekerjaan, tanda
dan operator pada source server, dan kemudian jalankan script pada tujuan
server.
- Untuk memindahkan pekerjaan, peringatan dan operator, ikuti langkah berikut:
- Buka SQL Server Enterprise Manager, dan kemudian memperluas
The Manajemen folder.
- Memperluas Agen SQL Server, kemudian juga klik- kanan Peringatan, Pekerjaan, atau Operator.
- Klik Semua tugas, lalu klik Menghasilkan skrip SQL. Untuk SQL Server 7.0, klik Script semua pekerjaan, atau Peringatan, atau Operator.
Anda akan memiliki pilihan untuk menghasilkan script untuk Semua tanda, Semua pekerjaan atau Semua operator didasarkan pada item yang Anda klik kanan. - Anda dapat memindahkan pekerjaan, peringatan dan operator dari SQL Server 7.0
SQL Server 2000 atau antara server komputer yang sedang menjalankan SQL Server 7.0
dan SQL Server 2000.
- Jika Anda memiliki operator yang ditetapkan untuk pemberitahuan oleh
SQLMail pada server sumber, Anda harus mengatur SQLMail pada tujuan
server yang memiliki fungsi yang sama.Untuk informasi selengkapnya, klik nomor artikel berikut untuk melihat artikel di Pangkalan Pengetahuan Microsoft:
263556
(http://support.microsoft.com/kb/263556/
)
Cara mengkonfigurasi SQL Mail
Langkah 5: Bagaimana memindahkan DTS paket
Langkah 5 opsional. Jika paket DTS disimpan pada sumber
server di SQL Server atau repositori, Anda dapat memindahkan mereka jika Anda inginkan. Pada
bergerak DTS paket antara server, gunakan salah satu metode berikut.
Metode 1
- Simpan paket DTS pada server sumber ke file, dan
kemudian buka file paket DTS pada server tujuan.
- Simpan paket pada server tujuan untuk SQL
Server, atau ke repositori.
Catatan Anda harus bergerak setiap paket satu per satu dalam berkas terpisah.
Metode 2
- Buka setiap paket DTS DTS desainer.
- Pada Paket menu, klik Simpan sebagai.
- Tentukan tujuan SQL Server.
Catatan Paket tidak dapat berjalan dengan benar pada server baru. Anda mungkin memiliki
untuk mengubah paket, dan mengubah referensi dalam paket untuk sambungan,
file, sumber data, profil dan informasi lainnya yang terletak di old source
server, untuk referensi server tujuan baru. Anda harus membuat perubahan ini pada
dasar paket-paket yang didasarkan pada desain dari masing-masing
paket bahasa Indonesia.
Langkah 6: Mengubah pengaturan sp_configure untuk mencocokkan sistem sebelumnya
Anda mungkin harus mengubah pengaturan sehingga mereka cocok pengaturan dalam sistem baru. Sebagai contoh, jika sistem baru memiliki memori lebih besar atau jika itu berjalan SQL turunan dan aplikasi, Anda mungkin ingin mengubah min dan pengaturan memori maks server atau pengaturan KAGUM. Anda mungkin harus mengubah pengaturan MAXDOP jika jumlah Core CPU yang terpapar sistem operasi telah berubah.
Anda mungkin juga ingin memindahkan barang-barang lainnya seperti terkait server, mirroring, replikasi, login pengiriman, teks lengkap katalog, bernama cadangan perangkat, rencana pemeliharaan, database diagram, database snapshot, kredensial dan proxy account, Endpoint, server scoped DDL pemicu (seperti pemicu masuk), atau item lain yang melibatkan baik master atau msdb.
Memeriksa sumber server untuk konfigurasi ini dan mengambil langkah-langkah
untuk mengatur mereka secara manual di server tujuan, jika Anda
ingin.
Untuk informasi lebih lanjut tentang bagaimana memindahkan teks lengkap
komponen, klik nomor artikel di bawah ini untuk melihat artikel di dalam Basis Pengetahuan Microsoft:
240867
(http://support.microsoft.com/kb/240867/
)
Bagaimana untuk memindahkan, menyalin, dan cadangan teks lengkap katalog folder dan file
Database diagram dan sejarah backup dan restore
tidak dipindahkan jika Anda mengikuti langkah-langkah dalam artikel ini. Jika Anda harus memindahkan ini
informasi, bergerak
msdb sistem database. Untuk informasi tentang cara untuk bergerak
msdb database, lihat artikel Basis Pengetahuan Microsoft yang dirujuk dalam
"langkah 1: Bagaimana memindahkan pengguna
database"bagian. Jika Anda memindahkan
msdb database, Anda tidak harus mengikuti "Langkah 4: Bagaimana memindahkan pekerjaan, peringatan, dan operator" atau
"Langkah 5: Bagaimana memindahkan DTS
paket."
Untuk informasi selengkapnya, klik nomor artikel berikut untuk melihat artikel di Pangkalan Pengetahuan Microsoft:
320125
(http://support.microsoft.com/kb/320125/
)
Bagaimana memindahkan database diagram