Mareta Mujiburrachman

Ikon

Baca, Tulis, Dengar dan Jalankan

Menjalankan Jobs SQL Server 2005/2008 dari Solaris dengan Java

Rasanya kurang apdol 🙂 kalau tanpa ada pendahuluan atau basa-basinya dulu, hehehe.

Biasa deeeh, dimana ada kebutuhan distu ada otak yang diperlukan(tuiir). Okehhh, intinya adalah, bagaimana caranya jalanin jobs di SQL Server 2005/2008 atau di SQL Server agent-nya menggunakan bahasa java. Pilihan menggunakan java karena aplikasi untuk menjalankan jobs ini di mesin Solaris. Tentunya SQL Server 2005/2008 ada di lingkungan Windows. Terpilihlah java sebagai jawaban untuk lintas platform ini (banyak jalan menuju roma:)) 

Lingkungan yang gw pakai dalam buat ini sebagai berikut :

1. SQL Server 2005/2008

2. Solaris 10

3. Shell Script

4. Jdk 1.6 –> di gw diinstal di /usr/jdk/jdk1.6.0_38

5. sqljdbc4.jar –> silahkan didonlod di internet saja, gratis kok

6. NetBeans –> pilihan editor java, yang gw pake ini

Oke! silahkan dipenuhi dulu kebutuhan diatas sebelum lanjut( kecuali no 6). Berikut lanjutannya :

1. Setelah buka project baru di NetBeans dengan nama conn_sql_server, tambahkan sqljdbc4.jar ke dalam project. Setelah ditambah akan seperti ini bentuknya

Gambar

2. Buat file java-nya dengan nama Conn_sql_server.java seperti berikut

package conn_sql_server;

import java.io.*;
import java.sql.*;
import java.util.logging.Level;
import java.util.logging.Logger;

/**
*
* @author mmujiburrachman
*/
public class Conn_sql_server {

/**
* @param args the command line arguments
*/
public static void main(String[] args) {

String ip = args[0];
String job = args[1];
String pass = args[2];

String connectionUrl = “jdbc:sqlserver://”+ip+”:1433;” +
“databaseName=msdb;user=sa;password=”+pass+”;”;

Connection con = null;
Statement stmt = null;
ResultSet rs = null;

try {
Class.forName(“com.microsoft.sqlserver.jdbc.SQLServerDriver”);
con = DriverManager.getConnection(connectionUrl);

String SQL = “EXEC dbo.sp_start_job N'”+job+”‘”;
stmt = con.createStatement();
rs = stmt.executeQuery(SQL);

}

catch (Exception e) {
e.printStackTrace();
}
finally {
if (rs != null) try { rs.close(); } catch(Exception e) {}
if (stmt != null) try { stmt.close(); } catch(Exception e) {}
if (con != null) try { con.close(); } catch(Exception e) {}
}

}
}

semoga tidak ada yang bingung dengan script diatas 🙂

3. Setelah itu di compile/bulid deh

Gambar

Kalau ada error seperti diatas, ga apa-apa, itu disebabkan kita menaruh beberapa parameter ketika nanti dijalankan, sedangkan aplikasi Netbeans menjalankan semua script yang ada. Detilnya ada di baris-baris berikut:

String connectionUrl = “jdbc:sqlserver://”+ip+”:1433;” +
“databaseName=msdb;user=sa;password=”+pass+”;”;

String SQL = “EXEC dbo.sp_start_job N'”+job+”‘”;

ada ip, pass, dan job sebagai parameter ketika nanti dieksekusi/dijalankan

 

4. Lalu klik kanan pada project, pilih “Clean and Builld” sebagai berikut

Gambar

Jika tidak ada error selain error no 3 diatas, akan ada keterangan sebagai berikut

Gambar

Nahh..gampang kaaan? yang dilingkari bahkan memudahkan kita untuk menjalankan. Ingat! tujuan kita agar script/aplikasi dijalankan di mesin solaris, kalau di windows yaa seperti diatas cara jalaninnya. Oke, kita lanjutkan ke mesin solaris!

 

5. Kirim file jar yang sudah terbentuk itu ke dalam mesin solaris, via ftp/aplikasi lain kek, terseraaah. Gw make ultra edit sebagai berikut

Gambar

Kirim dari sebelah kiri ke ke sebelah kanan, jangan lupa dengan modus binary ya!

 

6. Buat file shell script sebagai berikut

#!/bin/bash

IP=$1

JOB=$2

PASS=$3

 

/usr/jdk/jdk1.6.0_38/bin/java -jar conn_sql_server.jar ${IP} “${JOB}” ${PASS}

Simpan dengan nama sembarang, jangan lupa diakhir dengan ekstensi “.sh” 🙂

 

7. Waktunya menjalankan!!!! 🙂

Setelah tau jobs apa yang akan dijalankan di SQL Server 2005/2008, jalankan di mesin solaris dengan cara

bash ssis.sh 172.xx.xx.xx “jobs di sql server 2005/2008” password

 

Parameter ke 2/JOBS diberi tanda kutip dua karena mungkin ada karakter spasi ” ” dalam nama jobs, maklum, windows bisa berbuat demikian 🙂

 

Baiklaaaah, semoga tulisan ini membuat kalian bingung. Dengan demikian, kalian dan gw tetep belajar terussssssssss

Salam belajar!

Filed under: IT Banget, , , , , ,

Tinggalkan komentar

Hijriah (mungkin berbeda 1 hari dengan keadaan sesungguhnya)

Masehi

Juni 2013
S S R K J S M
 12
3456789
10111213141516
17181920212223
24252627282930