Bagaimana cara saya mentransfer login dari 2008R2 ke 2014 dengan kata sandi?


12

Saya sudah mencoba Tasks> Generate Scripts...dan mengatur 'Script Login' di Opsi Scripting Lanjut, tapi saya mendapatkan ini di output:

/* For security reasons the login is created disabled and with a random password. */

Apakah ada cara sederhana untuk skrip login ini dengan kata sandi atau cara lain untuk mentransfer login dari instance 2008R2 ke instance 2014?


4
sqlsoldier.com/wp/sqlserver/… (abaikan saja referensi mirroring - ini berfungsi untuk memindahkan login apa pun di antara setiap instance).
— Aaron Bertrand

@ Harun yang terlihat sangat bagus pada pandangan pertama, terima kasih.
— Jack bilang coba topanswers.xyz

1
@ Harun Saya akhirnya menggunakan ini yang pada dasarnya adalah hal yang sama. Terima kasih telah menunjukkan saya ke arah yang benar.
— Jack bilang coba topanswers.xyz

Jawaban:


8

Untuk mentransfer login, Anda harus menggunakan skrip dan prosedur sp_help_revlogin . Ini akan memungkinkan Anda untuk mentransfer login dan mempertahankan kata sandi dari instance ke yang lain.


Saya pernah ke halaman itu tetapi saya jelas tidak memahaminya. Metode 3 mengatakan "Buat skrip log in yang memiliki kata sandi kosong", jadi mungkin itu bukan?
— Jack bilang coba topanswers.xyz

1
@JackDouglas Tidak yakin apa arti ungkapan itu, tetapi Anda hanya perlu membuat dua prosedur tersimpan pada server sumber dan, pada akhirnya, jalankan saja sp_help_revlogin, ambil outputnya dari SSMS dan jalankan di server baru. Login Anda akan dibuat ulang dengan sandi yang benar.
— Marian

saya telah menguji ini pada SQL 2014 tetapi tidak berhasil, metode yang sama berfungsi hingga sql 2012. juga disebutkan di support.microsoft.com/kb/91899
— Iman Abidi

Saya diuji sp_help_revlogintetapi tidak berhasil di SQL 2014 SP1 CU1 (12.0.4416). Artikel KB ini menyebutkan bahwa ia berfungsi hingga SQL Server 2012.
— Iman Abidi

6

Saya tidak sabar menunggu semua orang mengetahui hal ini:

https://dbatools.io/

https://blog.netnerds.net/2016/06/its-2016-why-is-sp_help_revlogin-a-thing/

Singkatnya: instal skrip Powershell dbatools.

Anda sekarang memiliki serangkaian perintah yang luar biasa yang tidak hanya dapat menyalin pengguna SQL, kata sandi, izin, dll; tetapi juga satu set lengkap perintah untuk menyalin basis data, pekerjaan, bahkan seluruh instance: D

Contoh penggunaan:

Copy-DbaLogin -Source sqlsvr2000 -Destination newsql2016

atau:

Export-DbaLogin -SqlServer sql2005 -FileName C:\temp\sql2005-logins.sql

Bersulang!



0

Ya, Anda dapat melalui Powershell menggunakan berbagai Modul:

1- Menggunakan DBATools: Buka Powershell

<# Install-Module dbatools#> #only if not installed

<# Load the module#>

Import-module dbatools

export-dbalogin -SqlInstance ServerName f:\floginsdba.txt

2- Menggunakan Modul SQLSERVER:

<# Install-Module sqlserver#> #only if not installed

<# Load the module#>

Import-module sqlserver

cd sqlserver:\serverA\default\logins   # replace the default with any named Inst

dir | %{$_.script()}                   

<# For security, it will create disabled  logins and hashed passwords for sql logins.#>

Beritahu saya jika Anda membutuhkan bantuan.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.