menembus batas impian

Archive for Juli, 2013

Installing Wine 1.6 in RHEL, CentOS and Fedora


Step 1: Installing Dependency Packages

We need to install ‘Development Tools‘ with some core development tools such gcc, flex, bison, debuggers etc. these software’s are must required to compile and build new packages, install them using YUM command.

# yum -y groupinstall ‘Development Tools’
# yum -y install libX11-devel freetype-devel

Step 2: Downloading Wine 1.6

Download the source file using Wget command under /tmp directory as a normal User.

$ cd /tmp
$ wget http://garr.dl.sourceforge.net/project/wine/Source/wine-1.6.tar.bz2

Step 3: Extracting Wine 6

Once the file is downloaded under /tmp directory, use the below commands to extract it.

$ tar -xvf wine-1.6.tar.bz2 -C /tmp/

Step 4: Installing Wine 1.6

It is recommended to compile and build Wine installer as a normal User. Run the following commands as normal user. (Note : The installer might take up-to 20-30 minutes and in the middle it will ask you to enter root password).
On 32-Bit Systems

$ cd wine-1.6/
$ ./tools/wineinstall

On 64-Bit Systems

$ ./configure –enable-win64
$ make
# make install

Once the installation completes run the “winecfg” configuration tool from KDE or GNOME desktop to see the supported configuration. If you don’t have any of the desktop, you can install it by using the below command as root user.

# yum groupinstall “X Window System” “GNOME Desktop Environment”
OR
# yum groupinstall “X Window System” “KDE (K Desktop Environment)”

Once the X Window System installed, run the command as normal user to see wine configuration.

$ winecfg

http://www.tecmint.com/install-wine-in-rhel-centos-and-fedora/

Iklan

Mengapa MySQL bisa lambat dengan tabel besar?


Jika Anda sudah membaca cukup forum yang terkait database milis atau blog Anda mungkin pernah mendengar mengeluh tentang MySQL tidak mampu menangani lebih dari 1.000.000 (atau pilih nomor lain) baris oleh beberapa pengguna. Di sisi lain hal ini juga diketahui dengan pelanggan seperti Google, Yahoo, LiveJournal, Technocarati MySQL memiliki instalasi dengan banyak miliaran baris dan memberikan performa yang hebat. Apa yang bisa menjadi alasan? Alasannya biasanya desain meja dan memahami karya batin MySQL. Jika Anda merancang data Anda dengan bijaksana mempertimbangkan apa MySQL dapat lakukan dan apa yang tidak bisa Anda akan mendapatkan kinerja besar jika tidak, Anda mungkin menjadi marah dan menjadi salah satu blogger thouse. Catatan – sistem manajemen database yang berbeda dalam beberapa hal dan apa yang bekerja dengan baik untuk Oracle, MS SQL, PostgreSQL mungkin tidak bekerja dengan baik untuk MySQL dan sebaliknya. Bahkan mesin penyimpanan memiliki perbedaan yang sangat penting yang dapat mempengaruhi kinerja secara dramatis. Tiga isu utama yang harus diperhatikan jika Anda sedang berhadapan dengan set data yang sangat besar adalah Buffer, Indeks dan Bergabung. Buffer Hal pertama yang Anda perlu mempertimbangkan adalah fakta – Situasi saat data cocok di memori dan ketika itu tidak sangat berbeda. Jika Anda mulai dari ukuran data di memori dan mengharapkan penurunan kinerja bertahap sebagai ukuran basis data tumbuh Anda mungkin akan terkejut dengan penurunan melayani dalam kinerja. Hal ini terutama apel ke lookus indeks dan bergabung yang kita membahas nanti. Seperti segala sesuatu yang biasanya memperlambat banyak sekali tidak cocok dalam memori solusi yang baik adalah untuk memastikan data Anda cocok di memori sebaik mungkin. Hal ini bisa dilakukan dengan data partisi (yaitu data lama dan jarang diakses disimpan dalam server yang berbeda), multi-server partisi menggunakan gabungan memori dan banyak lainnya teknik yang harus saya menutupi pada beberapa waktu kemudian. Jadi, Anda mengerti berapa banyak memiliki data dalam memori mengubah hal-hal di sini adalah contoh kecil dengan angka. Jika Anda memiliki data Anda sepenuhnya dalam memori Anda bisa melakukan lebih dari 300.000 dari pencarian acak per detik dari thread tunggal tergantung pada sistem dan struktur tabel. Sekarang jika Anda Data sepenuhnya pada disk (baik data dan indeks), Anda akan membutuhkan 2 + IOS untuk mengambil baris yang berarti Anda mendapatkan sekitar 100 baris / detik. Perhatikan beberapa drive tidak benar-benar banyak membantu karena kita berbicara tentang thread tunggal / query sini. Jadi perbedaan adalah 3.000 kali! Mungkin agak terlalu banyak karena ada beberapa beban kerja sepenuhnya uncached tapi 100 + kali perbedaan adalah cukup sering. Indeks Apa semua orang tahu tentang indeks adalah fakta bahwa mereka baik untuk mempercepat akses ke database. Beberapa orang juga akan ingat jika indeks membantu atau tidak tergantung pada indeks selektivitas – bagaimana sebagian besar baris sesuai dengan nilai indeks tertentu atau jangkauan. Apa yang sering dilupakan adalah tentang – tergantung jika beban kerja cache atau tidak selektivitas yang berbeda mungkin menunjukkan manfaat dari menggunakan indeks. Bahkan bahkan MySQL optimizer saat ini tidak memperhitungkannya. Untuk Dalam memori beban kerja akses indeks mungkin akan lebih cepat bahkan jika 50% dari baris yang diakses, sedangkan untuk IO disk terikat accessess kita mungkin lebih baik melakukan meja penuh memindai meskipun hanya beberapa persen atau baris yang diakses. Mari kita melakukan beberapa perhitungan lagi. Pertimbangkan tabel yang memiliki 100 baris byte. Dengan SCSI drive yang layak kita bisa mendapatkan 100MB/sec kecepatan baca yang memberi kami sekitar 1.000.000 baris per detik untuk akses sepenuhnya berurutan, selai dikemas baris – skenario sangat mungkin untuk tabel MyISAM. Sekarang jika kita mengambil hard drive yang sama untuk sepenuhnya beban kerja IO terikat akan mampu menyediakan hanya 100 baris pencarian dengan indeks pr kedua. Perbedaannya adalah 10.000 kali untuk skenario kasus buruk kami. Mungkin tidak terlalu buruk dalam praktek tapi sekali lagi itu tidak sulit untuk mencapai 100 kali perbedaan. Berikut ini adalah sedikit ilustrasi saya buat meja dengan lebih dari 30 juta baris. “Val” kolom dalam tabel ini memiliki 10000 nilai yang berbeda, sehingga rentang 1 .. 100 memilih sekitar 1% dari tabel. Waktu untuk meja penuh memindai vs rentang scan dengan indeks: Tempurung mysql> select count(pad) from large; +————+ | count(pad) | +————+ | 31457280 | +————+ 1 row in set (4 min 58.63 sec) mysql> select count(pad) from large where val between 1 and 100; +————+ | count(pad) | +————+ | 314008 | +————+ 1 row in set (29 min 53.01 sec) mysql> select count (pad) dari besar; + ———— + | count (pad) | + ———— + | 31.457.280 | + – ———- + 1 baris dalam set (4 min 58.63 sec) mysql> select count (pad) dari besar mana val antara 1 dan 100; + ———— + | count (pad) | + ———— + | 314008 | + ———— + 1 row in set (29 min 53,01 detik) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 mysql> pilih count (pad) dari besar; + ———— + | count (pad) | + ———— + | 31457280 | + ———— + 1 baris dalam mengatur (4 min 58,63 sec) mysql> pilih count (pad) dari besar mana val antara 1 dan 100; + ———— + | count (pad) | + ———— + | 314.008 | + ———— + 1 baris dalam mengatur (29 min 53,01 sec) Juga ingat – tidak semua indeks diciptakan sama. Beberapa indeks dapat ditempatkan di halaman ditempatkan di tempat-tempat acak cara diurutkan atau – hal ini dapat mempengaruhi indeks scan / rentang kecepatan scan secara dramatis. Baris direferensikan oleh indeks juga bisa ditemukan secara berurutan atau memerlukan Radom IO jika rentang indeks scan. Ada juga tombol berkerumun di InnoDB yang menggabungkan akses indeks dengan akses data, menghemat IO untuk sepenuhnya beban kerja disk yang terikat. Ada optimasi tertentu dalam karya-karya yang akan meningkatkan kinerja indeks akses / index scan. Misalnya mengambil nilai indeks pertama dan kemudian mengakses baris dalam urutan diurutkan dapat banyak bantuan untuk scan besar. Hal ini akan mengurangi kesenjangan tapi aku ragu itu akan ditutup. Bergabung Bergabung digunakan untuk menyusun obyek yang kompleks yang sebelumnya dinormalisasi ke beberapa tabel atau melakukan query kompleks menemukan hubungan antara objek. Struktur normal dan banyak bergabung adalah cara yang tepat untuk merancang database Anda sebagai buku teks mengajarkan Anda … tapi ketika berhadapan dengan data besar bisa recepie bencana. Masalahnya bukan data ukuran – Data dinormalisasi biasanya menjadi lebih kecil, tapi secara dramatis meningkatkan jumlah pencarian indeks yang bisa akses acak. Masalah ini ada untuk semua jenis aplikasi, namun untuk aplikasi OLTP dengan permintaan pemeriksaan hanya beberapa baris itu adalah kurang dari masalah. Pengambilan data, pencarian, DSS, aplikasi intelijen bisnis yang perlu menganalisa banyak baris menjalankan agregat dll adalah ketika masalah ini adalah yang paling dramatis. Beberapa bergabung juga lebih baik daripada yang lain. Misalnya jika Anda memiliki bintang bergabung dengan meja dimensi yang kecil itu tidak akan memperlambat segalanya terlalu banyak. Di sisi lain bergabung dari beberapa meja besar, yang benar-benar disk yang terikat bisa sangat lambat. Salah satu alasan mengangkat masalah ini dalam MySQL adalah kurangnya canggih bergabung metode pada saat ini (pekerjaan adalah tentang cara) – MySQL tidak bisa melakukan hash bergabung atau mengurutkan merge bergabung – hanya dapat melakukan metode loop bersarang yang membutuhkan banyak lookup indeks yang mungkin acak. Berikut ini adalah contoh yang baik. Seperti yang kita lihat baris 30mil saya (12GB) tabel-scan dalam waktu kurang dari 5 menit. Sekarang jika kita akan melakukan eq join tabel untuk lain baris tabel 30mil dan akan benar-benar acak. Kita harus melakukan 30 juta baris acak membaca, yang memberi kami 300.000 detik dengan 100 baris / tingkat sec. Jadi kita akan pergi dari 5 menit untuk hampir 4 hari jika kita perlu melakukan bergabung. Beberapa orang beranggapan bergabung akan menjadi dekat dengan dua meja penuh scan (sebagai 60mil baris perlu dibaca) – ini adalah cara yang salah. Jangan mengambil saya sebagai melawan normalisasi atau bergabung. Ini adalah prinsip yang besar dan harus digunakan bila memungkinkan. Hanya jangan lupa tentang implikasi kinerja merancang sistem dan tidak mengharapkan bergabung untuk bebas. Akhirnya saya harus menyebutkan satu lagi MySQL keterbatasan yang mengharuskan Anda untuk berhati-hati bekerja ekstra dengan set data yang besar. Dalam MySQL query tunggal berjalan sebagai single thread (dengan exeption MySQL Cluster) dan MySQL isu IO permintaan satu per satu untuk eksekusi query, yang berarti jika satu waktu eksekusi query adalah kekhawatiran Anda banyak hard drive dan sejumlah besar CPU tidak akan membantu. Kadang-kadang ide yang baik untuk secara manual dibagi menjadi beberapa permintaan, berjalan secara paralel dan agregat hasil set. Jadi jika Anda sedang berhadapan dengan set data yang besar dan pertanyaan kompleks di sini adalah beberapa tips Cobalah untuk menyesuaikan data set Anda bekerja dengan dalam memori – Pengolahan dalam memori jauh lebih cepat dan Anda memiliki seluruh banyak masalah diselesaikan hanya melakukannya. Gunakan beberapa server untuk menjadi tuan rumah bagian dari kumpulan data. Toko sebagian data Anda akan bekerja dengan dalam tabel sementara dll Memilih meja penuh scan untuk akses index – Untuk data besar set meja penuh scan seringkali lebih cepat dari kisaran scan dan jenis-jenis pencarian indeks. Bahkan jika Anda melihat 1% atau baris atau scan meja penuh kurang mungkin lebih cepat. Hindari bergabung ke tabel besar Bergabung data yang besar set menggunakan loop bersarang sangat mahal. Cobalah untuk menghindari hal itu. Bergabung ke meja kecil OK tetapi Anda mungkin ingin memuatnya ke memori sebelum bergabung sehingga tidak ada IO acak diperlukan untuk mengisi cache. Dengan arsitektur aplikasi yang tepat dan desain tabel Anda dapat membangun aplikasi yang beroperasi dengan data yang sangat besar set didasarkan pada MySQL

 

http://www.mysqlperformanceblog.com/2006/06/09/why-mysql-could-be-slow-with-large-tables/

InnoDB Optimasi Kinerja Dasar


Mewawancarai orang-orang untuk kami Openings Pekerjaan saya ingin meminta mereka pertanyaan dasar – jika Anda memiliki sebuah server dengan 16GB RAM yang akan didedikasikan untuk MySQL dengan database yang besar dengan menggunakan InnoDB beban kerja Web khas pengaturan apa yang akan Anda menyesuaikan dan cukup menarik kebanyakan orang gagal datang dengan sesuatu yang wajar. Jadi saya memutuskan untuk menerbitkan jawaban yang saya ingin mendengar memperluas dengan dasar-dasar Hardware OS Dan optimasi Aplikasi.
Saya menyebutnya InnoDB ini Optimasi Kinerja Dasar jadi ini adalah panduan umum yang bekerja dengan baik untuk berbagai aplikasi, meskipun pengaturan optimal tentunya tergantung pada beban kerja.

Perangkat keras
Jika Anda memiliki database yang besar InnoDB Memory ukuran adalah yang terpenting. 16G-32G adalah nilai biaya efisien hari ini. Dari sudut pandang CPU 2 * Dual Core CPU tampaknya melakukannya dengan sangat baik, sementara bahkan dengan hanya dua Quad Core CPU masalah skalabilitas dapat diamati pada banyak beban kerja. Meskipun ini tergantung pada aplikasi banyak. Yang ketiga adalah IO Subsystem – penyimpanan langsung terpasang dengan banyak spindle dan RAID dengan baterai didukung cache taruhan yang baik. Biasanya Anda bisa mendapatkan 6-8 hard drive dalam kasus standar dan seringkali cukup, sementara kadang-kadang Anda mungkin membutuhkan lebih. Juga perhatikan baru 2,5 “SAS hard drive. Mereka kecil tetapi sering lebih cepat daripada yang lebih besar. RAID10 bekerja dengan baik untuk penyimpanan data dan untuk membaca-kebanyakan kasus ketika Anda masih ingin beberapa RAID5 redundansi dapat bekerja cukup baik juga tetapi jangan acak menulis untuk RAID5.

Sistem Operasi
Pertama – menjalankan sistem operasi 64bit. Kami masih melihat orang-orang berjalan 32bit Linux pada kotak yang mampu 64bit dengan banyak memori. Jangan lakukan ini. Jika menggunakan Linux LVM pengaturan untuk direktori database untuk mendapatkan cadangan lebih efisien. EXT3 file sistem bekerja OK dalam banyak kasus, meskipun jika Anda berjalan di hambatan tertentu dengan itu mencoba XFS. Anda dapat menggunakan opsi noatime dan nodiratime jika Anda menggunakan innodb_file_per_table dan banyak tabel meskipun Manfaat ini adalah kecil. Juga pastikan Anda bergulat OS sehingga tidak akan menukar MySQL dari memori.

MySQL Pengaturan InnoDB
Yang paling penting adalah:
innodb_buffer_pool_size 70-80% dari memori merupakan taruhan yang aman. Saya set ke 12G pada kotak 16GB.
UPDATE: Jika Anda sedang mencari rincian lebih lanjut, lihat panduan rinci tentang tala InnoDB kolam penyangga
innodb_log_file_size – Hal ini tergantung pada kebutuhan kecepatan pemulihan Anda tetapi 256M tampaknya menjadi keseimbangan yang baik antara waktu pemulihan yang wajar dan kinerja yang baik
innodb_log_buffer_size = 4M 4M baik untuk kebanyakan kasus kecuali Anda perpipaan gumpalan besar untuk InnoDB dalam kasus ini meningkatkannya sedikit.
innodb_flush_log_at_trx_commit = 2 Jika Anda tidak kekhawatiran tentang ACID dan dapat kehilangan transaksi atau dua detik terakhir dalam kasus penuh OS kecelakaan daripada menetapkan nilai ini. Hal ini dapat efek dramatis terutama pada banyak transaksi menulis pendek.
innodb_thread_concurrency = 8 Bahkan dengan saat InnoDB Perbaikan Skalabilitas memiliki konkurensi terbatas membantu. Jumlah sebenarnya mungkin lebih tinggi atau lebih rendah tergantung pada aplikasi Anda dan standar yang layak mulai 8
innodb_flush_method = O_DIRECT Hindari double buffering dan mengurangi tekanan swap, dalam banyak kasus pengaturan ini meningkatkan kinerja. Meskipun hati-hati jika Anda tidak memiliki baterai didukung Cache RAID seperti ketika menulis IO mungkin menderita.
innodb_file_per_table – Jika Anda tidak memiliki terlalu banyak tabel menggunakan pilihan ini, sehingga Anda tidak akan memiliki terkendali InnoDB tablespace pertumbuhan utama yang Anda tidak dapat kembali. Pilihan ini telah ditambahkan di MySQL 4.1 dan sekarang cukup stabil untuk digunakan.

Juga memeriksa apakah aplikasi Anda dapat berjalan dalam modus isolasi BACA-commited – jika tidak – set menjadi default transaksi isolasi = BACA-BERTEKAD. Opsi ini memiliki beberapa manfaat kinerja, terutama dalam mengunci 5.0 dan bahkan lebih untuk datang dengan MySQL 5.1 dan replikasi tingkat baris.

Ada banyak pilihan lain yang mungkin ingin menyetel tapi mari kita fokus hanya pada yang InnoDB hari. Anda dapat memeriksa tentang menyetel opsi lain di sini atau membaca salah satu dari kami Presentasi MySQL .

Aplikasi tuning untuk InnoDB
Terutama ketika datang dari latar belakang MyISAM akan ada beberapa perubahan yang Anda ingin lakukan dengan aplikasi Anda. Pertama pastikan Anda menggunakan transaksi ketika melakukan update, baik demi konsistensi dan untuk mendapatkan kinerja yang lebih baik. Selanjutnya jika aplikasi Anda memiliki apapun menulis bersiaplah untuk menangani deadlock yang mungkin terjadi. Ketiga Anda ingin meninjau struktur meja Anda dan melihat bagaimana Anda bisa mendapatkan keuntungan dari sifat InnoDB – pengelompokan berdasarkan primary key, memiliki kunci utama dalam semua indeks (sehingga tetap primary key pendek), pencarian cepat dengan kunci primer (mencoba untuk menggunakannya dalam bergabung), indeks membongkar besar (coba yang mudah pada indeks).

Dengan laras kinerja InnoDB dasar Anda akan lebih baik ketika mayoritas pengguna InnoDB yang mengambil MySQL dengan standar menjalankannya pada hardware tanpa baterai didukung cache yang tanpa perubahan OS dan tidak memiliki perubahan yang dilakukan pada aplikasi yang ditulis dengan tabel MyISAM dalam pikiran.

http://www.mysqlperformanceblog.com/2007/11/01/innodb-performance-optimization-basics/

Menentukan hari pasaran dr sebuah tanggal


/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/

/*
* pasaran.java
*
* Created on Jul 20, 2013, 5:39:16 PM
*/
package sikeysa.form;

import java.util.Calendar;
import java.util.Date;
import javax.swing.JOptionPane;
import javax.swing.event.ListSelectionEvent;
import javax.swing.event.ListSelectionListener;
import java.text.DateFormat;
import java.text.DecimalFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.logging.Level;
import java.util.logging.Logger;

/**
*
* @author nk
*/
public class pasaran extends javax.swing.JInternalFrame {
// private Object df;

/** Creates new form pasaran */
public pasaran() {
initComponents();tgl1.setText(“2013-01-01”);
}

/** This method is called from within the constructor to
* initialize the form.
* WARNING: Do NOT modify this code. The content of this method is
* always regenerated by the Form Editor.
*/
@SuppressWarnings(“unchecked”)
//
private void initComponents() {

tgl2 = new javax.swing.JFormattedTextField();
jButton1 = new javax.swing.JButton();
tgl1 = new javax.swing.JFormattedTextField();
tgl3 = new javax.swing.JFormattedTextField();
fmodal = new formattedfields.FormattedDoubleField();
jLabel1 = new javax.swing.JLabel();

setName(“Form”); // NOI18N

tgl2.setFormatterFactory(new javax.swing.text.DefaultFormatterFactory(new javax.swing.text.DateFormatter(new java.text.SimpleDateFormat(“yyyy-MM-dd”))));
tgl2.setName(“tgl2”); // NOI18N
tgl2.setValue(new java.util.Date());

jButton1.setName(“jButton1”); // NOI18N
jButton1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton1ActionPerformed(evt);
}
});

tgl1.setFormatterFactory(new javax.swing.text.DefaultFormatterFactory(new javax.swing.text.DateFormatter(new java.text.SimpleDateFormat(“yyyy-MM-dd”))));
tgl1.setEnabled(false);
tgl1.setName(“tgl1”); // NOI18N
tgl1.setValue(new java.util.Date());
tgl1.addKeyListener(new java.awt.event.KeyAdapter() {
public void keyPressed(java.awt.event.KeyEvent evt) {
tgl1KeyPressed(evt);
}
});

tgl3.setEnabled(false);
tgl3.setName(“tgl3”); // NOI18N
tgl3.setValue(new java.util.Date());

fmodal.setEnabled(false);
fmodal.setName(“fmodal”); // NOI18N
fmodal.addKeyListener(new java.awt.event.KeyAdapter() {
public void keyPressed(java.awt.event.KeyEvent evt) {
fmodalKeyPressed(evt);
}
});

jLabel1.setName(“jLabel1”); // NOI18N

javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(142, 142, 142)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addComponent(jButton1, javax.swing.GroupLayout.PREFERRED_SIZE, 117, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 83, javax.swing.GroupLayout.PREFERRED_SIZE))
.addComponent(tgl1, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(tgl2, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE)))
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addComponent(tgl3, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGroup(layout.createSequentialGroup()
.addGap(122, 122, 122)
.addComponent(fmodal, javax.swing.GroupLayout.PREFERRED_SIZE, 150, javax.swing.GroupLayout.PREFERRED_SIZE)))
.addContainerGap(40, Short.MAX_VALUE))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
.addContainerGap(45, Short.MAX_VALUE)
.addComponent(tgl3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(tgl1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(18, 18, 18)
.addComponent(tgl2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(fmodal, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(9, 9, 9)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addGroup(layout.createSequentialGroup()
.addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 24, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(65, 65, 65))
.addGroup(layout.createSequentialGroup()
.addComponent(jButton1, javax.swing.GroupLayout.PREFERRED_SIZE, 26, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(46, 46, 46))))
);

pack();
}//

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
// double hasil = 0;
try{
DateFormat df7 = new SimpleDateFormat(“dd-MM-yyyy”);
//tgl1.setText(“2013-01-01″);
String x1=tgl1.getText().substring(8,10);
String x2=tgl1.getText().substring(5,7);
String x3=tgl1.getText().substring(0,4);
String v1=tgl2.getText().substring(8,10);
String v2=tgl2.getText().substring(5,7);
String v3=tgl2.getText().substring(0,4);

System.out.println(x3+”/”+x2+”/”+x1);
Date TanggalPinjam =df7.parse(x1+”-“+x2+”-“+x3);
Date TanggalKembali = df7.parse(v1+”-“+v2+”-“+v3);
double l=(24 * 60 * 60 * 1000);
//Tgl di konversi ke milidetik
double Hari1 = TanggalPinjam.getTime();
double Hari2 = TanggalKembali.getTime();
double Lama=3;
double ll= (Hari2-Hari1);
double lll= (ll/l);
double lx=lll/5;

int b= (int) lx;
double hasil=lx-b;

fmodal.setValue(hasil);
DecimalFormat df = new DecimalFormat(“###.#”);
String hasils =df.format(hasil);

System.out.println((hasils+”–“+b));
if(hasils.equals(“0”)){jLabel1.setText(“KLIWON”);}
else if(hasils.equals(“0.2”)){jLabel1.setText(“LEGI”);}
else if(hasils.equals(“0.4”)){jLabel1.setText(“PAING”);}
else if(hasils.equals(“0.6”)){jLabel1.setText(“PON”);}
else if(hasils.equals(“0.8”)){jLabel1.setText(“WAGE”);}
else if(hasils.equals(“-0.2”)){jLabel1.setText(“WAGE”);}
else if(hasils.equals(“-0.4”)){jLabel1.setText(“PON”);}
else if(hasils.equals(“-0.6”)){jLabel1.setText(“PAING”);}
else if(hasils.equals(“-0.8”)){jLabel1.setText(“LEGI”);}

} catch (ParseException e)
{
e.printStackTrace();
}
}

private void tgl1KeyPressed(java.awt.event.KeyEvent evt) {
// if (evt.getKeyChar() == KeyEvent.VK_ENTER) {
// fmodal.requestFocusInWindow(); } // TODO add your handling code here:
}

private void fmodalKeyPressed(java.awt.event.KeyEvent evt) {
// if (evt.getKeyChar() == KeyEvent.VK_ENTER) {if(fjangka.getText().equals(“0”)){
// JOptionPane.showMessageDialog(this, “Jangka Waktu Belum di isi”); fjangka.requestFocusInWindow();}
// else{
// if(((String)cjnsjangka.getSelectedItem()).substring(0,1).equals(“4”)){
// Double c1 =Double.parseDouble(fjangka.getText())*5;
// Double c2 =Double.parseDouble(fmodal.getText());
// c= c2/c1;}else{
// Double c1 =Double.parseDouble(fjangka.getText());
// Double c2 =Double.parseDouble(fmodal.getText());
// c= c2/c1;}
// fangspok.setValue(c); fbmf.requestFocusInWindow();}
// }
}

// Variables declaration – do not modify
private formattedfields.FormattedDoubleField fmodal;
private javax.swing.JButton jButton1;
private javax.swing.JLabel jLabel1;
private javax.swing.JFormattedTextField tgl1;
private javax.swing.JFormattedTextField tgl2;
private javax.swing.JFormattedTextField tgl3;
// End of variables declaration
}

Installing Apache, MySQL, PHP, PHPMyAdmin on CentOS 6


Login to Centos server as root user

Using command prompt check whether you are logged in as root user or not. If you are not logged in as root user, you will not be able to run any installation commands.
su –

The above command will ask you for root password if you are not logged in as root user, else if you are logged in as root user than it will not display any message.
Install Apache

First step is to install the Apache server.
yum install httpd httpd-devel

To start the apache server you can use:
service httpd start

or
/etc/init.d/httpd start

(Not required at this point) If you want to restart the Apache server you can use:
service httpd restart

Install MySQL

To install the MySQL server type in
yum install mysql mysql-server mysql-devel

The above command will install MySQL server with username as root and password is empty.

To change the MySQL server password, start the MySQL server by:
/etc/init.d/mysqld start

mysql

The above two commands will take you to the MySQL command prompt where you can use MySQL commands. To change the root password to a new one from security point of view. Use the MySQL commands to change the root user password.
mysql USE mysql;

mysql UPDATE user SET Password= (‘newpassword’) WHERE user=’root’;

mysql FLUSH PRIVILEGES;

mysql exit;

Once done, check by logging in:
mysql -u root -p

Enter Password:

After changing the password you might not be able to log in, if you have previously installed MySQL or it prompts an error that you can’t logging using password empty for root@localhost than change the password again by using:
service mysqld stop

rm -fr /var/lib/mysql/*

service mysqld start

mysqladmin -u root password ‘rawr’

rawr is the new password.

To login to MySQL command prompt as root user use
mysql –u root –p

The above command will ask for root password for MySQL admin, entering your root password will log you in as root user for MySQL.
Install PHP

For installing php you need to update the EPCL package for the centos, as in centos some php modules are missing like php-mycrypt etc. which is required by phpMyAdmin for login as root user to phpMyAdmin.

To get the package for CentOS 6
cd /tmp

wget http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-7.noarch.rpm

rpm -ivh epel-release-6-7.noarch.rpm

After installing the package you can install the php with other php extensions by:
yum install php php-mysql php-common php-gd php-mbstring php-mcrypt php-devel php-xml

To test whether php is working or not

You can create an index.php file in your root folder, usually at /var/www/html

On your browser type in http://localhost/index.php will display the php info and other extensions installed.
Installing phpMyAdmin

PHPMyAdmin will is a free MySQL database Administration Tool. You can install phpMyAdmin by using the yum install phpMyAdmin command. Make sure you have installed the php-mcrypt modules as it is required by phpMyAdmin to login as root user for phpMyAdmin.
yum install phpmyadmin

Restart the apache, MySQL and memcache services.
service httpd start

service mysqld start