Database Replication Pada SQL Server 2008

Pada pembahasan kali ini, saya akan coba jelaskan langkah-langkah proses database replication di SQL Server 2008 dengan metode Transactional Publication. Artinya, proses replikasi ini berjalan dengan dua server yang berbeda (mungkin bisa 1 server dengan 2 instance), dimana apabila server 1 melakukan update data maka server 2 (yang sudah di set replication) akan ikut berubah isi datanya secara realtime. 2 server ini biasa di sebut Publication (server source yang akan direplikasi) dan Subcription (server destination yang akan akan mereplikasi).

Berdasarkan pengalaman saya ketika melakukan replication di SQL Server 2008. Ada beberapa catatan dalam proses replication,  diantaranya :

1. SQL Server akan menolak beberapa table yang tidak memiliki Primary Key. Hal ini di karenakan Primary Key dibutuhkan untuk mengidentifikasi table dalam pengisian update data yang di replikasi.

2. Jika proses replikasi sudah dilakukan atau sedang berlangsung, maka penambahan table baru atau field baru (dari publication) tidak bisa terupdate ke server subscription. Maka perlu di lakukan proses manual dengan memilih table atau field yang akan di replikasi melalui server publication.

Berikut ini langkah-langkah proses Replication dengan type Transactional Publication.

1. Langkah awal tentunya perlu menentukan server yang akan di jadikan sebagai server   publication. Masuk ke SQL Server Management Studio 2008. Selanjutnya ke folder Replication -> Local Publications -> New Publications…

Database Replication

2. Maka akan tampil Wizard untuk proses pembuatan Publication. Klik Next.

Database Replication

3. Tentukan database yang akan di replikasi. Klik Next.

Database Replication

4. Selanjutnya ada sedikit beberapa issued, mungkin bisa kita skip. Klik Next.

Database Replication

5. Pilih table tertentu jika table tersebut ingin di filter. Jika tidak ada, hal ini bisa di skip. Klik Next.

Database Replication

6. Pada langkah ini akan di berikan pilihan untuk memliki snapshot agent. Beri tanda centang pada “Create a snapshot immediately and keep the snapshot available to initialize subcription”. Klik Next.

Database Replication

7. Tentukan security setting untuk Snapshot Agent dan Log Reader Agent dengan langkah sebagai berikut.

Database Replication

Database Replication

Database Replication

8. Beri tanda centang pada “Create Publication”. Klik Next.

Database Replication

9. Tentukan nama publication. Klik Next.

Database Replication

10. Proses pembuatan publication selesai.

Database Replication

11. Selanjutnya proses pembuatan subscription. Masuk ke folder replication -> Local Subscription -> New Subscriptions…

Database Replication

12. Maka akan tampil wizard untuk proses pembuatan subscription. Klik Next.

Database Replication

13. Pilih Publisher yang sudah kita buat tadi, dengan langkah sebagai berikut.

Database Replication

Database Replication

Database Replication

Database Replication

14. Selanjutnya menentukan Distribution Agent Location, pilih yang “Push Subcription”. Klik Next.

Database Replication

15. Pilih database di subcription yang akan di jadikan untuk proses replikasi. Klik Next.

Database Replication

16.Masukkan Distribution Agent Security seperti langkah berikut.

Database Replication

Database Replication

Database Replication

17. Selanjutnya tentukan agent schedule untuk menjalakan proses replication.Pilih “Run Continuously”. Klik Next.

Database Replication

18. Tentukan Initialize Subscription, pilih “Immediately”. Klik Next.

Database Replication

19. Beri tanda centang pada “Create Subscription”. Klik Next.

Database Replication

20. Proses pembuatan Subscription selesai.

Database Replication Server 2008

Database Replication

Advertisements

33 thoughts on “Database Replication Pada SQL Server 2008

  1. Pingback: Log Shipping Pada SQL Server 2008 | Infrastructure Solutions

  2. Gimna cara melihat waktu replikasi dijalankan ?
    Karena jika Pub mereplikasi ke Sub dan SUb adalah merupakan media akses Reportnya buat user. seringkali mengalami lambat di waktu2 tertentu.

  3. Halo, bagaimana cara melihat proses replikasi yang gagal pada server yang di update dan perintah apayang digunakan.
    Thanks

    • Utk melihat proses replikasi, kita bisa melihatnya dgn langkah sebagai berikut :
      1. Masuk ke SSMS
      2. Klik kanan pada folder Replication
      3. Pilih Launch Replication Monitor
      Pada tampilan tersebut, kita bisa memonitor proses-proses apa saja yang sedang berjalan pada Replication (baik yg gagal maupun yg sukses).
      Semoga bermanfaat 🙂

    • Info errornya apa mas Rachmat? boleh di infokan?
      Biasanya, info-info error yang terjadi pada Replication Launch Monitor :
      1. Koneksi dari Publications ke Subscription terputus
      2. Kapasitas penyimpanan untuk replication sudah full
      3. Snapshot Agent tidak running
      Silahkan dicek kembali.

  4. Berikut Error nya Mas,,,,

    Tolong bantuannya ya mas,,,,

    Command attempted:
    C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\ReplData\unc\IQRO_DB1_REP_DB1\20140402121220\Table_Barang_3.pre
    (Transaction sequence number: 0x000000660000021600070000003A, Command ID: 4)

    Error messages:
    The process could not read file ‘C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\ReplData\unc\IQRO_DB1_REP_DB1\20140402121220\Table_Barang_3.pre’ due to OS error 3. (Source: MSSQL_REPL, Error number: MSSQL_REPL20024)
    Get help: http://help/MSSQL_REPL20024
    The system cannot find the path specified.
    (Source: MSSQL_REPL, Error number: MSSQL_REPL3)

    • Coba mas Rachmat masuk ke folder unc, klik kanan -> properties -> masuk ke tab security. Pastikan account service sql server utk proses replication diberikan full access di folder tersebut.

      • Mas Fais Mav saya masih new bnget pake Pake SQL,,,
        Jadi saya belum maksud yang dimaksud dengan Account Service SQL Server itu yang mana yaaa,,,,,,????

        Nama SQL Servernya ??
        Nama Login SQL Servernya ??

        atau yang mana ya mass,,,,,

        Mav ya mas,,, Masih gaptek bnget nih,,,
        Thanks,,,,

  5. mas rachmat, account sql itu biasanya digunakan utk menjalankan services di SQL Server. mas rachmat bisa cek di menu Start -> Run -> ketik “service.msc” (tanpa tanda petik). Setelah itu cari service SQL Server dan klik kanan pada service tersebut, disitu bisa terlihat akun sql server yg di pakai. Dan pastikan folder yg di akses utk replication (unc) sudah di cantumkan akun sql tersebut diatas

  6. untuk domain ketika saya ganti koneksi via sql server authentication kok tidak mau ya mas ? saya tidak menggunakan active directory. Apakah replikasinya ini harus menggunakan active directory ? terima kasih

    • Terima kasih atas pertanyaannya. Sesuai dengan pengalaman saya, memang disarankan menggunakan user domain (terintegrasi dengan active directory), hal ini bertujuan agar koneksi antar server atau instance lebih mudah.

  7. Mohon pencerahannya, saya menggunakan SQL 2008 untuk replikasi data dari Kantor Pusat ke cabang2. Setting pertama sukses dengan copy data dari KP ke cabang2. suatu waktu ada replikasi yang inactive. maka saya lakukan reinisialize lagi, yang terjadi adalah pengkopian ulang kembali data tersebut(500 MB), hal ini membutuhkan waktu yang lama. yang saya tanyakan untuk membetulkan replikasi yang inactive tanpa copy data ulang lagi , gimana caranya? terima kasih

    • Mas yayat, selama saya menggunakan replication, blm pernah menemukan kasus serupa. Biasanya memang hanya reinitialize. Tetapi pararel akan saya coba cari tahu dulu utk kasus tersebut. Mohon maaf, blm bisa memberi jawaban yang diinginkan :).

  8. Mas Faisal, saya baru mau coba nih.
    dengan Replika ini datanya 1 arah atau 2 arah ya.. Misal Database A membuat replika di Database B jika A mengalami Penambahan/Perubahan Data dan sebaliknya Jika ada perubahan/penambahan data di B maka akan merubah/menambah data di A.

    Terima Kasih

  9. selamat malam pak

    cara untuk membuat jobs snapshoot itu bagaimana stepnya pak?

    proses replikasi saya ke server A selalu gagal,ketika saya cek jobs ternyata hanya ada replikasi ke server A,dan gak ada snapshoot ke server A juga pak.

    apa kah itu yang membuat replikasi ke server A itu selalu gagal ya pak?
    mohon pencerahannya

    terimakasih

  10. gan public dan subscrip nya gk konek terus puny ane
    pusing udah 1 bulan gk nemu2

    tolong gan ajarin

    oh ya teknik replikasi apakah harus di windows server?

    terima kasih

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s