People Innovation Excellence

Migrasi Server Databse : Men-capture Userid dan Password

Suatu server yang digunakan sebagai Server Database tentu tidak selamanya akan dipakai secara terus menerus. Ada saatnya server tersebut akan diupgrade/diganti dengan server lain yang lebih canggih dan mempunyai kemampuan yang lebih baik. Umumnya administrator akan kesulitan untuk memindahkan user yang sudah cukup banyak dan digunakan untuk akses melalui aplikasi yang sedang berjalan.

Dari server yang saat ini operasional biasanya sudah berisi banyak data dan usernya digunakan (user untuk aplikasi (naive) maupun user yang sophisticated) .

Untuk perpindahan data (database) biasanya tidak mengalami kendala yang berarti dalam proses migrasi. Data lama di backup selanjutnya di restore di tempat yang baru. Maka data tersebut akan persis sama dengan data yang lama.

Permasalahan akan muncul terkait dengan userID /Login Name yang sudah ada di dalam security database. Apalagi database yang beroperasi mempunyai banyak user puluhan/ratusan, maka tidak mungkin akan meng-create satu persatu user dengan memasukkan kembali username dan passwordnya termasuk di dalamnya Role terkait dengan username tersebut.

Nah berikut ini langkah-langkah yang bisa dilakukan untuk melakukan migrasi user dari satu DB Server  ke server yang lainnya.Langkah ini hanya digunakan untuk migrasi DBMS MS-SQL Server.

Langkah-langkahnya :

  1. Restore database ke tempat (server) baru
  2. Ambil nama-nama user (login name) dengan Script berikut ini. Script di bawah di-execute di database “Master” dan hasil Executenya di simpan dalam file text (misalnya text1)  (akan berisi login name, password  dari database terkait)

    SET NOCOUNT ON SELECT ‘EXEC sp_addlogin @loginame = ”’ + loginname + ””
    ,’, @defdb = ”’ + dbname + ””
    ,’, @deflanguage = ”’ + language + ””
    ,’, @encryptopt = ”skip_encryption”’
    ,’, @passwd =’
    , cast(password AS varbinary(256))
    ,’, @sid =’ , sid
    FROM syslogins
    WHERE name NOT IN (‘sa’)
    AND isntname = 0

  3. Selanjutnya jalankan Scrip di bawah ini untuk sinkronisasi role dari login name di database asal, yang akan disinkronisasikan di database baru hasil restore.  Jalankan Script ini di database “Master” dari server lama, dan hasilnya di simpan dalam file text (misalnya text 2)

    SELECT ‘EXEC sp_grantlogin @loginame = ”’ + loginname + ””
    ,’ EXEC sp_defaultdb @loginame = ”’ + loginname + ””
    ,’, @defdb = ”’ + dbname + ””
    FROM syslogins
    WHERE loginname NOT IN (‘BUILTIN\Administrators’)
    – AND isntname = 1

  4. Setelah semua database berhasil di restore di server baru, maka jalankan Script hasil generate login name (Text1) di atas di database yang baru. Proses ini akan menggenerate login name di server baru sesuai dengan login name di server lama. Akan digenerate login name dan passwordnya

Published at :
Leave Your Footprint

    Periksa Browser Anda

    Check Your Browser

    Situs ini tidak lagi mendukung penggunaan browser dengan teknologi tertinggal.

    Apabila Anda melihat pesan ini, berarti Anda masih menggunakan browser Internet Explorer seri 8 / 7 / 6 / ...

    Sebagai informasi, browser yang anda gunakan ini tidaklah aman dan tidak dapat menampilkan teknologi CSS terakhir yang dapat membuat sebuah situs tampil lebih baik. Bahkan Microsoft sebagai pembuatnya, telah merekomendasikan agar menggunakan browser yang lebih modern.

    Untuk tampilan yang lebih baik, gunakan salah satu browser berikut. Download dan Install, seluruhnya gratis untuk digunakan.

    We're Moving Forward.

    This Site Is No Longer Supporting Out-of Date Browser.

    If you are viewing this message, it means that you are currently using Internet Explorer 8 / 7 / 6 / below to access this site. FYI, it is unsafe and unable to render the latest CSS improvements. Even Microsoft, its creator, wants you to install more modern browser.

    Best viewed with one of these browser instead. It is totally free.

    1. Google Chrome
    2. Mozilla Firefox
    3. Opera
    4. Internet Explorer 9
    Close