Rabu, 05 Oktober 2011

Locking Record MYSQL

I. Melock record Untuk menghindari tabrakan (crash) update/delete Oleh dua User atau lebih
pada waktu yg bersamaan :

Pada kasus berikut, misalkan user A akan melakukan update terhadap tabel "tmp.my_locking" dengan "filter tbl_id = 1".
Sementara pada waktu yg bersamaan, user B juga akan melakukan update atau delete terhadap data yg sama.
Agar tidak terjadi "crash"

User A:
-------

begin;
select * from tmp.my_locking where tbl_id =1 for update;
update tmp.my_locking set kode="update user oleh A" where tbl_id =1;
...
...
commit;


User B:
-------
update tmp.my_locking set kode="update user oleh B" where tbl_id =1;


Maka yg terjadi adalah, user B akan ter "LOCK" selama user A belum menjalankan "Commit".
Setelah user A commit, baru selanjutnya perintah query user B di eksekusi.




II. Melock record Untuk menghindari update/delete Oleh User lain
pada saat salah satu user sedang mengakses record :


Pada kasus berikut, misalkan user A melihat data tabel "tmp.my_locking", misalkan berupa repot .
Sementara pada waktu yg bersamaan, user B juga akan melakukan update atau delete terhadap salah satu data atau lebih
yg merupakan data yg sedang di lihat oleh user A.


User A:
-------

begin;
select * from tmp.my_locking lock in share mode;

...
...
commit;


User B:
-------
delete from tmp.my_locking where tbl_id =14;



Maka yg terjadi adalah, user B akan ter "LOCK" selama user A belum menjalankan "Commit".
Setelah user A commit, baru selanjutnya perintah query user B di eksekusi.

Jumat, 22 April 2011

Apache Ant

Problem :
  • Pada saat melakukan compile ant aplikasi web java, muncul = warning: 'includeantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable build.
Solusi :
  • Pada Environment Variables, tambahkan variabel baru dengan nama "ANT_OPTS", nilainya : -Dbuild.sysclasspath=ignore, OK.

Apache Ant Warning

Jumat, 25 Februari 2011

Import & Export Data MySQL Text File

Berikut contoh eksport data hasil query kedalam file, dalam kasus ini asumsi ada sebuah tabel "mst_user" dengan beberapa field dan hasil dari query akan disimpan kedalam file "mst_user.txt" pada drive "D:\" :

SELECT * FROM master.mst_user INTO OUTFILE 'D:/
mst_user.txt'
FIELDS
TERMINATED BY '\$'
LINES
TERMINATED BY '\n';


sebaliknya untuk mengimport data dari file text ke MySQL adalah seperti berikut :

LOAD DATA LOCAL INFILE '
D:/mst_user.txt' INTO TABLE master.mst_user
FIELDS
TERMINATED BY '\$'
LINES
TERMINATED BY '\n';



Semoga bermanfaat,
salam sejahtera.