Disclaimer, ini posting dari, oleh dan untuk nubi, jadi mohon jangan dikomentari “baru tahu ta?” Atau sejenisnya. 😀
Mutasi, migrasi, atau perpindahan seringkali merepotkan. Salah satu proses migrasi yang cukup merepotkan adalah migrasi database MySQL. Kan tinggal gunakan fasilitas import dan export di phpMyAdmin? Memang bisa kalau ukuran file backup-nya kecil dan tidak sampai 2 MB. Bagaimana kalau lebih besar, misalnya 600 MB? Perkara kenapa ukurannya bisa begitu besar tidak perlu dibahas, nyatanya file yang tersedia untuk dimigrasi hanya itu. Lalu bagaimana solusinya? Sebenarnya ada beberapa cara yang bisa ditempuh untuk melakukan migrasi ini:
- Memecah file backup menjadi ukuran kecil apabila database lama masih bisa diakses
- Mengubah batas unggah (upload_max_size) di php.ini
- Menggunakan fasilitas untuk me-restore dari console MySQL
Setiap opsi memiliki kelebihan dan kekurangannya masing-masing, kali ini yang ingin dibahas adalah pilihan ke-tiga.
Untuk melakukan restorasi dari console MySQL caranya cukup mudah dan sederhana. Kelebihan cara ini adalah tidak perlu mengutak-atik file konfigurasi (php.ini) dan melakukan restart apache. Cukup buka terminal, kemudian ketikkan
mysql -u root -p NAMADATABASE < NAMAFILEBACKUP
jadi misalnya anda ingin merestorasi database “bunga” dan lokasi file backup ada di “/home/timbuktu/Documents/bunga.sql” maka tinggal ketikkan
mysql -u root -p bunga < /home/timbuktu/Documents/bunga.sql
lalu masukkan password, tunggu sesaat dan proses restorasi akan selesai.
Kemudian jika ingin sekalian membuat user baru “aramidoh” dan password “mautauaja” dan memberinya hak penuh di database “bunga” tersebut tanpa menggunakan phpMyAdmin maka ketikkan saja</p
mysql -u root -p
untuk masuk ke MySQL sebagai Root, kemudian ketikkan
create user ‘aramidoh’@’%’ identified by ‘mautauaja’;
grant all privileges on bunga.* to ‘aramidoh’@’%’;
Selesai, database dan user baru sudah siap digunakan, selamat mencoba.
N.B OS yang digunakan adalah Linux Ubuntu
N.B.2 bisa juga digunakan untuk user lokal saja, cukup ganti ‘%’ dengan ‘localhost’