String Function di proc.myd - MySQL |
Tulisan ini merupakan kelanjutan dari tulisan saya sebelumnya. Setelah berhasil mengambil backup harian dari database MySQL server yang terkunci. Akhirnya saya berhasil me-restore database ke sever yang baru. Aplikasi web sudah bisa berjalan, akan tetapi ketika saya coba transaksi muncul error, bahwa mysql tidak menemukan function yang dituju. Karena aplikasi yang kantor saya ini programmer yang membuat aplikasi sudah resign, tentu saja hal yang seharusnya sederhana menjadi rumit. Membongkar program orang lain lebih sulit karena kita harus menyelami logika programmer yang membuat program tersebut. Setelah saya cari function tersebut di source code aplikasi ternyata tidak ketemu, karena ternyata function tersebut dibuat di database MySQL, dan masalahnya backup otomatis harian di server lama tidak menyimpan function, hanya table saja. Mungkin karena opsi backup otomatisnya, karena jika menggunakan PHPmyAdmin, opsi untuk membackup database beserta function itu ada.
Akhirnya saya mencoba mengkontak programmer lama, yang kebetulan masih mau dan berbaik hati masih membantu. Dan memberikan source function yang saya butuhkan, akan tetapi tidak berhenti sampai disitu, masih ada procedure yang dipanggil oleh function yang sebelumnya dan dia tidak menyimpan source-nya. Akhirnya saya mencoba browsing di internet, dimana sebenarnya database MySQL menyimpan string function. Awal saya mencoba mencari string text nama function di backup database, akan tetapi saya tidak menemukannya.
lokasi file proc.myd di folder mysql |
Dan ternyata MySQL menyimpan string function di folder mysql bukan folder database yang bersangkutan. MySQL menyimpan function dan stored procedure pada file proc.myd di folder mysql. Dari file inilah kita harus meng-ekstrak string untuk kita buat function kembali melalui query pada MySQL. Memang string yang tersimpan pada file tersebut tidaklah "bersih" karena akan banyak "string aneh" yang digunakan mysql untuk membaca function tersebut secara sistem. Tetapi hal tersebut sudah lebih dari cukup, string tersebut sudah seperti mendapatkan "berlian" yang kotor karena tanah, yang hanya perlu dicuci dengan air supaya bersih.
Untuk mengambil file tersebut, saya menggunakan cara yang saya tulis sebelumnya, karena server database tersebut terkunci ( locked ), meskipun service mysql-nya ON tetapi saya tidak bisa mengakses service tersebut, sehingga harus dengan cara "bar bar', yaitu mengambil / copy file tersebut untuk saya ektrak (lihat isinya) manual menggunakan Notepad ++.
Semoga bermanfaat bagi teman teman.
Tools :
related links :
No comments:
Post a Comment