You are on page 1of 6

Nama : Eddy Gandhi G Tanggal : 16 Januari 2011 SMK B 1 Cimahi

XAMPP, INNODB & HEAP

Mata pelajaran : DataBase Kelas : 3 TKJ A Pemateri : Bu kingkin & Bpk Yogas

XAMPP
XAMPP merupakan tool yang menyediakan paket perangkat lunak ke dalam satu buah paket. Dengan menginstall XAMPP maka tidak perlu lagi melakukan instalasi dan konfigurasi web server Apache, PHP dan MySQL secara manual. XAMPP akan menginstalasi dan mengkonfigurasikannya secara otomatis untuk anda atau auto konfigurasi. Versi XAMPP yang ada saat ini adalah Versi 1.4.14 atau yang terbarunya anda bisa download pada http://www.apachefriends.org/en/xampp-window.html. Software XAMPP versi ini terdiri atas: a. Apache versi 2.0.54 b. MySQL versi 4.1.12 c. PHP versi 5.0.4 d. phpMyAdmin versi 2.6.2-p11 dan lain-lain XAMPP dikembangkan dari sebuah tim proyek bernama Apache Friends, yang terdiri dari Tim Inti (Core Team), Tim Pengembang (Development Team) & Tim Dukungan (Support Team) XAMPP adalah singkatan yang masing-masing hurufnya adalah : X X : Program ini dapat dijalankan dibanyak sistem operasi, seperti Windows, Linux, Mac OS, dan Solaris. A A : Apache, merupakan aplikasi web server. Tugas utama Apache adalah menghasilkan halaman web yang benar kepada user berdasarkan kode PHP yang dituliskan oleh pembuat halaman web. jika diperlukan juga berdasarkan kode PHP yang dituliskan,maka dapat saja suatu database diakses terlebih dahulu (misalnya dalam MySQL) untuk mendukung halaman web yang dihasilkan M M : MySQL, merupakan aplikasi database server. Perkembangannya disebut SQL yang merupakan kepanjangan dari Structured Query Language. SQL merupakan bahasa terstruktur yang digunakan untuk mengolah database. MySQL dapat digunakan untuk membuat dan mengelola database beserta isinya. Kita dapat memanfaatkan MySQL untuk menambahkan, mengubah, dan menghapus data yang berada dalam database. P P : PHP, bahasa pemrograman web Bahasa pemrograman PHP merupakan bahasa pemrograman untuk membuat web yang bersifatserver-side scripting. PHP memungkinkan kita untuk membuat halaman web yang bersifat dinamis. Sistem manajemen basis data yang sering digunakan bersama PHP adalah

MySQl. namun PHP juga mendukung sistem manajement database Oracle, Microsoft Access,Interbase, d-base, PostgreSQL, dan sebagainya P P : Perl, bahasa pemrograman. Mengenal bagian XAMPP yang biasa digunakan pada umumnya htdoc adalah folder tempat meletakkan berkas-berkas yang akan dijalankan, seperti berkas PHP, HTML dan skrip lain. phpMyAdmin merupakan bagian untuk mengelola basis data MySQL yang ada dikomputer. Untuk membukanya, buka browser lalu ketikkan alamat http://localhost/phpMyAdmin, maka akan muncul halaman phpMyAdmin. Kontrol Panel yang berfungsi untuk mengelola layanan (service) XAMPP. Seperti menghentikan (stop) layanan, ataupun memulai (start).

INNODB
Dalam database Referential Integrity diperlukan untuk memastikan bahwa data yang kita masukkan didalam tabel anak yang beralasi foreign key dengan tabel induk benar-benar ada didalam tabel induk. Di MySQL kita dikenal ada beberapa jenis engine yang bisa digunakan sesuai kebutuhan kita dan masingmasing engine memiliki kelebihan dan kekurangan sendiri-sendiri. InnoDB adalah salah satu mesin(engine) di MySQL yang mulai muncul di versi 3.23.29. Dengan InnoDB kita bisa menerapkan Foreign key dan referential integrity, termasuk juga cascaded delete dan update yang tidak bisa dilakukan di engine MyISAM (mesin default nya). Untuk dapat menggunakan mesin InnoDB, pastikan dahulu bahwa mesin InnoDB di MySQL Anda tersupport dan tidak dalam keadaan DISABLED. Untuk mengetahui mesin apa saja yang disupport oleh MySQL Anda, lakukan perintah di bawah ini: mysql> SHOW ENGINES; ++-++ | Engine | Support | Comment ++-++ | MyISAM | InnoDB | BerkeleyDB . ++++ | DEFAULT | Default engine as of MySQL 3.23 with great performance

| DISABLED | Supports transactions, row-level locking, and foreign keys | NO | Supports transactions and page-level locking

12 rows in set (0.00 sec)

Dari hasil perintah show engines, kita dapat mengetahui mesin mana yang disupport oleh database MySQL kita. Pada hasil di atas, mesin InnoDB dalam keadaan DISABLED yang artinya, mesin InnoDB disupport tapi dalam keadaan DISABLED. Untuk dapat menggunakannya kita harus men-enable terlebih dahulu. Untuk meng-enable mesin InnoDB, lakukan tahap-tahap berikut(saya menggunakan MySQL 5.0.51b-community-nt-log MySQL Community Edition (GPL) bawaan sewaktu menginstall AppServ v2.5.10): Buka file my.ini yang terdapat dalam folder instalasi MySQL (C:AppServMySQL di tempat saya). Cari baris yang berisi skip-innodb (di tempat saya pada line 183) Tambahkan tanda sharp (#) di depan skip-innodb -> #skip-innodb tanda # digunakan untuk mendisable baris tersebut sehingga tidak dieksekusi. Simpan file my.ini Restart service MySQL Anda. Setelah Anda melakukan restart service MySQL, jalankan lagi perintah show engines pada command promt. mysql> SHOW ENGINES; ++-++ | Engine | InnoDB | BerkeleyDB ++++ 12 rows in set (0.00 sec) Mesin InnoDB sudah siap digunakan! Sebagai percobaan, kita dapat melakukan: | YES | NO | Supports transactions, row-level locking, and foreign keys | Supports transactions and page-level locking | Support | Comment ++-++

C:>mysql -u root -pdaniel Welcome to the MySQL monitor. Commands end with ; or g. Your MySQL connection id is 4 Server version: 5.0.51b-community-nt-log MySQL Community Edition (GPL) Type help; or h for help. Type c to clear the buffer. mysql> CREATE DATABASE coba; Query OK, 1 row affected (0.02 sec) mysql> USE coba Database changed mysql> CREATE TABLE induk ( -> i_id INT NOT NULL, -> PRIMARY KEY(i_id) -> ) ENGINE = INNODB; Query OK, 0 rows affected (0.00 sec) mysql> CREATE TABLE anak ( -> i_id INT NOT NULL, -> a_id INT NOT NULL, -> PRIMARY KEY (i_id, a_id), -> FOREIGN KEY (i_id) REFERENCES induk (i_id) -> ON DELETE CASCADE -> ON UPDATE CASCADE -> ) ENGINE = INNODB; Query OK, 0 rows affected (0.02 sec) mysql> INSERT INTO induk(i_id) VALUES (1),(2); Query OK, 2 rows affected (0.00 sec) Records: 2 Duplicates: 0 Warnings: 0 mysql> SELECT * FROM induk; ++ | i_id ++ | 1 | |

++ 2 rows in set (0.00 sec) mysql> INSERT INTO anak(i_id,a_id) VALUES (1,1),(1,2); Query OK, 2 rows affected (0.02 sec) Records: 2 Duplicates: 0 Warnings: 0 mysql> INSERT INTO anak(i_id,a_id) VALUES (2,1),(2,2); Query OK, 2 rows affected (0.00 sec) Records: 2 Duplicates: 0 Warnings: 0 mysql> SELECT * FROM anak; +++ | i_id | a_id | +++ | | | | 1| 1| 2| 2| 1| 2| 1| 2|

+++ 4 rows in set (0.00 sec) mysql> INSERT INTO anak(i_id,a_id) VALUES (3,1),(3,2); ERROR 1452 (23000): Cannot add or update a child row: a foreign key constraint fails (`coba/anak`, CONSTRAINT `anak_ibfk_1` FOREIGN KEY (`i_id`) REFERENCES `induk` (`i_id`) ON DELETE CASCADE ON UPDATE CASCADE)

mysql> SELECT * FROM anak; +++ | i_id | a_id | +++ | | | | 1 1 2 2 | | | | 1 2 1 2 | | | |

+++ 4 rows in set (0.00 sec)

HEAP
Heap adalah sebuah binary tree dengan ketentuan sebagai berikut : Tree harus complete binary tree Semua level tree mempunyai simpul maksimum kecuali pada level terakhir. Pada level terakhir, node tersusun dari kiri ke kanan tanpa ada yang dilewati.

Perbandingan nilai suatu node dengan nilai node child-nya mempunyai ketentuan berdasarkan jenis heap, diantaranya : Max Heap mempunyai ketentuan bahwa nilai suatu node lebih besar atau samadengan ( >= ) dari nilai childnya. Min Heap mempunyai ketentuan bahwa nilai suatu node lebih kecil atau samadengan ( <= ) dari nilai childnya. Contoh penggunaan heap adalah pada persoalan yang mempertahankan antrian prioritas (priority queue). Dalam antrian prioritas, elemen yang dihapus adalah elemen yang mempunyai prioritas terbesar (atau terkecil, tergantung keperluan), dan elemen inilah yang selalu terletak di akar (root). Suatu heap dapat sewaktu-waktu berubah baik itu penambahan elemen (insert) dan penghapusan elemen (delete). Ada beberapa operasi yang dapat terjadi di sebuah heap, yaitu : 1. Reorganisasi Heap (mengatur ulang heap). 2. Membantuk Heap (mengatur binary tree agar menjadi heap) 3. Penyisipan Heap (menyisipkan node baru) 4. Penghapusan Heap (menghapus node root) 5. Pengurutan Heap (Heap sort)

You might also like