Anda tampaknya memiliki beberapa masalah di sini,
TIME OUT
Saya akan mulai di sini karena Anda mungkin memiliki masalah izin. Saya akan merekomendasikan terlebih dahulu memastikan bahwa alamat IP lokal Anda memiliki izin untuk terhubung ke database mySQL jarak jauh Anda dan sebaliknya, tergantung pada pengaturan Anda, Anda mungkin dapat mengonfigurasi ini di phpMyAdmin, konsul hosting seperti cPanel atau melalui akses shell. Saya menyarankan untuk menyiapkan pengguna terpisah dengan kata sandi yang kuat untuk akses jarak jauh. Anda harus memiliki alamat IP statis pada koneksi internet lokal Anda, jika Anda tidak memilikinya, hubungi Penyedia Layanan Internet Anda dan aturlah.
Di phpMyAdmin, jika Anda memiliki akses yang memadai, melalui tab "hak pengguna" dan atur "host" di bawah "informasi login". Saya tidak akan merekomendasikan pengaturan "host mana pun" karena alasan keamanan yang jelas.
Di cPanel, di bawah "database" Anda akan menemukan "mySQL jarak jauh" di mana Anda dapat mengatur alamat IP Anda.
Akhirnya di SSH,
- buka file konfigurasi mySQL dengan editor favorit Anda seperti VI atau Nano, di Ubuntu terletak di "/etc/mysql/my.conf",
- komentari "bind-address =127.0.0.1" sehingga terlihat seperti "#bind-address =127.0.0.1",
- restart mySQL dengan "/etc/init.d/mysql restart",
- masuk ke mySQL dengan "mysql -u root -p",
- untuk pengguna baru, "BUAT PENGGUNA 'MY_USERNAME'@'localhost' DIIDENTIFIKASI OLEH 'MY_PASSWORD'"
- diikuti dengan "BERIKAN SEMUA HAK ISTIMEWA PADA 'MY_DATABASE'.* KEPADA 'MY_USERNAME'@'12.34.56.78' DIIDENTIFIKASI DENGAN 'MY_PASSWORD';" - perhatikan, ganti IP "12.34.56.78" dengan alamat IP Anda yang sebenarnya.
- Anda sekarang harus memiliki konfirmasi di sepanjang baris kueri ok.
- Akhirnya keluar dari mysql dengan perintah "quit" dan mulai ulang dengan "/etc/init.d/mysql restart"
CATATAN:Saya akan merekomendasikan pengaturan kedua instalasi mySQL untuk akses jarak jauh.
Saya sekarang akan merekomendasikan menguji ini dengan menjalankan skrip kecil di mesin lokal Anda, seperti
<?php
$host = 'mysql_remoteip';
$user = 'mysql_username';
$pass = 'mysql_password';
$db = 'mysql_database';
$link = mysql_connect($host, $user, $pass) or die("Can not connect." . mysql_error());
mysql_select_db($db) or die("OOPS! I can not connect to the remote mySQL database, I was given the following error: ".mysql_error());
$sql = "SELECT column FROM table WHERE column='my_var'";
$result = mysql_query($sql);
while($row = mysql_fetch_array($result)) {
if(empty($row['column']) {
echo "WHOOPS! I could not get information from the mySQL, was there data for me to retrieve in the database?";
} else {
echo "The data I retrieved is:<br />"
echo $row['column'];
}
}
?>
CATATAN:Anda harus memiliki data dalam database agar skrip berfungsi dengan benar, hasil tanpa data akan menampilkan pesan bahwa skrip tidak dapat mengambil data, ini akan tetap menentukan apakah Anda sekarang memiliki akses ke database atau tidak tetapi tidak 'tidak memastikan itu 100% operasional.
GURU ATAU BUDAK
Ya, itu mungkin, asalkan Anda memiliki akses yang memadai
Di phpMyAdmin:
- di bawah tab "replikasi" Anda akan menemukan wizard untuk memberi Anda kode untuk mengatur ini di file konfigurasi mySQL (di Ubuntu terletak di "/etc/mysql/my.conf"),
- klik tautan untuk mengonfigurasi server master
- masukkan informasi di formulir, salin kodenya
- buka file konfigurasi Anda (lokasi di atas) dan tambahkan kode yang disediakan oleh phpMyAdmin
- setelah Anda memperbarui file konfigurasi restart mySQL dan klik tombol go di phpMyAdmin, ini akan mengkonfirmasi perubahan
- Sekarang lagi di bawah tab "replikasi" klik tautan untuk mengonfigurasi server budak
- pastikan, Anda memiliki server-id unik di file konfigurasi Anda, jika tidak tambahkan baris yang disediakan oleh phpMyAdmin ke bagian [mysqld] file
- Lengkapi informasi yang diperlukan dan klik Buka
Ini harus mengatur replikasi Anda.
SINKRONISASI
Jika semuanya gagal maka di phpMyAdmin pergi ke tab "sinkronisasi", masukkan informasi dan pergi, Anda hanya perlu mengkonfirmasi sinkronisasi pada halaman berikutnya dan 2 detik kemudian Anda selesai, semudah itu.
Untuk server produksi saya pribadi memiliki pengaturan replikasi master/slave tetapi untuk pengembangan saya menyinkronkan ketika saya membutuhkan data "langsung" untuk mereplikasi kesalahan atau masalah, ini karena saya hanya perlu menyinkronkan setiap 6-12 bulan sekali. Jika saya memerlukan data langsung secara lokal maka saya akan mengatur replikasi master/slave