Untuk setup yang benar Anda akan perlu 3 pc. PC pertama akan berfungsi sebagai manajemen node(ndb_mgm), dan dua lainnya sebagai node penyimpanan(storage node).
clustering mysql ini saya install di ubuntu 9.10 dan untuk versi mysqlnya saya gunkan mysql-server 5.0.51, kenapa saya tidak menggunakan latest version dr mysql? jawabannya, karena di sql 5.1xxx tidak terdapat file2 konfigurasi untuk menjalankan clustering, jadi agak repot untuk install lagi tambahan clusteringnya..he..he
seperti biasa biar g capek ngetik sudo, cukup 1x saja ketikkan :
haryo@haryo-server:~$ sudo su -
Install mysql
haryo@haryo-server:~$ apt-get mysql-server-5.0setelah itu setting password mysql sesuai kebutuhan anda
Konfigurasi Management Node
Buat dan edit the file /etc/mysql/ndb_mgmd.cnf. Copy dan paste text di bawah ini ganti ip address sesuai kebutuhan anda :D.[NDBD DEFAULT]
NoOfReplicas=2
DataMemory=80M # besar kapasitas memory yg di alokasikan untuk penyimpanan data
IndexMemory=18M # besar kapasitas memory yg di alokasikan untuk index penyimpanan
# For DataMemory and IndexMemory, we have used the
# default values. Since the "world" database takes up
# only about 500KB, this should be more than enough for
# this example Cluster setup.
[MYSQLD DEFAULT]
[NDB_MGMD DEFAULT]
[TCP DEFAULT]
# Section untuk cluster management node
[NDB_MGMD]
# IP address dari management node (system ini)
HostName=192.168.1.5
# Section untuk storage nodes
[NDBD]
# IP address untuk storage node ke-1
HostName=192.168.1.6
DataDir=/var/lib/mysql-cluster
BackupDataDir=/var/lib/mysql-cluster/backup
DataMemory=512M
[NDBD]
# IP address untuk storage node ke-2
HostName=192.168.1.7
DataDir=/var/lib/mysql-cluster
BackupDataDir=/var/lib/mysql-cluster/backup
DataMemory=512M
# one [MYSQLD] per storage node
[MYSQLD]
[MYSQLD]
Konfigurasi Storage Node
Seperti yang dapat Anda lihat di file yang telah kita buat di langkah sebelumnya, cluster akan menggunakan /var/lib/ mysql-cluster pada Storage Node. Direktori ini dibuat ketika Anda menginstal server MySQL tetapi kepemilikan file dimiliki oleh root. Kita ingin membuat direktori backup dan mengubah kepemilikan file ke mysql.haryo@haryo-server:~$ mkdir /var/lib/mysql-cluster/backupSekarang kita akan konfigurasi mysql agar dapat menghubungkan(dapat berkomunikasi) antara storage node dan management node
haryo@haryo-server:~$ chown -R mysql:mysql /var/lib/mysql-cluster
Edit /etc/mysql/my.cnf
cari [mysqld] dan [MYSQL_CLUSTER kemudian tambahkan isi file berikut:
[mysqld]Lakukan hal yang sama pada storage node yang kedua
ndbcluster
# masukkin IP address management node
ndb-connectstring=192.168.1.5
[MYSQL_CLUSTER]
ndb-connectstring=192.168.1.5
Start Management Node
lakukan dengan perintah:haryo@haryo-server:~$ /etc/init.d/mysql-ndb-mgm restartsetelah itu ketikkan ndb_mgm. dilanjutkan dengan show; anda akan
melihat
ndb_mgm> show;
Connected to Management Server at: localhost:1186
Cluster Configuration
---------------------
[ndbd(NDB)] 2 node(s)
id=2 (not connected, accepting connect from 192.168.1.6)
id=3 (not connected, accepting connect from 192.168.1.7)
[ndb_mgmd(MGM)] 1 node(s)
id=1 @192.168.1.5 (Version: 5.0.51)
[mysqld(API)] 2 node(s)
id=4 (not connected, accepting connect from any host)
id=5 (not connected, accepting connect from any host)
loh koq g connect? sabar mas, butuh proses,
si manajemen node masih menunggu koneksi dari storage node
(data node), kita harus restart dulu data nodenya
Start Data Node
haryo@haryo-server:~$ /etc/init.d/mysql restartSekarang coba liat manajemen terus liat lagi koneksinya
haryo@haryo-server:~$ /etc/init.d/mysql-ndb restart
id=2 @192.168.1.6 (Version: 5.0.51, starting, Nodegroup: 0)
id=3 @192.168.1.7 (Version: 5.0.51, starting, Nodegroup: 0)
Once they have started properly, the show command should display
ndb_mgm> show;Tu kan konek.. selamat yach udah conect, tapi tetap hrs d testing dulu :D
Cluster Configuration
---------------------
[ndbd(NDB)] 2 node(s)
id=2 @192.168.1.6 (Version: 5.0.51, Nodegroup: 0, Master)
id=3 @192.168.1.7 (Version: 5.0.51, Nodegroup: 0)
[ndb_mgmd(MGM)] 1 node(s)
id=1 @192.168.1.5 (Version: 5.0.51)
[mysqld(API)] 2 node(s)
id=4 @192.168.1.7 (Version: 5.0.51)
id=5 @192.168.1.6 (Version: 5.0.51)
Testing Database Cluster
Buatlah 2 database testing di kedua data node, buat dulu sajasecara manual!!!!
haryo@haryo-server:~$ mysql -u root -pSetelah selesai,Buatlah tabel dan valuenya
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 5.0.51a-3ubuntu5.1 (Ubuntu)
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> create database clustertest;
Query OK, 1 row affected (0.00 sec)
mysql> use clustertest;Kita sudah membuat Tabel dengan 1 entri. perlu diingat untuk
Database changed
mysql> create table test (i int) engine=ndbcluster;
Query OK, 0 rows affected (0.71 sec)
mysql> insert into test values (1);
Query OK, 1 row affected (0.05 sec)
mysql> select * from test;
+------+
| i |
+------+
| 1 |
+------+
1 row in set (0.03 sec)
harus menambahkan syntax engine=ndbcluster ketika membuat tabel
untuk menandai bahwa tabel ini akan di cluster oleh MySql.
nah sekarang kita check di data node ke-2 apakh data ikut berubah atw tidak??
mysql> use clustertest;Anda dapat melihat kalau data di node ke-2
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
mysql> show tables;
+-----------------------+
| Tables_in_clustertest |
+-----------------------+
| test |
+-----------------------+
1 row in set (0.01 sec)
mysql> select * from test;
+------+
| i |
+------+
| 1 |
+------+
1 row in set (0.04 sec)
sudah ada(terupdate seperti node ke-1)ini menandakan kalau
cluster anda sudah berhasil :D
Merubah Database yang sudah ada ke mode cluster
Anda dapat merubah ke mode cluster database yang telahanda buat dengan menggunakan disalah satu node
alter table table_anda engine=ndbcluster;Maka node yang lain akan ikut terupdate, mudah bukan? selamat mencoba :D
1 komentar:
salam kenal mas broo..
saya udah coba,tapi gagal pada ndb_mgmd> show...setelah mengetik perintah tersebut,ubuntu saya minta install mysql-cluster-server.5.1 dan mysql-server.5.0....saya makai ubuntu 10.04..
mohon pencerahanya mas brow..
Posting Komentar