Tutorial cara menggunakan mysql sakila

phpMyAdmin adalah perangkat lunak gratis yang ditulis dalam PHP, dimaksudkan untuk menangani administrasi MySQL melalui Web. phpMyAdmin mendukung berbagai operasi di MySQL dan MariaDB. Operasi yang sering digunakan (mengelola database, tabel, kolom, relasi, indeks, pengguna, izin, dll) dapat dilakukan melalui antarmuka pengguna, sementara Anda masih memiliki kemampuan untuk mengeksekusi pernyataan SQL secara langsung

phpMyAdmin dilengkapi dengan berbagai dokumentasi dan pengguna dipersilakan untuk memperbarui halaman wiki kami untuk berbagi ide dan petunjuk untuk berbagai operasi. Tim phpMyAdmin akan mencoba membantu Anda jika Anda menghadapi masalah;

phpMyAdmin juga didokumentasikan dengan sangat mendalam dalam sebuah buku yang ditulis oleh salah satu pengembang – Menguasai phpMyAdmin untuk Manajemen MySQL yang Efektif, yang tersedia dalam bahasa Inggris dan

Untuk memudahkan penggunaan ke banyak orang, phpMyAdmin diterjemahkan ke dalam 72 bahasa dan mendukung bahasa LTR dan RTL

phpMyAdmin adalah proyek matang dengan basis kode yang stabil dan fleksibel; . Saat proyek berusia 15 tahun, kami menerbitkan halaman perayaan

Proyek phpMyAdmin adalah anggota dari Software Freedom Conservancy. SFC adalah organisasi nirlaba yang membantu mempromosikan, meningkatkan, mengembangkan, dan mempertahankan proyek Perangkat Lunak Bebas, Gratis, dan Sumber Terbuka (FLOSS)

Tidak seperti sinkronisasi, yang merupakan proses satu kali yang menyatukan skema dan data dari dua database, replikasi adalah proses yang secara terus-menerus (secara otomatis) mereproduksi data antara dua database (walaupun pembaruan skema juga dimungkinkan). Replikasi dapat dilakukan secara asinkron, sehingga koneksi permanen antara dua database tidak diperlukan, atau selama jam non-puncak, ketika ada sedikit lalu lintas di server database, misalnya, selama jam larut malam.

Peran utama replikasi adalah untuk membuat repositori gabungan dari semua basis data pengguna dan/atau menyebarkan tingkat informasi yang sama di antara semua pengguna. Dalam kedua kasus, hasilnya adalah basis data terdistribusi di mana pengguna dapat mengakses data yang relevan dengan tugas mereka tanpa mengganggu pekerjaan orang lain. Implementasi replikasi basis data untuk tujuan menghilangkan ambiguitas atau ketidakkonsistenan data di antara pengguna dikenal sebagai normalisasi

Dalam buku putih Strategi Sinkronisasi Basis Data, kami menjelajahi beberapa strategi untuk menyinkronkan dua basis data yang memiliki tipe yang sama dan berbeda, menggunakan Sistem Manajemen Basis Data Premium Navicat. Dalam tindak lanjut hari ini, kami akan membahas cara mengotomatiskan replikasi database menggunakan utilitas Otomasi baru Navicat Premium

Replikasi basis data dapat dilakukan setidaknya dalam tiga cara berbeda

  • Replikasi snapshot. Data di satu server cukup disalin ke database lain di server yang sama atau berbeda
  • Menggabungkan replikasi. Data dari dua atau lebih database digabungkan menjadi satu database
  • Replikasi transaksional. Pengguna menerima salinan awal lengkap dari database dan kemudian menerima pembaruan berkala saat data berubah
Tutorial cara menggunakan mysql sakila

Dalam sistem manajemen basis data terdistribusi (DDBMS), perubahan, penambahan, dan penghapusan yang dilakukan pada data di satu lokasi secara otomatis tercermin dalam data yang disimpan di semua lokasi lainnya. Melakukan hal itu memastikan bahwa setiap pengguna mengakses kumpulan data yang sama dengan semua pengguna lainnya

Seperti sinkronisasi, replikasi dapat berupa Homogen atau Heterogen

  • Homogen. DB sumber dan target yang sama, mis. e. Percona ke Percona, MariaDB ke MariaDB, MySQL ke MySQL
  • Heterogen. DB sumber dan target yang berbeda, i. e. Oracle ke Microsoft SQL Server, PostgresSQL, ke Amazon DynamoDB, MySQL ke Amazon Aurora

Skenario di mana replikasi Heterogen diperlukan adalah di mana satu atau lebih mitra bisnis eksternal menggunakan tipe database yang berbeda dari milik kita. Replikasi data reguler otomatis antara dua lingkungan seringkali merupakan bagian integral dari pengaturan semacam itu

Diperkenalkan pada versi 12, utilitas Otomasi baru Navicat Premium menampilkan antarmuka yang mudah digunakan dan intuitif untuk membuat pekerjaan batch otomatis. Otomasi adalah pelaksanaan suatu proses pada satu atau lebih interval reguler, dimulai dan diakhiri pada tanggal dan waktu tertentu, seperti Penjadwal Tugas Windows. Selain replikasi, ini dapat digunakan untuk berbagai pekerjaan, termasuk pencadangan, kueri, dan laporan

Gambar 1. Utilitas Otomasi Navicat Premium 12 di Windows

Tutorial cara menggunakan mysql sakila

Gambar 2. Utilitas Otomasi Navicat Premium 12 di macOS

Tutorial cara menggunakan mysql sakila

Kami akan menggunakan sebagai database pengguna kami. Ini dikembangkan oleh Mike Hillyer, mantan anggota tim dokumentasi MySQL AB, dan dibuat khusus untuk menyediakan skema standar untuk digunakan dalam buku, tutorial, artikel, dan sejenisnya.

Ini bertema seputar industri film dan mencakup semuanya mulai dari aktor dan studio film hingga toko persewaan video. Struktur skema lengkap dapat dilihat di , jika Anda tertarik

Untuk instruksi pengaturan database Sakila menggunakan Navicat, lihat artikel di databasejournal. com


Sakila struktur database MySQL di Navicat Premium 12

Tutorial cara menggunakan mysql sakila

Seperti dijelaskan di atas, Replikasi Snapshot menyinkronkan dua database dengan menyalin data dari satu database ke database lainnya di server yang sama atau berbeda. Ini adalah yang paling sederhana dari tiga jenis

Profil sinkronisasi data harus dibuat terlebih dahulu untuk mengotomatiskannya sebagai proses replikasi. Langkah-langkah untuk mencapai sinkronisasi Homogen dan Heterogen di Navicat Premium 12 dijelaskan dalam buku putih Strategi Sinkronisasi Basis Data. Untuk keperluan tutorial ini, kita akan menggunakan contoh pertama sinkronisasi Homogen antara database sakila dan sakila 2

Petunjuk. Setelah membuat database sakila, Anda dapat membuat database sakila2 dengan mengklik kanan koneksi di panel Navigasi dan memilih Database Baru. Kemudian masukkan nama database (“sakila2”) di jendela pop-up

Untuk membuka wisaya Sinkronisasi Data

  • Pilih Alat -> Sinkronisasi Data dari bilah menu
  • Tutorial cara menggunakan mysql sakila
  • Tab Opsi Sinkronisasi Data hanya berisi beberapa kotak centang Opsi Bandingkan. Kita bisa membiarkan mereka apa adanya
  • Tutorial cara menggunakan mysql sakila
  • Langkah selanjutnya dari panduan Sinkronisasi Data adalah untuk memetakan tabel. Tabel target dapat dipilih melalui daftar dropdown. Dalam hal ini, kita tidak perlu memberikan instruksi pemetaan apa pun karena tabel di kedua database identik
  • Tutorial cara menggunakan mysql sakila
  • Setelah membandingkan data, jendela menampilkan jumlah record yang akan dimasukkan, diperbarui, atau dihapus di tabel target. Anda dapat menghapus centang opsi Perlihatkan tabel identik dan lainnya jika Anda tidak ingin menyertakan tabel dengan data identik atau tabel dengan struktur berbeda – dengan kata lain, tabel yang tidak akan diperbarui. Ada juga kotak centang untuk membatalkan pilihan tabel atau tindakan yang tidak ingin Anda terapkan ke target

    Memilih tabel dalam daftar menampilkan data tabel sumber dan target di panel bawah. Nilai yang berbeda antara sumber dan target disorot. Seperti di panel atas, Anda dapat menghapus tanda centang pada catatan yang tidak ingin diterapkan ke target

  • Tutorial cara menggunakan mysql sakila

Pilihan Perbedaan

Jenis perbedaan yang ditampilkan dapat dipilih dari daftar tarik-turun. Berikut adalah opsi yang memungkinkan

  • Perbedaan. Tampilkan semua rekaman yang berbeda di tabel sumber dan target
  • Menyisipkan. Hanya tampilkan rekaman yang tidak ada di tabel target
  • Memperbarui. Hanya tampilkan rekaman yang ada di tabel sumber dan target yang memiliki nilai berbeda
  • Menghapus. Hanya tampilkan rekaman yang tidak ada di tabel sumber
  • Sama. Perlihatkan rekaman yang ada di tabel sumber dan target yang memiliki nilai identik
  • Semua Baris. Tampilkan semua rekaman di tabel sumber dan target

Dalam kasus kami, memilih "Perbarui" atau "Sama" akan menampilkan baris nol karena tidak ada baris yang diperbarui (hanya sisipkan) dan tidak ada yang sama

Tutorial cara menggunakan mysql sakila

Seperti sebelumnya, mengklik tombol Deploy akan menghasilkan dan menampilkan Deployment Script

Tutorial cara menggunakan mysql sakila

Layar ini, seperti semua yang sebelumnya, berisi tombol Simpan Profil yang memungkinkan Anda menyimpan pengaturan untuk digunakan di masa mendatang. Layar khusus ini juga memiliki tombol untuk menyimpan Deployment Script

Anda masih dapat Membandingkan ulang kedua database, atau melanjutkan ke Eksekusi skrip penerapan. Ada kotak centang untuk Continue on error agar penyebaran tidak berhenti saat menemui kesalahan

Saat skrip dijalankan, Anda dapat melihat progresnya di Log Pesan. Ini menampilkan jumlah rekaman yang diproses dan persentase yang diselesaikan

Tutorial cara menggunakan mysql sakila

Setelah menutup dialog, kita dapat memastikan bahwa tabel database sakla2 sekarang berisi data

Tutorial cara menggunakan mysql sakila

Jangan lupa untuk menyimpan profil karena tugas batch akan menggunakannya

Membuat Pekerjaan Batch

Kami sekarang akan menggunakan alat Otomasi Navicat untuk menyiapkan replikasi berulang antara database sakila dan sakila2

  • Untuk memulai, klik tombol Automation di toolbar utama
  • Kemudian klik Pekerjaan Batch Baru di bilah alat Objek untuk membuka tab Pekerjaan Batch Baru
  • Telusuri koneksi sumber, database, dan/atau skema di panel Objek. Itu akan membuat pekerjaan yang disimpan untuk database itu muncul di panel bawah Pekerjaan yang Tersedia
    Di panel Pekerjaan yang Tersedia, pilih jenis pekerjaan Sinkronisasi Data, lalu pindahkan pekerjaan dari daftar Pekerjaan yang Tersedia ke daftar Pekerjaan yang Dipilih di atas dengan mengklik dua kali atau menyeretnya. (Anda dapat menghapus pekerjaan dari daftar Pekerjaan Terpilih dengan cara yang sama. )
  • Tutorial cara menggunakan mysql sakila
  • Klik tombol Simpan pada bilah alat Otomasi dan berikan nama deskriptif dalam dialog Simpan

Itu akan mengaktifkan tombol Atur Jadwal Tugas dan Hapus Jadwal Tugas

Tab Umum

Di tab Umum dari dialog Jadwal Tugas, Anda dapat memberikan deskripsi tugas serta memberikan beberapa opsi untuk pelaksanaannya

Tutorial cara menggunakan mysql sakila
  • Dalam bingkai Opsi Keamanan, Anda dapat mengonfigurasi akun pengguna atau grup mana untuk menjalankan tugas. Ada juga opsi untuk menjalankan tugas apakah pengguna masuk atau tidak. Jika Anda memilih opsi itu, Anda harus memberikan kata sandi pengguna OS di Penjadwal Windows saat menyimpan jadwal
  • Tutorial cara menggunakan mysql sakila

    Anda juga dapat memilih untuk menjalankan tugas sebagai Tersembunyi serta mengonfigurasinya untuk dijalankan pada sistem operasi tertentu

Memicu Tugas

Tab Pemicu mencantumkan jadwal tugas. Tugas dapat dikonfigurasi untuk dijalankan pada berbagai jadwal, termasuk Satu Kali, Harian, Mingguan, Bulanan, dan menurut permutasi apa saja dari masing-masing

Klik Baru. tombol untuk memunculkan dialog Pemicu Baru

Tutorial cara menggunakan mysql sakila

Tugas yang sama dapat berjalan sesuai dengan banyak jadwal. Misalnya, kami dapat menjadwalkan tugas sinkronisasi database kami untuk dijalankan setiap bulan pertama serta setiap hari Minggu kedua

Tutorial cara menggunakan mysql sakila

Tetapkan Notifikasi Email

Navicat memungkinkan Anda membuat dan mengirim email yang dipersonalisasi dengan hasil yang dikembalikan dari jadwal. Hasilnya dapat dikirim melalui email ke beberapa penerima. Periksa opsi Kirim Email di tab Lanjutan dan masukkan informasi yang diperlukan

Dari

Tentukan alamat email pengirim. Misalnya, "Alamat email ini dilindungi dari robot spam. Anda perlu mengaktifkan JavaScript untuk melihatnya. ”

Jadi, CC

Tentukan alamat email setiap penerima, pisahkan dengan koma atau titik koma (;)

Subjek

Tentukan subjek email dengan format yang disesuaikan

Tubuh

Menulis konten email

Inang (Server SMTP)

Masukkan server Simple Mail Transfer Protocol (SMTP) Anda untuk pesan keluar

Pelabuhan

Masukkan nomor port yang Anda sambungkan ke server email keluar (SMTP) Anda

Gunakan autentikasi

Centang opsi ini dan masukkan Nama Pengguna dan Kata Sandi jika server SMTP Anda memerlukan otorisasi untuk mengirim email

Koneksi aman

Tentukan koneksi untuk menggunakan TLS, koneksi aman SSL atau Never

Kirim Surat Percobaan

Navicat akan mengirimi Anda email percobaan yang menunjukkan keberhasilan atau kegagalan

Tutorial cara menggunakan mysql sakila

Setelah selesai mengonfigurasi pekerjaan otomatis, Anda dapat mengujinya dengan mengeklik tombol Mulai di bilah alat Otomasi

Seperti namanya, Menggabungkan Replikasi terdiri dari menggabungkan data dari dua atau lebih database ke dalam satu database. Sebagai latihan, kita akan menggabungkan isi database sakla dan sakla2 ke dalam database ketiga bernama "sakila_merged" yang akan menyimpan dataset yang digabungkan

Pekerjaan Penggabungan Replikasi akan mengharuskan kita untuk membuat dan menyimpan dua profil Sinkronisasi Data. satu untuk setiap basis data sumber. Langkah-langkahnya akan sama persis seperti pada bagian Membuat Pekerjaan Sinkronisasi Data di atas, jadi kami tidak akan mengulanginya di sini

Pekerjaan batch dapat dipicu oleh database sumber atau oleh target, seperti yang kita lakukan di bagian sebelumnya tentang Replikasi Snapshot. Namun, biasanya paling mudah untuk memicu pekerjaan batch dari database target karena semuanya akan berada di server yang sama. Kami akan melakukannya di sini juga

  • Klik tombol Otomasi di bilah alat utama
  • Kemudian klik Pekerjaan Batch Baru di toolbar Objek untuk membuka tab pekerjaan batch baru
  • Telusuri koneksi sumber, database, dan/atau skema di panel Objek. Itu akan membuat pekerjaan yang disimpan untuk database itu muncul di panel bawah Pekerjaan yang Tersedia
  • Di panel Pekerjaan yang Tersedia, pilih jenis pekerjaan Sinkronisasi Data, lalu pindahkan pekerjaan dari daftar Pekerjaan yang Tersedia ke daftar Pekerjaan yang Dipilih di atas dengan mengklik dua kali atau menyeretnya
  • Tutorial cara menggunakan mysql sakila
  • Klik tombol Simpan pada bilah alat Otomasi dan berikan nama deskriptif dalam dialog Simpan. Itu akan mengaktifkan tombol Atur Jadwal Tugas dan Hapus Jadwal Tugas
  • Di tab Umum dari dialog Jadwal Tugas, Anda dapat kembali memberikan deskripsi tugas serta memberikan beberapa opsi untuk pelaksanaannya
  • Di dalam tab Pemicu, Tugas dapat dikonfigurasi untuk dijalankan pada berbagai jadwal, termasuk Satu Kali, Harian, Mingguan, Bulanan, dan dalam setiap permutasi dari masing-masing. Kali ini, dua tugas akan dijalankan, bukan satu
  • Setelah selesai mengonfigurasi pekerjaan otomatis, Anda dapat mengujinya dengan mengeklik tombol Mulai di bilah alat Otomasi

Dalam Replikasi Gabungan, hanya database gabungan yang berisi semua data terbaru. Setiap basis data sumber hanya berisi data dasar, ditambah apa pun yang dimasukkan sejak pertama kali diisi. Dalam Replikasi Transaksional, pengguna menerima salinan awal lengkap dari database dan kemudian menerima pembaruan berkala sebagai perubahan data sehingga semua database bekerja dengan kumpulan data yang sama. Menjaga banyak database tetap sinkron menjadikan ini jenis replikasi yang paling kompleks

Dengan replikasi Transaksional, jumlah Pekerjaan Sinkronisasi Data yang diperlukan meningkat secara substansial karena data harus direplikasi di semua basis data pengguna. Misalnya, kita memiliki tiga database yang disebut sakila, sakila2, dan sakila3. Kami dapat menggabungkan dan menyebarkan kumpulan data lengkap di semua basis data pengguna menggunakan total enam Pekerjaan Sinkronisasi Data. tiga untuk menggabungkan database pengguna, dan tiga lainnya untuk memperbaruinya dengan kumpulan data yang digabungkan

Berikut adalah wizard Otomasi dengan keenam pekerjaan

Tutorial cara menggunakan mysql sakila

Untuk memberikan waktu yang cukup untuk menyelesaikan penggabungan data, yang terbaik adalah membagi pekerjaan menjadi dua bagian di mana yang pertama menggabungkan data dan yang kedua memperbarui database pengguna dengan kumpulan data lengkap setelah penundaan yang ditentukan

Inilah yang mungkin terlihat seperti Pekerjaan Otomasi yang menyebarkan kumpulan data yang digabungkan ke database pengguna

Tutorial cara menggunakan mysql sakila

Menjalankan pekerjaan ini dua jam setelah yang pertama akan memberikan banyak waktu untuk menyelesaikan penggabungan. Oleh karena itu, jika tugas pertama dijadwalkan berjalan pada tengah malam, kami akan menetapkan tugas ini dimulai pada pukul 2 pagi

Tutorial cara menggunakan mysql sakila

Dalam tindak lanjut whitepaper Strategi Sinkronisasi Database ini, kami membahas cara mengotomatiskan replikasi database menggunakan utilitas Otomasi Navicat Premium 12. Digunakan bersama dengan alat Sinkronisasinya, ini memungkinkan DBA untuk mengotomatiskan berbagai jenis replikasi agar berjalan sesuai jadwal yang telah ditentukan