Dengan asumsi ada remote server dan saya telah phpMyAdmin klien diinstal localy di komputer saya. Bagaimana saya dapat mengakses server ini dan mengelolanya melalui phpMyAdmin klien? Itu mungkin?
Tambahkan saja di bawah baris ke /etc/phpmyadmin/config.inc.php
file di bawah:
$i++;
$cfg['Servers'][$i]['host'] = 'HostName:port'; //provide hostname and port if other than default
$cfg['Servers'][$i]['user'] = 'userName'; //user name for your remote server
$cfg['Servers'][$i]['password'] = 'Password'; //password
$cfg['Servers'][$i]['auth_type'] = 'config'; // keep it as config
. Anda akan mendapatkan "Saat ini Server:" drop down dengan "127.0.0.1" dan salah satu yang anda telah disediakan dengan "$cfg['Server'][$i]['host']" cam beralih antara server.
Rincian lebih lanjut: http://sforsuresh.in/access-remote-mysql-server-using-local-phpmyadmin/
Hal itu dapat dilakukan, tetapi anda perlu mengubah konfigurasi phpMyAdmin, baca posting ini: http://www.danielmois.com/article/Manage_remote_databases_from_localhost_with_phpMyAdmin
Jika untuk alasan apapun link yang mati, anda dapat menggunakan langkah-langkah berikut:
config.inc.php
$cfg['Server'][$i]['host']
variabel, dan set ke IP atau nama host dari server jauh$cfg['Server'][$i]['pelabuhan']
variabel, dan set ke remote mysql port. Biasanya ini adalah 3306
$cfg['Server'][$i]['user']
dan $cfg['Server'][$i]['kata']
variabel dan mengatur ini untuk anda username dan password untuk remote serverTanpa tepat konfigurasi server, koneksi mungkin lebih lambat dari koneksi lokal misalnya, it's mungkin akan sedikit lebih cepat untuk menggunakan alamat IP yang bukan nama host untuk menghindari server harus mencari alamat IP dari nama host.
Selain itu, ingat bahwa anda remote database's username dan password yang tersimpan dalam teks biasa ketika anda terhubung seperti ini, jadi anda harus mengambil langkah-langkah untuk memastikan bahwa tidak ada yang dapat mengakses file konfigurasi ini. Atau, anda dapat meninggalkan username dan password variabel kosong akan diminta untuk memasukkan mereka setiap kali anda log-in, yang jauh lebih aman.
Hal ini tentu saja mungkin untuk mengakses server MySQL dari sebuah instance dari phpMyAdmin, sebagai jawaban lain telah menunjukkan. Dan untuk itu untuk bekerja, anda harus mengkonfigurasi remote server's MySQL server untuk menerima koneksi remote, dan memungkinkan lalu lintas melalui firewall untuk port number bahwa MySQL adalah mendengarkan. Saya lebih suka yang sedikit berbeda solusi yang melibatkan SSH Tunneling.
Perintah berikut akan membuat sebuah terowongan SSH yang akan meneruskan semua permintaan yang dibuat untuk port 3307 dari komputer lokal anda ke port 3306 pada mesin remote:
ssh -NL 3307:localhost:3306 root@REMOTE_HOST
Ketika diminta, anda harus memasukkan password untuk user root pada mesin remote. Ini akan membuka terowongan. Jika anda ingin menjalankan di latar belakang, anda'll perlu menambahkan -f
argumen, dan mengatur SSH Passwordless antara komputer lokal dan remote machine.
Setelah anda've got SSH tunnel bekerja, anda dapat menambahkan server jauh ke daftar server di lokal anda phpMyAdmin dengan memodifikasi /etc/phpmyadmin/config.inc.php
file. Tambahkan baris berikut pada akhir file:
$cfg['Servers'][$i]['verbose'] = 'Remote Server 1';// Change this to whatever you like.
$cfg['Servers'][$i]['host'] = '127.0.0.1';
$cfg['Servers'][$i]['port'] = '3307';
$cfg['Servers'][$i]['connect_type'] = 'tcp';
$cfg['Servers'][$i]['extension'] = 'mysqli';
$cfg['Servers'][$i]['compress'] = FALSE;
$cfg['Servers'][$i]['auth_type'] = 'cookie';
$i++;
Saya menulis lebih mendalam blog post tentang hal ini, dalam kasus anda perlu bantuan tambahan.
Ikuti posting blog ini. Anda dapat melakukannya dengan sangat mudah. https://wadsashika.wordpress.com/2015/01/06/manage-remote-mysql-database-locally-using-phpmyadmin/
File config.inc.php berisi pengaturan konfigurasi untuk instalasi phpMyAdmin anda. Menggunakan array untuk menyimpan set config pilihan untuk setiap server dapat terhubung ke dan secara default hanya ada satu, mesin anda sendiri, atau localhost. Dalam rangka untuk menyambung ke server lain, anda harus menambahkan satu set pilihan konfigurasi ke konfigurasi array. Anda harus mengedit file konfigurasi.
Pertama buka config.inc.php file yang diadakan di phpMyAdmin folder. Di wamp server, anda dapat menemukannya di wamp\apps\phpmyadmin folder. Kemudian tambahkan bagian berikut pada file tersebut.
$i++;
$cfg['Servers'][$i]['host'] = 'hostname/Ip Adress';
$cfg['Servers'][$i]['port'] = '';
$cfg['Servers'][$i]['socket'] = '';
$cfg['Servers'][$i]['connect_type'] = 'tcp';
$cfg['Servers'][$i]['extension'] = 'mysql';
$cfg['Servers'][$i]['compress'] = FALSE;
$cfg['Servers'][$i]['auth_type'] = 'config';
$cfg['Servers'][$i]['user'] = 'username';
$cfg['Servers'][$i]['password'] = 'password';
Mari kita lihat apa arti dari variabel ini.
$i++ :- Incrementing variable for each server
$cfg[‘Servers’][$i][‘host’] :- Server host name or IP adress
$cfg[‘Servers’][$i][‘port’] :- MySQL port (Leave a blank for default port. Default MySQL port is 3306)
$cfg[‘Servers’][$i][‘socket’] :- Path to the socket (Leave a blank for default socket)
$cfg[‘Servers’][$i][‘connect_type’] :- How to connect to MySQL server (‘tcp’ or ‘socket’)
$cfg[‘Servers’][$i][‘extension’] :- php MySQL extension to use (‘mysql’ or ‘msqli’)
$cfg[‘Servers’][$i][‘compress’] :- Use compressed protocol for the MySQL connection (requires PHP >= 4.3.0)
$cfg[‘Servers’][$i][‘auth_type’] :- Method of Authentication
$cfg[‘Servers’][$i][‘username’] :- Username to the MySQL database in remote server
$cfg[‘Servers’][$i][‘password’] :- Password to the MySQL database int he remote server
Setelah menambahkan ini bagian konfigurasi, restart server anda dan sekarang anda phpMyAdmin halaman rumah anda akan berubah dan itu akan menunjukkan lapangan untuk memilih server.
Sekarang anda dapat memilih server anda dan akses remote database dengan memasukkan username dan password untuk database.
Seperti yang tercantum dalam jawaban c.hill menjawab, jika anda ingin solusi aman saya akan menyarankan untuk membuka sebuah terowongan SSH ke server anda.
Berikut adalah cara untuk melakukannya untuk Windows pengguna:
Download Plink dan Dempul dari Dempul website dan letakkan file di folder pilihan anda (Dalam contoh saya C:\Putty
)
Buka Jendela konsol dan cd untuk Plink folder:
cd C:\Putty
Buka SSH tunnel dan redirect ke port 3307:
plink -L 3307:localhost:3306 username@server_ip -aku path_to_your_private_key.ppk
Dimana:
Akhirnya anda dapat men-setup PhpMyAdmin:
Baris untuk menambahkan:
$i++;
$cfg['Servers'][$i]['verbose'] = 'Remote Dev server';
$cfg['Servers'][$i]['host'] = 'localhost';
$cfg['Servers'][$i]['port'] = '3307';
$cfg['Servers'][$i]['connect_type'] = 'tcp';
$cfg['Servers'][$i]['extension'] = 'mysqli';
$cfg['Servers'][$i]['compress'] = FALSE;
$cfg['Servers'][$i]['auth_type'] = 'cookie';
http://127.0.0.1/phpmyadmin
Jika anda tidak ingin membuka konsol setiap waktu yang anda butuhkan untuk terhubung ke remote server, hanya membuat batch file (dengan menyimpan 2 baris perintah di .bat).
Saya akan menambahkan ini sebagai komentar, tapi reputasi saya belum cukup tinggi.
Di bawah versi 4.5.4.1deb2ubuntu2, dan saya menebak lainnya versi 4.5.x atau yang lebih baru. Ada tidak perlu untuk memodifikasi config.inc.php file sama sekali. Bukannya pergi satu lebih direktori turun conf.d.
Buat file baru dengan '.php' ekstensi dan tambahkan garis-garis. Ini adalah baik termodulasi pendekatan dan isolat masing-masing remote database server akses informasi.
Di Ubuntu
Anda hanya perlu mengubah satu file di folder PHPMyAdmin yaitu "config.inc.php".Tambahkan saja di bawah garis untuk anda "config.inc.php".
Lokasi File : /var/lib/phpmyadmin/config.inc.php
ATAU
/etc/phpmyadmin/config.inc.php
Mungkin anda don't memiliki izin untuk mengedit file tersebut, hanya memberikan izin menggunakan perintah ini
sudo chmod 777 /var/lib/phpmyadmin/config.inc.php
ATAU (dalam sistem yang berbeda, anda mungkin harus memeriksa dengan dua lokasi)
sudo chmod 777 /etc/phpmyadmin/config.inc.php
Kemudian copy dan paste kode di config.inc.php
file
$i++;
$cfg['Servers'][$i]['auth_type'] = 'cookie';
$cfg['Servers'][$i]['verbose'] = 'Database Server 2';
$cfg['Servers'][$i]['host'] = '34.12.123.31';
$cfg['Servers'][$i]['connect_type'] = 'tcp';
$cfg['Servers'][$i]['compress'] = false;
$cfg['Servers'][$i]['AllowNoPassword'] = false;
Dan membuat perubahan yang sesuai dengan server anda detail
Metode 1 ( untuk multiserver )
Pertama , mari kita membuat cadangan asli config.
sudo cp /etc/phpmyadmin/config.inc.php ~/
Sekarang di /usr/share/doc/phpmyadmin/contoh/ anda akan melihat sebuah file config.manyhosts.inc.php. Hanya menyalin ke /etc/phpmyadmin/ menggunakan perintah di bawah ini:
sudo cp /usr/share/doc/phpmyadmin/examples/config.manyhosts.inc.php \
/etc/phpmyadmin/config.inc.php
Mengedit config.inc.php
sudo nano /etc/phpmyadmin/config.inc.php
Mencari :
$hosts = array (
"foo.example.com",
"bar.example.com",
"baz.example.com",
"quux.example.com",
);
Dan tambahkan ip atau hostname array menyimpan ( nano CTRL+X tekan Y ) dan keluar . Dilakukan
Metode 2 ( single server ) Mengedit config.inc.php
sudo nano /etc/phpmyadmin/config.inc.php
Mencari :
/* Server parameters */
if (empty($dbserver)) $dbserver = 'localhost';
$cfg['Servers'][$i]['host'] = $dbserver;
if (!empty($dbport) || $dbserver != 'localhost') {
$cfg['Servers'][$i]['connect_type'] = 'tcp';
$cfg['Servers'][$i]['port'] = $dbport;
}
Dan ganti dengan:
$cfg['Servers'][$i]['host'] = '192.168.1.100';
$cfg['Servers'][$i]['port'] = '3306';
Ingat untuk mengganti 192.168.1.100 dengan mysql anda sendiri ip server.
Maaf untuk bahasa inggris saya buruk ( google translate telah menyalahkan :D )
Menghapus menyelesaikan entri dari /etc/http/conf.d/phpMyAdmin.conf
Dan di bawah ini sebagian di atas file,
<Directory /usr/share/phpMyAdmin/>
AddDefaultCharset UTF-8
<IfModule mod_authz_core.c>
# Apache 2.4
<RequireAny>
#ADD following line:
Require all granted
Require ip 127.0.0.1
Require ip ::1
</RequireAny>
</IfModule>
<IfModule !mod_authz_core.c>
# Apache 2.2
#CHANGE following 2 lines:
Order Allow,Deny
Allow from All
Allow from 127.0.0.1
Allow from ::1
</IfModule>
</Directory>
Kemudian,
jalankan perintah di bawah ini di prompt MySQL,
GRANT ALL ON *.* untuk root@localhost DIIDENTIFIKASI OLEH 'root@<password>'
GRANT ALL ON *.* untuk root@'%' DIIDENTIFIKASI OLEH 'root@<password>'
Untuk referensi: Allow IP untuk Mengakses Diamankan PhpMyAdmin