Advertisement

SharingMatrix.com - Free, simple and fast file hosting!

Sabtu, 03 Juli 2010

12 Langkah Menjadi Web Developer

Tentu anda sudah mengenal apa web itu. Namun mungkin ada yang belum mengerti bagaimana sih membuat web tersebut. Apa yang harus dipelajari untuk menjadi web developer, dan bagaimana untuk hidup dari profesi web developer. Saya mencoba membuat daftar langkah-langkah yang dapat anda tempuh untuk menjadi seorang web developer berdasarkan pengalaman saya sebagai web developer. Semoga daftar ini dapat membantu anda untuk memulai karir sebagai web developer. Tidak panjang lebar inilah langkah-langkah menjadi seorang web developer:
Belajar Bahasa Pemrograman Web
Untuk memulainya tentu anda harus menguasai bahasa pemrograman web. Dan bahasa yang dikuasai tidak cukup 1 bahasa pemrograman saja karena web dibangun diatas beberapa faktor pendukung. Bahasa yang sebaiknya anda pelajari untuk menjadi web developer adalah:
  1. HTML, merupakan bahasa pemrograman web paling dasar dan mutlak harus dikuasai. HTML adalah bahasa untuk menciptakan tampilan web yang anda lihat di browser. HTML membangun struktur tampilan web seperti header, content, footer, menu, dan sebagainya. Namun untuk menciptakan tampilan yang lebih baik tidak cukup dengan HTML saja masih diperlukan bahasa lain untuk menciptakan tampilan yang lebih baik.
  2. CSS, inilah bahasa pelengkap HTML. Tanpa CSS kita tak akan dapat menciptakan tampilan yang indah. CSS adalah bahasa yang mengatur layout dan tampilan dari web tersebut misalnya warna background, tulisan, font, ukuran, dan sebagainya. Dengan kombinasi HTML dan CSS maka kita dapat menciptakan tampilan yang baik dan indah.
  3. Bahasa scripting web misalnya PHP, ASP, ColdFusion, Python, dan lainnya. Bahasa pemrograman ini adalah bahasa yang akan kita gunakan untuk membangun aplikasi web. Kalau tadi HTML dan CSS merupakan pembangun tampilan dari web tersebut maka bahasa scripting ini adalah pengontrol logika aplikasi web. Bahasa ini menghubungkan aplikasi web kita dengan database dan mengolah input output dari aplikasi kita. Sebaiknya anda memilih salah satu bahasa untuk didalami. Saya menyarankan menggunakan PHP karena bahasa inilah yang paling banyak digunakan untuk membuat aplikasi web. Dengan sifatnya yang terbuka dan bebas biaya maka kita dengan mudah mempelajari dan membuat aplikasi web dengan mudah. Kelengkapan dokumentasi dan tutorial PHP juga sangat banyak sehingga anda tidak akan kesulitan mempelajari bahasa yang satu ini.
  4. SQL, merupakan bahasa scripting database. Database adalah aplikasi pengolah data yang menyimpan data untuk digunakan bersama aplikasi web kita. Database ada bermacam-macam misalnya MySQL, SQLite, Oracle, PostgreSQL, SQL Server, dan database lainnya. Sangat disarankan untuk memilih salah satu untuk didalami. Walaupun SQL merupakan standar bahasa scripting database namun dengan mempelajari salah satu scripting database yang ada maka kita akan dimudahkan dalam menyimpan, mengelola, dan memberikan output data dengan tersedianya fungsi-fungsi yang akan membantu anda bekerja dengan database.
  5. Javascript, bahasa scripting yang berjalan di browser. Bahasa ini tidak mutlak dipelajari, namun kalau anda ingin membuat web dengan efek animasi, dan web yang lebih interaktif maka javascript akan membantu anda. Dibandingkan dengan flash untuk membuat efek tertentu, saya lebih memilih Javascript. Kenapa, karena Flash masih memerlukan installasi plugin sedangkan Javascript sudah didukung secara default oleh browser modern.
Pelajari Teknik Penyelesaian Kasus Pemrograman Web
Misalnya bagaimana pemrograman yang berhubungan dengan tanggal, bagaimana menghubungkan web dengan aplikasi lainnya, bagaimana mengakses database, dan beragam teknik lainnya. Dengan mengetahui teknik pemrograman dan penyelesaian kasus-kasus pemrograman web maka anda dapat lebih efektif dalam pemrograman aplikasi web anda.

Pelajari Metode Pengembangan Web yang Baik
Ada banyak metode pengembangan seperti RUP, Agile, dan USDP tapi pada dasarnya mengfokuskan pada analisa, perancangan, pengembangan, dan pengujian. Lakukan pengembangan aplikasi dengan tahapan-tahapan diatas. Lakukan analisa apa yang diperlukan oleh aplikasi ini, kemudian rancang terlebih dahulu aplikasi anda sebelum melakukan coding, lakukan pengembangan atau coding, dan uji coba terlebih dahulu sebelum dirilis atau didelivery. Anda dapat kembali ketahap sebelumnya bila diperlukan. Yang penting, tentukan sendiri metode yang paling baik seusai dengan diri anda.

Belajar Mengolah Gambar
Buat apa? Karena dengan gambar maka kita dapat memberikan informasi lebih cepat dan efektif dibandingkan dengan mendeskripsikan dalam text yang panjang. Cukup pelajari Adobe Photoshop atau Adobe Firework yang merupakan software paling umum untuk keperluan gambar web. Pelajari bagaimana membuat gambar seperti icon, background, patern, dan gambar lainnya. Sebenarnya bukan merupakan keharusan karena untuk menciptakan gambar untuk tampilan web karena hal ini lebih cenderung merupakan pekerjaan web designer. Namun bila anda bs membuat gambar untuk web maka akan lebih membantu dibandingkan anda harus meminta tolong teman anda untuk keperluan gambar web anda.

Gunakan Framework
framework merupakan sekumpulan fungsi dan library yang dapat memudahkan pemrograman anda. Gunakan framework sesuai dengan bahasa pemrograman anda. Misalnya ASP menggunakan .NET Framework. Ruby dengan Rails Framework, Python dengan Django Framework, dan PHP yang lebih banyak lagi seperti Prado, Symfony, CakePHP, dan framework lainnya. Lakukan riset dan tentukan pilihan anda framework mana yang akan anda gunakan dan dalami framework tersebut. Jangan terlalu banyak berpindah-pindah framework karena anda tidak akan memperoleh manfaat maksimal karena pemahaman yang terpecah-pecah. Jadi tentukan framework pilihan anda sesuai minat, dan teknik yang anda senangi.

Pelajari Teknik Mengoptimalkan Aplikasi Anda
Agar aplikasi anda dapat berjalan lebih cepat dan responsif maka anda harus dapat melakukan tuning atau optimalisasi. Pelajari teknik pemrograman web yang baik, pemecahan masalah programming yang efektif, tuning dan optimalisasi database, serta optimasi web server.

Pelajari Web Server
akan sangat bermanfaat bila anda mempelajari web server agar anda dapat mengetahui bagaimana menjalankan aplikasi anda di web server. Atau bagaimana cara mengoptimalkan aplikasi di web server. Misalnya penggunaan module caching seperti APC, eAccelerator, dan sebagainya. Atau penggunaan file .htaccess untuk menciptakan friendly URL atau URL yang lebih enak dibaca. Dengan mempelajari web server maka anda dapat mengoptimalkan dan menambahkan feature aplikasi anda di server.

Pelajari Control Panel Hosting
Karena anda akan banyak berhubungan dengan control panel bila anda menyewa hosting untuk web anda. Control panel yang banyak digunakan antara lain Cpanel, Pleks, ISPConfig, dan sebagainya. Dengan memahami penggunaan control panel maka anda dapat mengoptimalkan aplikasi anda di provider hosting anda.

Ikuti Perkembangan Teknologi Web Terbaru
Teknologi web selalu berkembang misalnya munculnya teknologi RSS, PODCasting, dan teknologi lainnya. Pelajari bagaimana membuat dan menggunakan teknologi tersebut di aplikasi anda. Karena aplikasi yang ketinggalan jaman akan ditinggalkan penggunanya juga.

Pelajari Manajemen Proyek
Suatu pengembangan aplikasi merupakan suatu proyek yang harus di atur, direncanakan, dan dilakukan dengan baik. Dengan mempelajari manajemen proyek maka anda dapat melakukan kolaborasi dengan yang lain dalam mengembangkan aplikasi. Anda juga dapat memperoleh efektifitas dan efisiensi waktu dalam menyelesaikan suatu proyek.

Untuk Meningkatkan Kemampuan Anda, Selalu ASAH Kemampuan Anda dengan Mengerjakan Aplikasi Web
Entah pekerjaan, atau proyek pribadi. Karena makin banyak aplikasi yang anda buat maka kemampuan anda akan makin baik. Kembangkan ide anda dan realisasikan menjadi suatu aplikasi.Yang terakhir, jangan mau selalu menjadi web developer yang hanya mengerjakan proyek orang lain.

Anda Harus Membuat Suatu Aplikasi Yang Dapat Dijadikan Produk atau Layanan Anda Sebagai Wujud Kemampuan Anda
Produk dan layanan ini dapat anda jual sehingga anda dapat memperoleh hasil dari kemampuan anda dan menikmati hasilnya. Dibandingkan dengan mengerjakan proyek orang lain secara terus-terusan dan dibayar per-proyek tentu akan lebih baik bila anda mengerjakan 1 produk namun anda memperoleh hasil terus-terusan dengan syarat produk anda memiliki nilai jual yang baik.
Itulah langkah-langkah dasar untuk menjadi seorang web developer menurut pengalaman saya. Langkah diatas tidaklah cukup, hanya langkah dasar saja. Semoga daftar diatas dapat menjadi pembimbing anda dan bahkan dapat menjadikan anda web developer yang lebih baik lagi. Anda harus terus belajar dan berlatih terus serta selalu menerima perkembangan yang ada agar kemampuan anda terus terasah.
Read More..

Jumat, 18 Juni 2010

Auto Backup Database MySQL menggunakan Crontab + Shell Scripting

Linux Shell Scripting adalah serangkaian command yang ditulis dalam file teks biasa, kemudian file teks tersebut dipanggil untuk menjalan command didalamnya.

Command pada linux shell bermacam-macam seperti create/update/delete sebua file atau folder, melakukan mounting, sampai bisa melakukan backup database.

Sedangkan Crontab adalah aplikasi penjadwalan pada linux yang memungkinkan untuk eksekusi secara otomatis program/aplikasi/script dengan waktu yang telah dijadwalkan.

Jadi dengan dua buah kemampuan linux tersebut adalah kombinasi lengkap untuk membuat backup database secara otomatis dan terjadwal.

Dibawah ini adalah step by step untuk membuat Auto Backup Database MySQL

1. Buat semua file, sebagai contoh auto_backup.sh Pada file tersebut tuliskan linux shell scripting, seperti dibawah ini:
v_tgl=`date +%Y%m%d_%H%M%S`;
v_name=bukutamu_$v_tgl.sql ;
mysqldump -uroot -ppass bukutamu > /home/dendie/Desktop/$v_name;

Script diatas adalah shell scripting yang melakukan dump/backup dari database bernama bukutamu ke alamat /home/dendie/Desktop/

Sedangkan bagian Script yang melakukan backup database adalah
mysqldump -uroot -ppass bukutamu > /home/dendie/Desktop/$v_name;

variabel $vname berisikan format penamaan file hasil script shell yang digunakan sebagai nama hasil dump/backup database.

contoh hasil backup adalah bukutamu_20100128_203001.sql

Sedangkan bagian Script yang membuat format penamaan file adalah

v_tgl=`date +%Y%m%d_%H%M%S`;
v_name=bukutamu_$v_tgl.sql ;


2. Set file auto_backup.sh sebagai execute file
sudo chmod +x auto_backup.sh

3. Pada command line set Crontab/Scheduling untuk eksekusi file auto_backup.sh
sudo crontab -e

Kemudian ketikan seperti dibawah ini
*/5 * * * * /home/dendie/Desktop/my_data/auto_backup.sh > /home/dendie/Desktop/auto_backup.log
Contoh diatas membuat crontab/scheduling untuk eksekusi file auto_backup.sh setiap 5 menit sekali dan membuat log/catatan ke file auto_backup.log apabila terjadi trouble saat eksekusi.

Read More..

Membuat Crontab

Crontab adalah sebuah program yang dapat mengeksekusi secara otomatis pada saat yang diinginkan. Pembahasan kali ini adalah mengenai cara membuat file crontab. Syntax dari isi file crontab itu sendiri adalah sebagai berikut: Untuk membuat file crontab pada sesi user yang aktif, anda tinggal membuka terminal, lalu ketikkan :

crontab -e //ini untuk mengedit crontab yang ada pada sesi yang aktif.

Lalu anda edit file crontab tersebut dan ketikkan sintaks dengan format sebagai berikut:

* * * * *

Penjelasan: -Tanda asterix (*) diatas menunjukkan kapan akan dijalankan program. Terdiri dari lima bintang, yang masing-masing berarti:
  1. Bintang pertama menunjukkan menit keberapa program akan dieksekusi
  2. BIntang kedua menunjukkan jam ke berapa program akan dieksekusi
  3. Bintang ketiga menunjukkan hari keberapa program akan dieksekusi
  4. Bintang keempat menunjukkan minggu keberapa program akan dieksekusi
  5. Bintang kelima menunjukkan berapa kali dalam seminggu program akan dijalankan Jika kita tidak mengganti tanda asterix diatas dengan bintang semuanya, maka akan secara otomatis akan dijalankan setiap menit, jam, hari, minggu dan bulan Syntax berikutnya yaitu eksekusi yang ingin dilakukan. Misalnya saja contoh crontab adalah sebagai berikut:
    * * * * * rm /home/tmp
Maka secara otomatis, program akan mengeksekusi perintah diatas, yaitu meremove atau menghapus file yang berada di direktori home/tmp Setelah itu simpan file tersebut dengan menekan ctrl X , lalu simpan, secara otomatis program akan terinstal dengan sendirinya. Untuk mengetahui apakah crontab anda sudah jalan atau tidak, ketik saja crontab -l , maka anda akan melihat program crontab yang sedang berjalan. Bagaimana, mudah bukan membuatnya? silakan mencoba.
Read More..

Rabu, 16 Juni 2010

Kunci Folder Tanpa Software

Banyak cara dilakukan untuk mengunci sebuah folder, mulai dari menggunakan aplikasi sampai tanpa aplikasi, berikut ini saya akan mengunci folder pada OS Windows XP tanpa menggunakan aplikasi.

Langkah:

- Sebagai contoh, Anda membuat folder bernama D: \ TestFolder

- Go to Start -> All Program -> Accessories dan pilih Notepad
Copy dan paste perintah di bawah ini ke notepad

ren TestFolder TestFolder. (21EC2020-3AEA-1069-A2DD-08002B30309D)
dan Save the file sebagai LockFolder.bat

- Buat lagi file baru di notepad
Copy dan paste perintah di bawah ini ke notepad

ren TestFolder. (21EC2020-3AEA-1069-A2DD-08002B30309D) TestFolder

Simpan ini sebagai OpenLockFolder.bat

- Sekarang Anda memiliki dua file batch. Klik dua kali folder LockFolder.bat dan Anda akan berubah menjadi Control Panel dan isinya tidak dapat dilihat.

- Untuk membuka folder klik double sebagai OpenLockFolder.bat dan Anda kembali folder asli Anda.note: Anda harus menjalankan batch file di partisi yang sama atau drive dimana folder yang ingin Anda kunci.

Read More..

Browsing melalui Terminal Linux


Cara browsing melalui Terminal linux memang berbeda dengan aplikasi internet lainnya, ketika kita browsing melalui terminal maka gambar-gambar yang ada pada suatu situs tidak-lah tampak alias hanya berupa huruf-huruf sajalah yang tampak. Untuk dapat langsung menggunakan Terminal sebagai media browsing, anda dapat mengikuti langkah seperti berikut.

- Buka Terminal
- Install elinks, ketik :$ sudo apt-get install elinks
- pilih yes : y [enter]
- Finish....

Untuk memulai browsing.
- ketik perintah : elinks (target).com
- nikmati browsing layaknya seorang Hacker.
- untuk keluar tekan Ctrl-C.
Read More..

Senin, 14 Juni 2010

Mencegah serangan DOS dengan membatasi respon PING

Apakah anda pernah memakai perintah PING ? ketika server anda tidak ada respon atau mati dan anda ingin mengecek bagaimana kondisi respon server anda, maka perintah ping adalah perintah yang sangat sederhana untuk mengetah ui apakah server anda hidup atau mati.

Perintah ping ini kalau dilakukan secara massal kepada suatu IP tertentu sehingg dapat menimbulkan kondisi SYN Cookies maka server anda akan kelabakan untuk merespon serangan ping ini. Di salah satu sisi ada untungnya di salah satu sisi yang lain, ping ini dapat meruntuhkan service yang ada di server anda.

Bagaimana penaganannya ? Tidak terlalu sulit dan tidak terlalu gampang. Asal anda membaca tulisan ini dan kemudian mencari di paman Google, maka akan anda temukan jawabannya.

Pada kesempatan ini, saya ingin memberikan sedikit trik bagaimana menangani serangan DOS yang dilakukan dengan PING. Software yang diperlukan adalah iptables. Anggap saja anda mempunyai script semacam ini, yang anda jalankan di server anda untuk melengkapi security di server anda.

#! /bin/sh
trusthost='192.168.10.100'
myhost='192.168.20.200'
any='0.0.0.0/0'
##############
#Flush & Reset
##############
iptables -F
iptables -X
##############
#Deafult Rule
##############
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP
#########
#loopback
#########
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
#######################
#ICMP trusthost->myhost
#######################
iptables -A INPUT -p icmp --icmp-type echo-request -s $trusthost -d $myhost -j ACCEPT
iptables -A OUTPUT -p icmp --icmp-type echo-reply -s $myhost -d $trusthost -j ACCEPT
#######################
#ICMP myhost->trusthost
#######################
iptables -A OUTPUT -p icmp --icmp-type echo-request -s $myhost -d $trusthost -j ACCEPT
iptables -A INPUT -p icmp --icmp-type echo-reply -s $trusthost -d $myhost -j ACCEPT
#######################
#ssh trusthost-> myhost
#######################
iptables -A INPUT -p tcp -s $trusthost -d $myhost --dport 22 -j ACCEPT
iptables -A OUTPUT -p tcp -s $myhost --sport 22 -d $trusthost -j ACCEPT
#########
#logging
#########
iptables -N LOGGING
iptables -A LOGGING -j LOG --log-level warning --log-prefix "DROP:" -m limit
iptables -A LOGGING -j DROP
iptables -A INPUT -j LOGGING
iptables -A OUTPUT -j LOGGING

Untuk menolak serangan DOS lewat PING tambahkan policy di iptables seperti berikut ini,
# iptables -A INPUT -p icmp --icmp-type echo-request -s $trusthost -d $myhost -m limit --limit 1/m --limit-burst 10 -j ACCEPT

Dari setting di atas dalam waktu 1 menit hanya dibolehkan respon ping sebanyak 10 kali.
Apakah dengan ini saja cukup ? jawabannya adalah belum.

Kita harus setting juga kernelnya. Lakukan setting seperti ini sehingga SYN Cookies tidak berlaku di server anda.
# echo '1' > /proc/sys/net/ipv4/tcp_syncookies

atau lakukan dengan printah seperti berikut ini,
# sysctl -w net.ipv4.tcp_syncookies=1

Periksa di file /etc/sysctl.conf, apakah ada nilai net.ipv4.tcp_syncookies=1 di situ.

Ada DOS yang bernama Smurf yang juga dilakukan melalui ICMP alias ping juga.
Untuk ini setting saja server anda seperti berikut ini,
# echo '1' > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts

atau dengan perintah sysctl seperti berikut ini,
# sysctl -w net.ipv4.icmp_echo_ignore_broadcasts=1

Periksa file /etc/sysctl.conf apakah ada setting seperti ini ?
net.ipv4.icmp_echo_ignore_broadcasts=1

Kalau ada, berarti server anda sekarang sudah aman dari serangan DOS melalui PING.


Read More..

Backup Data MySQL Dengan PHP

Salah satu programming yang banyak dipakai di dunia saat ini adalah PHP. PHP bergembang begitu pesat dipakai dalam konten website yang memakai engine CMS. Misalnya saja adalah wordpress atau joomla. Kedua CMS ini sebagian besar memakai database MySQL. MySQl adalah database yang dapat kita pakai dengan gratis.

Hal yang terpenting ketika kita memakai MySQL adalah data backup. Backup ini harus kita lakukan berkali-kali agar data kita tetap aman, ketika terjadi kerusakan harddisk atau hilangnya data karena sebab yang tidak kita ketahui. Berikut adalah tulisan singkat, bagaimana memakai PHP script sederhana untuk melakukan backup data di MySQL.

<?php

$dbname = "oci_parse";
$dbhost = "localhost";
$dbuser = "root";
$dbpass = "******";
$backupFile = "infokomtek_com";
$backupFile = $dbname . date("Y-m-d-H-i-s") . '.gz';
$command = "mysqldump --opt -h $dbhost -u $dbuser -p $dbpass $dbname | gzip > $backupFile";

system($command);

?>

$dbname = “oci_parse” adalah nama data base yang ingin kita backup. $dbhost = “localhost” adalah nama host data base kita berada. $dbuser = “root” adalah user untuk mengakses database. $dbpass = “******” adalah password untuk mengakses database. Tergantung setting di MySQL anda, terkadang tidak diperlukan password untuk konek ke MySQL.


Read More..

Memonitor MySQL Server dengan SHELL Script

Pernahkah anda kesulitan untuk memonitor proses MySQL anda ? Sehingga ketika MySQL anda down pun anda tidak segera tahu. Kalau anda merasa bahwa MySQL anda sangat penting untuk selalu up dan jalan dengan baik, maka anda perlu memonitor proses MySQL anda, apakah down ataukah up.

Bagi anda yang punya Server Linux sudah pasti punya shell script. Dalam tulisan ini kenapa kita memakai shell script, karena dengan shell script, maka dapat dijalankan di OS apapun asal ada shell script. Berikut adalah shell script sederhana untuk memonitor proses MySQL anda apakah down atau up.

#!/usr/bin/sh

#
# http://oci-parse.blogspot.com
# script memonitor mysql
#

while true
do
check_mysql=`ps auxw | grep "mysqld" |
grep -v grep | wc -l`
if [ $check_mysql -gt 1 ];
then
echo "MySQL is up"
else
echo "MySQL is down"
fi
sleep 5
done

Pertama untuk mengetahui proses MySQL yang sedang berjalan dalah dengan mengetahui jumlah proses minimum yang ada di server anda.

Dalam script ini dianggap prosese minimum MySQL adalah 2, sehingga ketika diperiksa dengan perintah ps auxw | grep "mysqld" | grep -v grep | wc -l, dan hasilnya lebih dari 1, maka dianggap proses MySQL berjalan dengan baik.


Dibaris ke 16 ada perintah sleep 5. Perintah ini untuk memberikan periode berapa kali monitor dilakukan, alias setiap berapa detik perintah ps auxw | grep "mysqld" | grep -v grep | wc -l dijalankan.

Tentunya, echo "MySQL is down" dapat anda ganti dengan perintah mail. sehingga ketika MySQL anda down, dapat anda ketahui dengan cepat melalui email anda.

Read More..

Mengerti tuning MySQL dalam 3 menit

Saat ini banyak sekali CMS atau content management yang memakai data base MySQL, http://www.mysql.com/. Data base Mysql adalah salah satu database yang paling banyak pemakainya. Didahului oleh opensource murni, yang kemudian setelah dibeli oleh SUN meluncurkan versi Enterpise yang tidak 100% lagi merupakan software opensource.

Dalam kesempatan ini, akan kami tayangkan bagaimana memaksimalkan(tuningisasi) MySQL yang berhubungan dengan memory, logging, recovering, database maintenance, dll sehingga MySQL akan berjalan dengan maksimal dan baik di server kita.

Dan akan kami perkenalkan juga script kecil untuk melakukan check terhadap setting yang berhubungan dengan memory yang kita set di MySQL kita.

Logging dan mengetahui kondisi setting MySQL
Hal yang paling penting dalam kita melakukan tuning adalah pertama, mencatat semua query yang berjalan dalam suatu log. Hal ini penting untuk mengetahui seperti apa proses query yang sedang berjalan di MySQL. Apakah benar, MySQL kita memerlukan tuning yang khusus sehingga kondisi atau setting yang sekarang perlu lagi dioptimalkan. Dari pencatatan log ini, kita dapat juga mengetahui query seperti apakah yang sering dilakukan, sehingga ketika kita mengatur setting yang berkenaan dengan memory pun kita akan lebih tepat melakukannya.

Dalam query MySQL ada sorting, select, insert, update table dsb. Masing-masing query ini dapat kita atur berapa besar memory yang diperlukan, sehingga prioritas pemberian memory pun dapat kita lakukan.

Secara teknis untuk melakukan pencatatan log di MySQL sangatlah mudah. Tambahkan option --log ketika anda menjalankan MySQL di server anda. Misalnya adalah perintah seperti ini:
# safe_mysqld --log=$logfile

Kalau anda memakai Fedora atau Redhat atau turunannya, cari file script untuk menjalankan MySQL di /etc/rc.d/init.d/mysqld.

Temukan di situ baris yang menampilkan option untuk menjalankan MySQL.
Nilai $logfile ini adalah nama log dan tempat yang anda kehendaki. Misalnya adalah --log=/var/log/mysql.log.

Atau kalau anda hanya ingin menjalankan dengan perintah yang lebih simpel, maka dapat anda lakukan seperti berikut.
# safe_mysqld --log

Dengan option ini query log akan disimpan di direktori /var/lib/mysql.

Memeriksa query MySQL
Sekarang coba kita jalankan perintah berikut ini:
# mysqlshow

Maka akan tercatat di log yang telah kita tentukan tadi seperti berikut ini,
020819 8:32:49 15 Connect root@localhost on
15 Query show databases
15 Quit


Sekarang terlihat siapa yang sambung ke MySQL kita, dan query apa yang user lakukan. Dari log ini, tentunya kita dapat mengetahui kalau seandainya ada serangan atau intruder yang masuk sedini mungkin.

Karena itu log MySQL pun bisa kita monitor dengan script tertentu apabila ada query yang masuk yang tidak pernah kita lakukan.

Memeriksa proses MySQL yang berjalan
Setelah Log sudah tercatat dengan baik, belumlah cukup untuk mengetahui secara 100% bagaimana jalannya MySQL di server kita. Karena itu ada hal yang harus kita lakukan untuk mengetahui bahwa MySQL berjalan dengan baik.

Pertama yang harus kita lakukan adalah memeriksa apakah proses MySQL berjalan dengan wajar. Lakukan perintah berikut ini.
# ps -auxxw | grep mysql

Dari perintah di atas, akan tampak proses yang sedang berjalan. MySQL pun menyediakan perintah untuk memeriksa apakah MySQL sedang berjalan atau tidak. Lakukan perintah seperti berikut ini,
# mysqladmin ping
mysqld is alive

Nah dari sini, kita dapat memonitor MySQL kita, apakah down atau up bukan ? Kalau anda menguasai script seperti perl atau shell atau php tentunya hanya dengan 10 baris anda sudah dapat melakukan monitoring MySQL dengan mudah. Dengan script itu ada dapat kirimkan kondisi MySQL apabila terjadi masalah ke email anda.

Apakah perlu diberikan contoh script nya ?

Ada perintah lain yang dapat anda lakukan, apabila anda ingin mengetahui kondisi MySQL lebih detail.

Yaitu dengan perintah sebagai berikut.
# mysqladmin status

Hasilnya adalah seperti berikut,
[root@ns3 mye]# mysqladmin status
Uptime: 4034920 Threads: 1 Questions: 15649633 Slow queries: 38 Opens: 227439 Flush tables: 1 Open tables: 64 Queries per second avg: 3.879

Secara simpel akan kami jelaskan arti dari masing-masing kata di atas,
Uptime : panjang detik setelah MySQL dijalankan.
Threads : jumlah Thread yang dipakai
Questions : jumlah query yang dilakukan dari sejak MySQL dijalankan
Slow queries : jumlah query dalam suatu panjang waktu
Opens : jumlah table yang dibuka sejak MySQL dijalankan
Flush tables : jumlah flush、refresh、reload yang dijalankan
Open tables : jumlah table yang dibuka
Queries per second avg: rata-rata respon query per detik

Kalau anda menginginkan kondisi yang lebih lengkap berkenaan dengan MySQL anda, jalankan perintah berikut ini,
# mysqladmin extended-status

Karena perintah di atas kalau dijalankan, hasilnya sangat panjang sekali, maka tidak dimunculkan di tulisan ini.

Apakah ada hal yang belum dimengerti ?


Read More..

Memanfaatkan Fitur Query Cache di MySql

Jika kita sering menggunakan query yang sama berulang – ulang di Mysql kita, maka setting query_cache_size di mysql mesti diperhatikan. Query_cache_size akan menyimpan query yang berulang, sehingga akan mempercepat kerja MySQL untuk query yang sama. Karena query yang sebelumnya disimpan dalam memory cache.

Cara mengaktifkan query cache di Mysql :
Lakukan pengecekan fasilitas query_cache Mysql kita dengan menuliskan :

SHOW VARIABLES LIKE ‘ %query_cache% ‘

Menghasilkan keterangan :
have_query_cache = yes
query_cache_type=on
query_cache_size = 0

query_cache_size bernilai 0 (nol) , sehingga meskipun query_cache aktif fitur query cache tidak akan berguna jika ukurannya masih Nol.

Cara memanfaatkan query_cache di Mysql :

  1. Edit file konfigurasi mysql Anda (my.ini)
  2. Pada bagian [mysql] tambahkan baris berikut :
    set-variable=query_cache_size=64M
  3. Besarnya query_cache disesuaikan dengan resource komputer kita. Logikanya semakin besar query_cache akan semakin baik.
  4. Restart mysql kita.

Untuk membuktikan bahwa query_cache sudah berjalan ulangi langkah diatas dengan menuliskan :

SHOW VARIABLES LIKE ‘ %query_cache% ‘

Menghasilkan keterangan :
have_query_cache = yes
query_cache_type=on
query_cache_size = 67108864

Terlihat query_cache_size di mysql sudah bernilai 67108864 sesuai dengan yang sudah kita setting sebelumnya. Perlu diperhatikan pemberian nilai di query_cache_size merupakan kelipatan 2 (2n) misal 4,16,32,64 dst..

Semoga Bermanfaat.


Read More..

Minggu, 13 Juni 2010

Programmer Terkecoh dengan Screen Saver...

Suatu hari, seorang programmer komputer akhirnya meninggal dunia. di akhirat dia dpt kehormatan milih mau masuk neraka atau syurga, karena atas bantuannya, database di akhirat jadi lebih akurat.

Pertama, sang programmer disuruh lihat surga. Di dalam surga dilihatnya orang orang pada menghaturkan sembah sujud kepada YANG MAHAKUASA. “Ah, ngapain nyembah nyembah…” batin sang programmer.

Pilihan kedua, sang programmer di suruh lihat neraka. Dan hebatnya, di neraka bukannya api-api yang menyambar-nyambar. melainkan sebuah hamparan pantai. dan… gadis-gadis berbikini seksi.

“Nah ini, aku mau masuk sini”, teriak sang programmer kegirangan, karena menurutnya neraka itu panas dan membakar.

Selang beberapa menit di dalam neraka, sang MAHAKUASA dapat telepon dari sang programmer, “Ada apa?”, tanya sang MAHA KUASA.

“Pembohong. Neraka tadi ‘kan isi seharusnya sebuah pantai dan gadis-gadis seksi. Kok ini api semua?” teriak sang programmer yang langsung dapat balasan, “Oh itu. Sorry. Itu screen saver.”
Read More..

Gaji DBA Oracle di Indonesia

Beberapa waktu yang lalu saya ditelpon temen yang kerja di IT consultan. Dia nanya apakah saya ada temen DBA yang masih fresh? DBA fresh maksud dia kira-kira: mengetahui konsep dasar dan administrasi dasar database Oracle. Orang kayak gitu biasanya baru 1 tahun kerja jadi DBA Oracle, dan belum punya sertifikat OCA atau OCP. Nantinya ditempatkan di customer (telco). Gajinya di atas 5 juta perbulan. Kalau perform, gak lama lagi bisa naik gaji.


Tiga tahun yang lalu di perusahaan lama saya (juga IT consultan), orang baru lulus kuliah namun punya sertifikat OCP 9i digaji 3 juta perbulan. Setahun kemudian dia pindah ke perusahaan kompetitor digaji 7 juta perbulan. Satu tahun kemudian dia pindah lagi ke perusahaan kompetitor lain, saya gak tahu dia digaji berapa, pastinya naik.

Beberapa DBA Oracle teman saya yang betah kerja di suatu tempat, gajinya kalau naik tidaklah seberapa. Malahan sering gajinya lebih rendah dibandingkan DBA-DBA yang baru masuk. Ternyata hukum itu tetap berlaku, kalau mau naik gaji tinggi, ya mesti pindah company dulu.

Cerita saya di atas menunjukkan kisaran gaji DBA Oracle di Indonesia (khususnya Jakarta). Silahkan ditarsirkan sendiri-sendiri, itu termasuk gaji yang rendah apa tinggi.

Berdasarkan “Indonesia Salary Guide 2006″ yang dikeluarkan oleh Kelly Services, Gaji DBA (database administrator) sedikit di bawah IT Administrator, Network Administrator, Systems Engineer; dan lebih tinggi dari Analyst Programmer. DBA yang disebut mungkin terlalu general, tidak spesifik ke product tertentu (misalnya Oracle).

Saya tidak tahu keakuratan guide yang dibuat oleh Kelly Services tersebut. Namun yang jelas, berdasarkan sharing pengamalan dengan temen-temen yang kerja di dunia IT, gaji DBA Oracle tidak kalah (dan bersaing) dengan profesi-profesi yang lainnya seperti Network Administrator, Systems Engineer, dan lain-lain.

So? Buat temen-temen yang baru jadi DBA Oracle, atau yang bercita-cita ingin menjadi DBA Oracle someday nanti; ayo bersemangat. Dunia DBA Oracle menanti anda dengan memberi banyak harapan cerah.

Terambil dari http://rohmad.net
Read More..