Feeds:
Posts
Comments

Di laptop butut saya, saya memang tidak sering menggunakan MySQL. Saya hanya terbiasa menggunakan PostgreSQL. Sehingga ketika selesai mengupgrade, saya tidak mencoba mengoperasikan mysql sehingga tidak tau kalau ternyata ada perubahan yang akan bikin saya sedikit deg-degan :) Perubahan ini baru saya ketahui setelah ada keluhan kalau aplikasi custom yang digunakan sudah tidak bisa mengakses lagi data di server mysql. Hehehe, server juga saya upgrade ke current.

Yup, kembali ke keyboard. Segera saya jalankan terminal dan masuk ke dalam server mysql lewat mysql client. Semuanya biasa-biasa saja. Tapi setelah saya coba melihat isi sebuah tabel, saya mendapatkan pesan yang cukup mesra ini

>  select * from almari;
ERROR 1286 (42000): Unknown table engine 'InnoDB'

Weks, kok sudah tidak dikenali ? Jangan gila donk. Semua tabel dalam setiap database yang ada menggunakan engine itu tau’ :D Next, dari sini saya mendapatkan informasi bahwa setelah mengupgrade mysql ke versi 5.1, harus menjalankan perintah mysql_upgrade. Tapi sebelumnya saya mau melakukan backup dulu akh… :)

# cp -a /var/lib/mysql/ /home/wirasto/backup/18102009

# mysql_upgrade -pgola
Looking for 'mysql' as: mysql
Looking for 'mysqlcheck' as: mysqlcheck
Running 'mysqlcheck with default connection arguments
Running 'mysqlcheck with default connection arguments
Qsiput.almari
Error    : Unknown table engine 'InnoDBpi'
error    : Corrupt
Qsiput.anggota
Error    : Unknown table engine 'InnoDBng'
error    : Corrupt
Qsiput.buku
Error    : Unknown table engine 'InnoDBng'
error    : Corrupt
Qsiput.kelas
Error    : Unknown table engine 'InnoDB'
error    : Corrupt
Qsiput.libur                                       OK
...............
................
...............
sis.alur
Error    : Unknown table engine 'InnoDB'
error    : Corrupt
sis.pemakai
Error    : Unknown table engine 'InnoDB'
error    : Corrupt
sis.skeluar
Error    : Unknown table engine 'InnoDB'
error    : Corrupt
sis.surat
Error    : Unknown table engine 'InnoDB'
error    : Corrupt
test.tblblob
Error    : Unknown table engine 'InnoDB'
error    : Corrupt
Running 'mysql_fix_privilege_tables'...
OK

Wow, ternyata tetap tidak dikenali. Dan kali ini sudah dengan tambahan pesan error bahwa tabel telah Corrupt. Googling sana-sini ternyata engine InnoDB dukungannya di slackware current dalam bentuk plugin. Jadi kalau tidak mau memuatnya sebagai plugin harus mengcompile ulang kode sumber mysql dengan sedikit melakukan perubahan pada script mysql.Slackbuild. Dan karena saya tidak punya kode sumber dari mysql, saya memilih untuk memuat pluginnya saja.

Catatan : Awalnya berkas /etc/my.cnf ini belum ada.

# vim /etc/my.cnf
[mysqld]
ignore-builtin-innodb
plugin-load=innodb=ha_innodb_plugin.so

Tambahkan/masukkan ketiga baris diatas. Setelah itu silahkan restart mysql server.

# /etc/rc.d/rc.mysqld restart
091018 23:53:20 mysqld_safe mysqld from pid file /var/run/mysql/mysql.pid ended
091018 23:53:20 mysqld_safe Logging to '/var/lib/mysql/salawaku.err'.
091018 23:53:20 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql

Saya coba lagi

>  select * from almari;
+----+-----------+------+--------------------+
| id | almari    | laci | ket                |
+----+-----------+------+--------------------+
|  1 | Komputer  |    1 | Pemrogramman       |
|  2 | Komputer  |    2 | Desain Grafis      |
......
......

Sekarang dah bisa lagi. Di cek dari aplikasi custom juga sudah kembali seperti biasanya :)

Semoga bermanfaat…


Rujukan :
1. http://dev.mysql.com/doc/refman/5.1/en/upgrade.html
2. http://notes.benv.junerules.com/software/mysql-5-0-5-1-on-slackware-current/

Saya adalah salah seorang penggemar editor vim. Banyak editor teks yang pernah saya coba. Dari mcedit, nano, pico, vi/vim itu sendiri, hingga emacs yang susahnya ampun-ampunan. Dan saya lebih tertarik dengan vim.

Kali ini kita akan mencoba menambahkan fitur autocomplete untuk class dari Qt ke dalam editor vim. Tapi sebelum itu kita harus menyediakan beberapa paket tambahan yang dibutuhkan, yaitu omnicppcomplete dan ctags. Di Slackware, ctags sudah masuk dalam bundel paket vim :)

Sekarang jalankan perintah berikut, baris-perbaris di terminal.

$ cd ~

$ mkdir .vim

$ cd .vim

$ cp ~/omnicppcomplete-0.41.zip .

$ unzip omnicppcomplete-0.41.zip

Buat file configurasi vim dan masukkan/tambahkan konfigurasi dibawah ini

$ vim ~/.vimrc
syntax enable
filetype on
filetype plugin on
set nocp
set tags +=/usr/lib/qt/include/tags
$ su

# cd /usr/lib/qt/include/

# ctags -R --c++-kinds=+p --fields=+iaS --extra=+q -I Q_REQUIRED_RESULT

Sekarang cobalam menulis program C++/Qt dengan menggunakan vim. Dan nikmati fasilitas autocompletenya :)

Screenshot-VIM-Qt-AutoComplete

Sumber : http://wiki.qtcentre.org

Installasi default Qt SDK untuk sistem operasi Microsoft Windows tidak mengikutsertakan QPSQL driver. Sehingga untuk menghubungi server PostgreSQL secara langsung, bukan dengan menggunakan QODBC, kita harus mengompile dulu driver QPSQL ini sendiri. Dan untuk bisa mengompile driver QPSQL driver, pastikan bahwa kita sudah memiliki postgresql server terinstall dan juga source code (kode sumber) dari Qt yang sesuai dengan versi Qt yang saat ini digunakan.

Untuk versi postgresql yang saya gunakan adalah versi 8.3 yang terinstall di C:\Program Files\PostgreSQL\8.3\. Dan karena saya menggunakan Qt versi 4.5.3, maka saya akan mengompile driver dari berkas kode sumber qt-win-opensource-src-4.5.3.zip yang telah saya urai di My Documents. Jika semua yang dibutuhkan sudah tersedia, maka silahkan ikuti langkah-langkah berikut ini:

1. Jalankan Qt Command Prompt. Sebagai contoh disistem saya dilakukan dengan mangakses Start -> All Programs -> Qt SDK by Nokia v2009.04 (open source) -> Qt Command Prompt.

2. Masuk ke lokasi kode sumber

> cd "C:\Documents and Settings\Administrator\My Documents\qt-win-opensource-src-4.5.3\src\plugins\sqldrivers\psql"

3. Compile dan Install

> qmake.exe "INCLUDEPATH+='C:\Program Files\PostgreSQL\8.3\include'" "LIBS+='C:\Program Files\PostgreSQL\8.3\lib\libpq.lib'" psql.pro CONFIG+=release

> mingw32-make.exe -w 

> mingw32-make.exe install

4. Jika ingin memiliki versi debug, silahkan ulangi semua langkah ke-3 dengan mengilangkan opsi CONFIG+=release pada saat membentuk Makefile.

Selamat mencoba dan teruslah berkarya…

Hari ini saya mendapat kesempatan (numpang bandwidth) untuk mengupgrade Slackware yang tertanam di laptop tua saya. Karena saya menggunakan Slackware dengan desktop GNOME (gsb), maka saya menggunakan slapt-get dalam melakukan upgrade. Sama seperti yang disarankan oleh gsb itu sendiri. Dengan bandwidth yang lumayan cepat maka proses upgrade pun tidak harus menunggu lama. Prosesnya pun berjalan lancar dan tanpa masalah :)

Setelah proses upgrade selesai, saya lanjutkan dengan mencoba menjalankan berbagai program yang sering saya gunakan. Dari Anjuta, glade, gimp hingga mplayer dan audacious.

Ternyata dari semua yang saya coba, mplayer tidak bisa berjalan karena tidak menemukan library libx264.so.67. Saya mencoba mencari library ini di system yang terinstall, dan saya menemukan versi yang lebih tinggi dari yang dibutuhkan.

$ mplayer
mplayer: error while loading shared libraries: libx264.so.67: cannot open shared object file: No such file or directory

# find /usr/lib -name "*libx264*"
/usr/lib/libx264.so.76
/usr/lib/libx264.so
/usr/lib/libx264.a

Pertanyaannya adalah kenapa ya malah membutuhkan library dengan versi dibawahnya. Bukannya mplayer yang sekarang adalah yang terbaru ? Atau link versinya yang keliru saat dibuild ? Au ah, gelap :)

Kemudian saya mencoba membuat softlink ke versi yang dibutuhkan. Dan ternyata berhasil. Saya sudah bisa menggunakan mplayer lagi.

# ln -s /usr/lib/libx264.so.76 /usr/lib/libx264.so.67

Sekarang saya bisa menikmati versi terbaru dari Slackware dan GSB.

Lagi dan lagi, saya merilis sebuah tool sederhana yang bernama QUpx. Tentu sudah ketahuan dari namanya, bahwa tool sederhana ini hanyalah interface grafis dari upx. Yaitu program yang digunakan untuk memadatkan berkas binary.

QUpx saat ini masih dalam versi beta. Jadi masih ada kekurangan disana-sini. Dan tentu membutuhkan sentuhan dari mereka-mereka yang lebih berpengalaman untuk menyempurnakannya.

Oh ya, hampir lupa. QUpx saya rakit dengan menggunakan C++ dan Qt. Dan tetap dibawah naungan lisensi GPL2.

Screenshot-QUpx 0.0.1 [beta]

Download :
www.4shared.com

Older Posts »