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.