PERBARUI:SQL Operations Studio (SQLOPS) telah diubah namanya menjadi Azure Data Studio. Langkah-langkah dalam artikel ini tetap sama. Bagaimanapun, saya juga telah menulis ulang langkah-langkah ini (dan menyertakan tangkapan layar yang setara) khusus untuk Azure Data Studio . Lihat Cara Memulihkan Database SQL Server di Mac menggunakan Azure Data Studio.
Memulihkan database adalah hal yang mudah dengan SQL Operations Studio. Ini adalah proses yang mirip dengan melakukannya dengan SQL Server Management Studio. Cukup klik Pulihkan dan ikuti petunjuknya.
Proses pemulihan ini memungkinkan Anda untuk menavigasi melalui sistem file komputer untuk menemukan file .bak. File .bak ini berisi cadangan database yang ingin Anda pulihkan. Jadi ketika SQL Server memulihkan database, itu menggunakan file .bak untuk melakukannya.
Namun, jika Anda menjalankan instance SQL Server Anda di dalam wadah Docker (yang tentu saja, Anda akan melakukannya jika Anda menjalankan SQL Server di Mac atau Linux), ada sesuatu yang perlu Anda waspadai jika file cadangan Anda berada di luar wadah Docker.
Jika file cadangan terletak di luar wadah Docker yang menjalankan SQL Server, Anda harus menyalinnya ke dalam wadah Docker sebelum Anda melakukan pemulihan. Setelah Anda menyalin file .bak ke dalam wadah Docker, Anda dapat melanjutkan dan menggunakan SQLOPS untuk memulihkan database.
Di bawah ini saya menguraikan semua langkah yang terlibat.
Tutorial ini mengasumsikan bahwa Anda telah menginstal SQL Server di Mac menggunakan wadah Docker, dan Anda telah menginstal SQL Operations Studio.
Saya harus menunjukkan bahwa, meskipun contoh di halaman ini dilakukan di Mac, semua langkah harus bekerja di macOS dan Linux.
Unduh Contoh Basis Data
Jika Anda sudah memiliki file .bak database Anda sendiri, Anda tidak perlu melakukan langkah ini.
Untuk tutorial ini, saya akan memulihkan database sampel WideWorldImporters. Ini adalah contoh database yang disediakan Microsoft untuk memamerkan berbagai fitur SQL Server. Secara khusus, saya akan menggunakan database versi gudang data.
Untuk mengunduh contoh file .bak basis data WideWorldImporters, buka halaman Github WideWorldImporters dan temukan tautan unduhan, atau Anda dapat mengunduh file .bak langsung di sini:
- WildWorldImportersDW-Full.bak [47.7mb]
Salin file .bak ke Docker Container
Anda hanya perlu melakukan langkah ini jika file .bak Anda terletak di luar wadah Docker (yang akan terjadi jika Anda baru saja mengunduh file .bak WideWorldImporters).
Pertama, mari buat folder di dalam wadah Docker:
sudo docker exec -it sql_server_demo mkdir /var/opt/mssql/backup
Sekarang salin file .bak database ke folder itu:
sudo docker cp WideWorldImportersDW-Full.bak sql_server_demo:/var/opt/mssql/backup
Perintah ini mengasumsikan Anda berada di direktori yang sama dengan file .bak. Jika tidak, ubah ke direktori terlebih dahulu menggunakan. Misalnya:
cd Downloads
atau folder apa pun itu.
Mengapa kita perlu menyalin File .bak?
Wadah Docker memiliki sistem file sendiri, dan ia hidup secara independen dari sistem file Mac Anda. Jadi ketika Anda mencoba menavigasi ke file .bak di SQLOPS (pada langkah berikutnya), Anda akan menemukan diri Anda "terjebak" di dalam sistem file wadah Docker, tanpa cara mengakses file .bak di sistem file Mac Anda. Oleh karena itu, kita salin file .bak ke sistem file container terlebih dahulu, kemudian kita dapat mengaksesnya melalui SQLOPS.
Pulihkan Basis Data
Oke, sekarang kita bisa melakukan proses restore database yang sebenarnya.
Langkah-langkah berikut mengasumsikan Anda telah menjalankan SQL Operations Studio, dan Anda telah terhubung ke SQL Server.
- Dari Dasbor Server, klik Pulihkan tombol
- Di Pulihkan dari heading, pilih Backup file dari menu tarik-turun
- Di Jalur file cadangan judul, klik elips (… )
- Navigasi ke folder, pilih file .bak dan klik OK
- Klik Pulihkan
- Pemulihan mungkin memakan waktu satu atau dua menit. Riwayat Tugas akan menunjukkan kapan sudah siap
Basis data sekarang telah dipulihkan.
Periksa Basis Data
Anda mungkin ingin memeriksa bahwa database sebenarnya telah dipulihkan. Salah satu cara untuk melakukannya adalah dengan menavigasi ke database dan menjalankan kueri cepat.
- Klik Server ikon (kiri atas layar)
- Basis data sekarang harus terdaftar di bawah Database menuju server yang berlaku. Jika tidak, klik kanan Database dan pilih Segarkan
- Gunakan antarmuka SQLOPS untuk menjalankan kueri terhadap database. Misalnya, klik kanan pada Tabel node (setelah memperluas database) dan klik Pilih 1000 Teratas . Ini secara otomatis menjalankan kueri terhadap tabel itu, memilih hanya 1000 hasil teratas