Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

Cara memindahkan/menyalin semua database dengan pengguna, skema, dan peran dari satu server ke server lainnya

  1. Klik kanan pada DB
  2. Klik tugas
  3. Klik buat skrip
  4. Buka wizard dan pilih tabel Anda
  5. Pada halaman opsi, klik tombol Lanjutan (Ada di sana, hanya saja tidak terlalu menonjol)
  6. Ubah opsi "Jenis data menjadi skrip"

Ada opsi untuk skrip data dan login (banyak hal lainnya). Ini sangat berguna.

Berikut script yang akan menghasilkan script untuk menambahkan semua role di semua database

declare @selectStatement varchar(1000)

set @selectStatement = 'Use ?;SELECT ''USE ?''; SELECT ' + '''EXECUTE sp_AddRoleMember ''''' + ''' + roles.name + '''''''+','''''+''' +  Replace(users.name,''DOMAINA'',''DOMAINB'') + ''' + '''''''
     from sys.database_principals users
    inner join sys.database_role_members link
    on link.member_principal_id = users.principal_id
   inner join sys.database_principals roles
     on roles.principal_id = link.role_principal_id'

                            --where users.name like ''%%'''

                EXEC sp_MSForEachDB @selectStatement;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. membandingkan kolom dengan daftar nilai di t-sql

  2. SqlDataSourceEnumerator.Instance.GetDataSources() tidak menemukan contoh SQL server 2008 lokal

  3. SQL Server BULK INSERT dari Linux

  4. Memecahkan masalah kueri yang berjalan lama di MS SQL Server

  5. Apakah lebih baik menggunakan pengenal unik (GUID) atau bigint untuk kolom identitas?