MySQL Remove Definer - Hallo sahabat Dev-Create, Pada Artikel yang anda baca kali ini dengan judul MySQL Remove Definer, kami telah mempersiapkan artikel ini dengan baik untuk anda baca dan ambil informasi didalamnya. mudah-mudahan isi postingan Artikel mysql, Artikel perl, yang kami tulis ini dapat anda pahami. baiklah, selamat membaca.

Judul : MySQL Remove Definer
link : MySQL Remove Definer

Baca juga


MySQL Remove Definer

Pada database MySQL Bila melakukan dump/backup database menyertakan view, store procedure, function dan triger menggunakan perintah mysqldump secara otomatis selalu menyertakan string DEFINER dari hasil backup nya.




DEFINER adalah sebuah penanda yang menjelaskan USER dan IP yang dapat me-create view, store procedure, function dan triger ketika akan di lakukan restore pada sebuah database.

Bila USER dan IP yang tertera pada DEFINER tidak sama dengan USER dan IP anda dalam mengakses database Mysql maka yang terjadi saat RESTORE view, store procedure, function dan triger tersebut akan mendapatkan ERROR alias GAGAL. Agar RESTORE view, store procedure, function dan triger berhasil string DEFINER harus dihilangkan terlebih dahulu.

Berikut ini adalah cara menghilangkan string DEFINER menggunakan PERL sedangkan Operation System yang digunakan pada Posting ini adalah LINUX UBUNTU LUCID LYNX yang secara default telah terinstal PERL, di Linux Ubuntu untuk install PERL dapat menggunakan sudo apt-get install perl

Berikut ini adalah sebuah contoh dump yang menyertakan view, store procedure, function dan triger
mysqldump -uroot -p123 --routines databasesaya > databasesaya.sql

Setelah file backup bernama databasesaya.sql terbuat selanjutnya adalah menghilangkan string DEFINER, pada console linux tuliskan perintah seperti dibawah ini
perl -p -i.bak -e "s/DEFINER=\`root\`@\`localhost\`//g" databasesaya.sql
Pada contoh di atas adalah menghapus string DEFINER=`root`@`localhost` menjadi spasi kosong dari file yang bernama databasesaya.sql

Berikut ini penjelasan dari setiap option perl diatas
  • perl adalah perintah menjalan perl
  • -p adalah akan membaca isi file sampai baris terakhir
  • -i.bak adalah untuk membuat backup file dari original file databasesaya.sql menjadi databasesaya.sql.bak
  • -e adalah untuk mengeksekusi menganti tulisan DEFINER=`root`@`localhost` menjadi spasi kosong



Demikianlah Artikel MySQL Remove Definer

Sekianlah artikel MySQL Remove Definer kali ini, mudah-mudahan bisa memberi manfaat untuk anda semua. baiklah, sampai jumpa di postingan artikel lainnya.

Anda sekarang membaca artikel MySQL Remove Definer dengan alamat link https://dev-create.blogspot.com/2010/10/mysql-remove-definer.html