Seri Belajar Open Source Cara Copas (BOSCA) : Install MySQL Cluster (tanpa root)

Belum lama ini Oracle telah merilis versi terbaru dari MySQL Cluster, yaitu versi 7.2.x. Ada banyak kelebihan versi terbaru ini, namun yang paling signifikan adalah kemampuannya untuk menyimpan database di disk.

Ya, dulu MySQL Cluster hanya bisa menyimpan data di memory.
Memang ini jadi meningkatkan performa, namun di lain sisi, otomatis jadi sangat beresiko. Jika server mati mendadak, maka seluruh data akan lenyap.

MySQL Cluster versi 7.2.x sudah tidak memiliki limitasi ini lagi. Ditambah dengan berbagai enhancements lainnya, maka saya bisa merekomendasikan versi ini sebagai awal yang baik untuk mulai belajar / menggunakan MySQL Cluster.

Panduan ini akan memungkinkan Anda untuk memasang MySQL Cluster tanpa memerlukan user root. Ini berarti bahwa Anda jadi bisa untuk memasang bahkan banyak MySQL Cluster di satu komputer.
Ini akan sangat berguna misalnya untuk melakukan riset / ujicoba.

Seri BOSCA = Belajar Open Source Cara copAs (copy-paste) :: artikel ini saya tuliskan sedemikian rupa, sehingga Anda tinggal copas / copy-paste saja ke Terminal / Console.
Sehingga hasilnya langsung bisa dinikmati.

Saya percaya bahwa learning by doing adalah cara belajar yang terbaik. Pengetahuan & pemahaman akan otomatis didapatkan dengan langsung praktek / melakukan.
Seri artikel BOSCA bertujuan untuk membantu Anda agar dapat segera mulai melakukan praktek, dengan usaha yang seminimal mungkin.

Selamat menikmati :

### perlu install library AIO (Asynchronous I/O) di beberapa distro
sudo apt-get install libaio1

mkdir $HOME/mysql-cluster
cd  $HOME/mysql-cluster

### Download dari http://www.mysql.com/downloads/cluster/
### Pilih "Linux - Generic 2.6 (x86, 64-bit), Compressed TAR Archive"
wget -c http://mysql.ntu.edu.tw/Downloads/MySQL-Cluster-7.2/mysql-cluster-gpl-7.2.5-linux2.6-x86_64.tar.gz

tar xzvf mysql-cluster-gpl-7.2.5-linux2.6-x86_64.tar.gz

ln -s mysql-cluster-gpl-7.2.5-linux2.6-x86_64 mysqlc
mkdir my_cluster my_cluster/ndb_data my_cluster/mysqld_data my_cluster/conf

### buat beberapa direktori untuk file PID, socket, dan log
mkdir $HOME/mysql-cluster/mysqlc/var
mkdir $HOME/mysql-cluster/mysqlc/var/log
mkdir $HOME/mysql-cluster/mysqlc/var/run
chown -R $USER:$USER $HOME/mysql-cluster/mysqlc/var

########## membuat file-file konfigurasi
### buat file $HOME/mysql-cluster/my_cluster/conf/my.cnf
echo "[mysqld]" >> $HOME/mysql-cluster/my_cluster/conf/my.cnf
echo "ndbcluster" >> $HOME/mysql-cluster/my_cluster/conf/my.cnf
echo "datadir=$HOME/mysql-cluster/my_cluster/mysqld_data" >> $HOME/mysql-cluster/my_cluster/conf/my.cnf
echo "basedir=$HOME/mysql-cluster/mysqlc" >> $HOME/mysql-cluster/my_cluster/conf/my.cnf
echo "port=5000" >> $HOME/mysql-cluster/my_cluster/conf/my.cnf

### buat file $HOME/mysql-cluster/my_cluster/conf/config.ini
echo "[ndb_mgmd]" >> $HOME/mysql-cluster/my_cluster/conf/config.ini
echo "hostname=localhost" >> $HOME/mysql-cluster/my_cluster/conf/config.ini
echo "datadir=$HOME/mysql-cluster/my_cluster/ndb_data" >> $HOME/mysql-cluster/my_cluster/conf/config.ini
echo "NodeId=1" >> $HOME/mysql-cluster/my_cluster/conf/config.ini
echo "[ndbd default]" >> $HOME/mysql-cluster/my_cluster/conf/config.ini
echo "noofreplicas=2" >> $HOME/mysql-cluster/my_cluster/conf/config.ini
echo "datadir=$HOME/mysql-cluster/my_cluster/ndb_data" >> $HOME/mysql-cluster/my_cluster/conf/config.ini
echo "[ndbd]" >> $HOME/mysql-cluster/my_cluster/conf/config.ini
echo "hostname=localhost" >> $HOME/mysql-cluster/my_cluster/conf/config.ini
echo "NodeId=3" >> $HOME/mysql-cluster/my_cluster/conf/config.ini
echo "[ndbd]" >> $HOME/mysql-cluster/my_cluster/conf/config.ini
echo "hostname=localhost" >> $HOME/mysql-cluster/my_cluster/conf/config.ini
echo "NodeId=4" >> $HOME/mysql-cluster/my_cluster/conf/config.ini
echo "[mysqld]" >> $HOME/mysql-cluster/my_cluster/conf/config.ini
echo "NodeId=50" >> $HOME/mysql-cluster/my_cluster/conf/config.ini


################ inisialisasi
### Inisialisasi database
cd $HOME/mysql-cluster/mysqlc
$HOME/mysql-cluster/mysqlc/scripts/mysql_install_db --no-defaults --datadir=$HOME/mysql-cluster/my_cluster/mysqld_data/

### menjalankan MySQL Cluster untuk pertama kali
cd ../my_cluster/
$HOME/mysql-cluster/mysqlc/bin/ndb_mgmd -f $HOME/mysql-cluster/my_cluster/conf/config.ini --initial --configdir=$HOME/mysql-cluster/my_cluster/conf/

$HOME/mysql-cluster/mysqlc/bin/ndbd -c localhost:1186
$HOME/mysql-cluster/mysqlc/bin/ndbd -c localhost:1186

$HOME/mysql-cluster/mysqlc/bin/mysqld --defaults-file=$HOME/mysql-cluster/my_cluster/conf/my.cnf --socket=$HOME/mysql-cluster/mysqlc/var/run/mysql.sock --pid-file=$HOME/mysql-cluster/mysqlc/var/run/mysql.pid&


### tunggu sekitar 30 detik, MySQL CLuster sedang launch
### lalu kita bisa cek statusnya :
$HOME/mysql-cluster/mysqlc/bin/ndb_mgm -e show

### terlampir cara untuk membuat table dengan engine NDB / MySQL Cluster
$HOME/mysql-cluster/mysqlc/bin/mysql -h 127.0.0.1 -P 5000 -u root
####### perintah-perintah berikut ini di copy-paste di prompt mysql> #########
create database clusterdb;use clusterdb;
create table simples (id int not null primary key) engine=ndb;
insert into simples values (1),(2),(3),(4);
select * from simples;
exit


### shutdown
$HOME/mysql-cluster/mysqlc/bin/mysqladmin -u root -h 127.0.0.1 -P 5000 shutdown
$HOME/mysql-cluster/mysqlc/bin/ndb_mgm -e shutdown


### buat script startup
echo '#!/bin/bash' >> $HOME/mysql-cluster/startup-cluster.sh
echo "$HOME/mysql-cluster/mysqlc/bin/ndb_mgmd -f $HOME/mysql-cluster/my_cluster/conf/config.ini --initial --configdir=$HOME/mysql-cluster/my_cluster/conf/" >> $HOME/mysql-cluster/startup-cluster.sh

echo "$HOME/mysql-cluster/mysqlc/bin/ndbd -c localhost:1186" >> $HOME/mysql-cluster/startup-cluster.sh
echo "$HOME/mysql-cluster/mysqlc/bin/ndbd -c localhost:1186" >> $HOME/mysql-cluster/startup-cluster.sh

echo "$HOME/mysql-cluster/mysqlc/bin/mysqld --defaults-file=$HOME/mysql-cluster/my_cluster/conf/my.cnf --socket=$HOME/mysql-cluster/mysqlc/var/run/mysql.sock --pid-file=$HOME/mysql-cluster/mysqlc/var/run/mysql.pid&" >> $HOME/mysql-cluster/startup-cluster.sh

chmod 755 $HOME/mysql-cluster/startup-cluster.sh


### buat script shutdown
echo '#!/bin/bash' >> $HOME/mysql-cluster/shutdown-cluster.sh
echo "$HOME/mysql-cluster/mysqlc/bin/mysqladmin -u root -h 127.0.0.1 -P 5000 shutdown" >> $HOME/mysql-cluster/shutdown-cluster.sh
echo "$HOME/mysql-cluster/mysqlc/bin/ndb_mgm -e shutdown" >> $HOME/mysql-cluster/shutdown-cluster.sh
chmod 755  $HOME/mysql-cluster/shutdown-cluster.sh


### untuk startup / shutdown MySQL Cluster, cukup ketik :
$HOME/mysql-cluster/startup-cluster.sh
$HOME/mysql-cluster/shutdown-cluster.sh


### Enjoy !

125 thoughts on “Seri Belajar Open Source Cara Copas (BOSCA) : Install MySQL Cluster (tanpa root)

  1. Terimakasih Infonya
    artikel yang bagus,
    sangat bermanfaat..
    Perkenalkan saya mahasiswa Hukum di UII Yogyakarta
    twitter : @profiluii 🙂

  2. Really it is exceptional to acquire a strong knowledgeable man with with whom you’ll have quite a few initiative. On this planet currently, no person definitely has feelings for you related to expressing some others the best way during this intended theme. The best way giving I will be to acquire currently identified by far the most fantastic blog while this kind of. It truly is people today for instance everyone who seem to complete a true variance currently over the techniques some people look at.

  3. Artikel menarik, saya masih awam entang MySQL Cluster
    Perlu lebih banyak belajar lagi
    Dikesempatan berikutnya, mudah2an bisa lebih mengerti dan memahami.
    Terima kasih atas sharingnya 🙂

  4. It truly is people today for instance everyone who seem to complete a true variance currently over the techniques some people look at.

  5. makin ga ngerti 😀 masih banyak yang harus dipelajari nih 🙂 thanks pak sufehmi atas ilmunya.

  6. saya sendiri masih sangat susah dalam memahami, tapi saya akan coba pelan-pelan makasih infonya gan

  7. Awesome! It truly is people today for instance everyone who seem to complete a true variance currently over the techniques some people look at.

  8. Wish I had found this blog before. The advices in this post are very helpful and I surely will read the other posts of this series too. Thank you for posting this

  9. setelah saya berkeliling di blog agan ini ternyata kebanyakan artikel tentang mySQL ya, pas banget buat saya yang lagi belajar mySQL .. 🙂

  10. wah, keren, open source, dulu sempet bisa gabungin ubuntu dengan backtrack denga slackware, mantep banget

  11. wuah ternyata pengetahuan lebih dalam mengenai mysql sangat banyak yah, mudah2an blog ini terus update dan ada tutorial2t ttg mysql ini 🙂

  12. waduh dah d baca ber ulang” masih aja tetap gak ngerti gan..
    malah tambah pusing
    bookmark dulu lah.
    tnggu otak dah fresh baru baca lagi

  13. wah ….tulisannya keren-keren sob ….saya bookmark dulu url nya ya?? buat langganan artikel….hehehe

  14. Wah mantap nih gan, berhubung ane masih newbie jadi puyeng liat kode – kodennya, maklum masih belajar nih gan…

  15. mysql? terus terang saja ane belum ngerti? ingin juga sih belajar linux biar tdk trgantunng dgn os windows dan lebih aman dari serangan virus.
    Makasih Gan atas infonya 🙂

  16. Terima Kasih Atas Sharing dan Ilmunya, Bermanfaat Sekali Untuk Saya. Sangat Membantu. Salam Kenal, Jangan Lupa Berkunjung Juga Di Blog Saya

  17. Thanks for this interesting article!
    Long sought something useful on the subject …
    Sincerely, Aleksey Martjushov

  18. saya nga ngerti nih kk
    di kelas VB aja nyontek 😛

    cuma kadang nyesel juga, klw lagi kepept
    mksudnya, kaya kemarin mau coba buat form php,,,hadeh padahal jamanya sekolah di pelajarin, pas butuh baru terasa nyesalnya.

    makasih inponya gan, salam NonaVenta 😀

  19. coba belajar memahami dulu sob,,,kalo dilihat gini jd ribet n susah,,,mungkin kalo sambil dipraktekkan bisa jadi mudah sob,,,semoga saja bisa…

  20. makasih ya gan atas info yg sangat bermanfaat ini, keep posting ya gan

    Salam hangat
    Ceo konkoow
    Irpan

  21. setelah di baca saya makin pusing 7 keliling.. tp kalau saya coba pasti bisa. terima kasih infonya.. medanstar.com

  22. Siapa yang tidak kenal dengan Clixsense?
    Sebuah PTC No Scam yang sangat direkomndasikan.
    Saya yakin Anda semua sudah mengetahuinya..
    Tapi bagi Anda yang ingin mengetahui lebih jelas apa itu Clixsense?
    Atau bagi Anda yang ingin mengetahui lebih dalam mengenai Clixsense..
    Silahkan ke http://www.panduanclixsense.blogspot.com/
    Sebuah blog sederhana yang semoga bermanfaat

Leave a Reply

Your email address will not be published. Required fields are marked *