Flash_D Acewell

"Jangan pernah berhenti bermimpi dan berusahalah agar mimpi itu tercapai"

Process Control Block adalah informasi-informasi lain yang diperlukan SO untuk mengendalikan dan koordinasi beragam proses aktif, termasuk ini:

Keadaan proses: Keadaan mungkin, new ,ready ,running, waiting, halted, dan juga banyak lagi.
Program counter: Counter mengindikasikan address dari perintah selanjutnya untuk dijalankan untuk ditambah code information pada kondisi apapun. Besertaan dengan program counter, keadaan/ status informasi harus disimpan ketika gangguan terjadi, untuk memungkinkan proses tersebut berjalan/bekerja dengan benar setelahnya.
Informasi manajemen memori: Informasi ini dapat termasuk suatu informasi sebagai nilai dari dasardan batas register. tabel page/ halaman, atau tabel segmen tergantung pada sistem memori yangdigunakan oleh sistem operasi (ch 9).
Informasi pencatatan: Informasi ini termasuk jumlah dari CPU dan waktu riil yang digunakan bataswaktu, jumlah akun, jumlah job atau proses, dan banyak lagi.
Informasi status I/O: Informasi termasuk daftar dari perangkat I/O yang di gunakan pada proses ini,suatu daftar open file dan banyak lagi.
PCB hanya berfungsi sebagai tempat menyimpan/gudang untuk informasi apapun yang dapatbervariasi dari prose ke proses.proses ini.
CPU register: Register bervariasi dalam jumlah dan jenis, tergantung pada rancangan komputer.Register tersebut termasuk accumulator, index register, stack pointer, general-puposes register,

Element-elemen PCB antara lain:

Identifikasi Proses yaitu Identifier numerik yang meliputi

Identifier proses
Identifier proses yang menciptakan
Identifier pemakai

Informasi Status Pemroses yang meliputi

Register-register yang terlihat pemakai yaitu Register-register yang dapat ditunjuk instruksi bahasa assembly untuk diproses pemroses
Register-register kendali dan status yaitu Register-register yang digunakan untuk mengendalikan operasi pemroses, a.l.:

Program counter
PSW, dsb.

Pointer stack yaitu Tiap proses mempunyai satu stack atau lebih. Stack digunakan untuk parameter atau alamat prosedur pemanggil dan system call. Pointer stack menunjuk posisi paling atas dari stack

Informasi Kendali Pemroses meliputi

Informasi penjadwalan dan status yaitu Informasi-informasi yang dipakai untuk menjalankan fungsi penjadwalan a.l :

Status proses. Mendefinisikan status proses (running,ready,block, dsb)
Prioritas. Menjelaskan prioritas proses
Informasi berkaitan penjadwalan. Informasi ini seperti lama menunggu, lama proses terakhir dieksekusi dsb.
Kejadian (Event). Identitas kejadian yang ditunggu proses

Penstrukturan data yaitu Suatu proses dapat dikaitkan dengan proses lain dalam satu antrian atau ring, atau struktur lainnya. PCB harus memiliki pointer untuk mendukung struktur ini.
Komunikasi antar proses yaitu Beragam flag, sinyal dan pesan dapat diasosiasikan dengan komunikasi antara dua proses yang terpisah. Informasi ini disimpan dalam PCB
Kewenangan proses yaitu Proses dapat mempunyai kewenangan berkaitan dengan memori dan tipe instruksi yang dapat dijalankan
Manajemen memori Bagian ini berisi pointer ke tabel segmen atau page yang menyatakan memori virtual proses
Kepemilikan dan utilisasi sumber daya yaitu Sumber daya yang dikendalikan proses harus diberi tanda, misalnya :

Berkas yang dibuka
Pemakaian pemroses
Pemakaian sumberdaya lainnya

Informasi yang terdapat pada setiap proses meliputi :

Status Proses = New, ready, running, waiting dan terminated.
Program Counter = Menunjukkan alamat berikutnya yang akan dieksekusi oleh proses tersebut.
CPU Registers = Register bervariasi tipe dan jumlahnya tergantung arsitektur komputer yang bersangkutan. Register-register tersebut terdiri-atas: accumulator, index register, stack pointer, dan register serbaguna dan beberapa informasi tentang kode kondisi. Selama Program Counter berjalan, status informasi harus disimpan pada saat terjadi interrupt. Gambar 3-3 menunjukkan switching proses dari satu proses ke proses berikutnya.
Informasi Penjadwalan CPU = Informasi tersebut berisi prioritas dari suatu proses, pointer ke antrian penjadwalan, dan beberapa parameter penjadwalan yang lainnya.
Informasi Manajemen Memori = Informasi tersebut berisi nilai (basis) dan limit register, page table, atau segment table tergantung pada sistem memory yang digunakan oleh SO.
Informasi Accounting = Informasi tersebut berisi jumlah CPU dan real time yang digunakan, time limits, account numbers, jumlah job atau proses, dll
Informasi Status I/O = Informasi tersebut berisi deretan I/O device (seperti tape driver) yang dialokasikan untuk proses tersebut, deretan file yang dibuka, dll.

sumber google.com
read more "Elemen-Elemen dari Process Control Block (PCB)"

Pembuatan proses:

Penyebab terjadinya pembuatan suatu proses baru yaitu;

Pada lingkungan batch, sebagai tanggapan atas pemberian suatu kerja (job)
Pada lingkungan interaktif, ketika pemakai baru berusaha logon
Sebagai tanggapan suatu aplikasi, seperti permintaan pencetakan file, SO dapat menciptakan proses yang akan mengelola pencetakan itu
Proses menciptakan proses lain (child).
Proses yang menciptakan child process disebut proses induk (parent process)
Child process dapat menciptakan proses baru.
Proses-proses dapat membentuk pohon hirarki proses

Suatu proses dapat membuat beberapa proses baru, melalui sistem pemanggilan pembuatan proses, selama jalur eksekusi. Pembuatan proses dinamakan induk proses, sebagaimana proses baru di sebut anak dari proses tersbut. Tiap proses baru tersebut dapat membuat proses lainnya, membentuk suatu pohon proses

Secara umum, suatu proses akan memerlukan sumber tertentu (waktu CPU, memori, berkas, perangkat I/O) untuk menyelesaikan tugasnya. Ketika suatu proses membuat sebuah subproses, sehingga subproses dapat mampu untuk memperoleh sumbernya secara langsung dari sistem operasi. Induk mungkin harus membatasi sumber diantara anaknya, atau induk dapat berbagi sebagian sumber (seperti memori berkas) diantara beberapa dari anaknya. Membatasi suatu anak proses menjadi subset sumber daya induknya mencegah proses apa pun dari pengisian sistem yang telalu banyak dengan menciptakan terlalu banyak subproses.

Sebagai tambahan pada berbagai sumber fisik dan logis bahwa suatu proses diperoleh ketika telah dibuat, data pemula (masukan) dapat turut lewat oleh induk proses sampai anak proses. Sebagai contoh, anggap suatu proses yang fungsinya untuk menunjukkan status sebuah berkas, katakan F1, pada layar terminal. Ketika dibuat, akan menjadi sebagai sebuah masukan dari proses induknya, nama dari berkas F1, dan akan mengeksekusi menggunakan kumpulan data tersebut untuk memperoleh informasi yang diinginkan. Proses tersebut juga mendapat nama dari perangkat luar. Sebagian sistem operasi melewati sumber-sumber ke anak proses. Pada sistem tersebut, proses baru bisa mendapat dua berkas terbuka yang baru, F1 dan perangkat terminal dan hanya perlu untuk mentransfer data antara kedua berkas tersebut.

Ketika suatu proses membuat proses baru, dua kemungkinan ada dalam term eksekusi:

Induk terus menerus untuk mengeksekusi secara bersama-sama dengan anaknya.
Induk menunggu sampai sebagian dari anaknya telah diakhiri/terminasi.

Juga ada dua kemungkinan dalam term dari address space pada proses baru:

Anak proses adalah duplikat dari induk proses.
Anak proses memiliki program yang terisikan didalamnya.

Langkah-langkah dalam pembuatan proses, antara lain :

Memberi identitas (nama) pada proses yang dibuat.
Menyisipkan proses pada list proses atau tabel proses.
Menentukan prioritas awal proses.
Membuat PCB.
Mengalokasikan resource awal bagi proses tersebut.

Penghentian Proses

Suatu proses akan berhenti jika telah menyelesaikan pernyataan terakhir dan meminta pada sistem operasi untuk menghapusnya dengan menggunakan system call exit. Proses mengembalikan semua data (output) ke parent proses melalui system call wait. Kemudian proses akan dihapus dari list atau tabel system dilanjutkan dengan menghapus PCB.

Penghapusan proses ini akan menjadi sangat kompleks jika ternyata proses yang akan dihentikan tersebut membuat proses-proses yang lain. Pada beberapa system proses-proses anak akan dihentikan secara otomatis jika proses induknya berhenti. Namun ada beberapa sistem yang menganggap bahwa proses anak ini terpisah dengan induknya, sehingga proses anak tidak ikut dihentikan secara otomatis pada saat proses induk dihentikan.

Alasan lain Penyebab terjadinya penghentian suatu proses:

Apabila Proses selesai mengerjakan tugasnya(selesai normal)
Apabila Proses berjalan melebihi batas waktu
Jika memory tidak tersedia
Pelanggaran terhdap batas memori
Terjadi kesalahan karena pelanggaran proteksi
Terjadi kesalahan perhitungan
Jika terjadi proses menunggu terlalu lama
Terjadi kegagalan I/O
Jika proses mengeksekusi instruksi yang tidak ada
Proses menggunakan instruksi yang disimpan untuk SO
Terjadi kesalahan penggunaan data
Terjadi intervensi dari operator atau SO (contoh : deadlock)
Jika proses induk berahir
Yang terakhir atas permintaan proses induk

Indikasi dapat berupa :

Instruksi HALT membangkitkan sustu interupsi alert untuk SO
Aksi pengguna (seperti log off dan keluar dari suatu aplikasi)
Terjadi suatu kesalahan atau error
Dihentikan oleh proses induk

sumber : www.google.com
read more "Alasan Pembuatan dan Penghentian Proses"

Jika dibandingkan dengan computer, manusia mempunyai kekurangan. Salah satu kekurangannya adalah manusia tidak mampu melaksanakan suatu perintah berulangkali tanpa mengenal lelah dan bosan. Sedangkan computer sebaliknya, computer mampu melaksanakan suatu perintah berulangkali tanpa mengenal lelah dan bosan. Di dalam algoritma pengulangan/ loop dapat dilakukan sejumlah kali, atau sampai kondisi berhenti pengulangan tercapai.

* Struktur Pengulangan

Struktur pengulangan secara umum terdiri dari 2 bagian:

Body pengulangan, merupakan bagian algoritma yang diulang.
Kondisi pengulangan, merupakan ekspresi Boolean yang wajib dipenuhi untuk melaksanakan pengulangan. Kondisi pengulangan ini dapat dinyatakan secara eksplisit ( pemrogram ) atau inplisit ( dikelola computer itu sendiri ).

Dalam struktur pengulangan biasanya disertai dengan bagian:

Inisialisasi, maksudnya aksi yang dilakukan sebelum pengulangan pertama kali dilakukan.
Terminasi, maksudnya aksi yang dilakukan setelah pengulangan selesai dilakukan.

Inisialisasi dan terminasi tidak selalu wajib ada, namun pada berbagai kasus inisialisasi umumnya dibutuhkan.
Struktur umum pengulangan adalah sebagai berikut:

( inisialisasi )

Awal pengulangan

Badab pengulangan

Akhir pengulangan

( terminasi )

( inisialisasi ) dan ( terminasi ) pada struktur umum pengulangan diatas merupakan bagian yang tidak selalu harus dituliskan. Sedangkan, awal dan akhir pengulangan merupakan kata kunci yang bergantung pada kontruksi pengulangan yang digunakan.

Di dalam algoritma terdapat bermacam-macam konstrusi yang berbeda. Ada beberapa konstruksi pengulangan yang dapat digunakan/ dipakai untuk masalah yang sama, tetapi ada juga onstruksi pengulangan yang hanya bisa dipakai untuk masalah tertentu. Untuk memilih konstruksi pegulangan yang tepat seharusnya bergantung pada masalah yang akan diprogram. Karena pemilihan konstruksi pengulangan mempengaruhi kebenaran algoritma untuk masalah tertentu. Notasi konstruksi pengulangan dalam bentuk pernyataan ada 3 macam, yaitu:

a. Pernyataan FOR

Merupakan konstruksi pengulangan tanpa kondisi ( unconditional looping ), artinya perintah-perintah yang ada di dalam badan pengulangan diulangi sejumlah kali yang dispesifikasikan oleh pemrogram. Jadi, jumlah pengulangan sudah diketahui/ dapat dtentukan sebelum konstruksi pengulangan eksekusi.

Pernyataan dengan to adalah suatu pernyataan yang menjalankan program dengan urut/ semestinya/ dari kecil sampai ke yang besar, misalnya: dari angka 1 sampai angka 5. Example:

Example 1.

uses wincrt;

var a : integer :
begin
for a := 1 to 5 do
writeln(a);
end.

Output:
1
2
3
4
5

Example 2.

Program CetakBanyak_BelajarYangRajinYa
uses wincrt;

var x : integer ;
begin
for x := 1 to 5 do
writeln(’Belajar Yang Rajin Ya!’);
end.

Output:
Belajar Yang Rajin Ya!
Belajar Yang Rajin Ya!
Belajar Yang Rajin Ya!
Belajar Yang Rajin Ya!
Belajar Yang Rajin Ya!

Ada pula pernyataan dengan downto, maksudnya pernyataan yang menjalankan progran secara terbalik yaitu yang besar ke yang kecil, misalnya dari angka 5 ke angka 1. Example:

uses wincrt;

var y : integer ;
begin
for y := 5 downto 1 do
writeln(y);
end.

Output:
5
4
3
2
1

Selain kedua pernyataan diatas, ada juga for di dalam for.
Misalnya:

1
2
3
4
5
6
7
8
9
10
11
12
13



uses wincrt;
var x,y,z : integer ;
begin
for x := 1 to 6 do begin
writeln(’tidak’, x);
writeln;
for y := 5 to 9 do begin
z := x * 500;
writeln(z + y, ’ ’, y);
end;
end;
readln;
end.

Output:
tidak 1

505 5
506 6
507 7
508 8
509 9
…….
…….
Tidak 6

3005 5
3006 6
3007 7
3008 8
3009 9

b. Pernyataan WHILE

Merupakan pengulangan dengan kondisi ( conditional looping ), maksudnya perintah-perintah yang ada di dalam badan pengulangan diulangi sampai kondisi berhenti terpenuhi yaitu dengan menentukan kondisi berhenti pengulangan. Tetapi jumlah pengulangan tidak diketahui sebelum eksekusi.

Struktur umum pernyataan While:

1
2
3



while kondisi do
pernyataan
endwhile

Jadi, pernyataan while akan berjalan berulang terus apabila belum menemukan nilai false, tetapi kalau kondisi bernilai true maka pengulangan akan terus berjalan.
Sedangkan, apabila pengulangan berjalan terus tanpa henti berarti pengulangan tersebut pada logika algoritma algoritma yang salah.

Example:

1
2
3
4
5
6
7
8
9
10



uses wincrt:

var c : integer ;
begin
c := 1;
while(c<5) do begin
writeln(’tidak’, c);
a := a + 1;
end;
end.

c. Pernyataan REPEAT

Merupakan pengulangan dengan kondisi ( conditional looping ), maksudnya perintah-perintah yang ada di dalam badan pengulangan diulangi sampai kondisi berhenti terpenuhi yaitu dengan menentukan kondisi berhenti pengulangan. Tetapi jumlah pengulangan tidak diketahui sebelum eksekusi.
Struktur umum pernyataan Repeat:

1
2
3



repeat
pernyataan
until kondisi

Jadi, bisa diartikan bahwa apabila program itu dijalankan dengan kondisi bernilai false dan masih saja bernilai false, maka proses akan terus berlangsung. Tetapi apabila kondisi sudah menemukan nilai true maka proses akan berhenti. Karena nilai true yang dicari. Disamping itu, apabila pengulangan tidak berhenti/ berjalan terus tanpa henti maka terdapat logika algoritma yang salah.

Example:

1
2
3
4
5
6
7
8



uses wincrt;

var a : integer ;
begin
repeat
writeln(’tidak’, a);
until(a=5);
end.

Output:

tidak 0
tidak 1
tidak 2
tidak 3
tidak 4

# Dari pernyataan diatas, pada While dan Repeat terlihat jelas ada perbedaan antara kedua pernyataan tersebut. Perbedaan tersebut adalah:
a. Pernyataan While

1
2
3



while kondisi do
pernyataan
endwhile

b. Pernyataan Repeat

1
2
3



repeat
pernyataan
until kondisi
read more "Perulangan"

SQL – Structured Query Language

1. Pengertian
SQL merupakan subbahasa pemrograman yang khusus dipergunakan untuk memanipulasi basis data.
SQL adalah salah satu DBMS (database management system) yang saat ini banyak digunakan untuk operasi basis data dan embedded (ditempelkan) di hampir semua bahasa pemrograman yang mendukung basis data relasional.
Perbedaan penggunaan SQL pada masing-masing bahasa biasanya pada sintaks2 khusus. Misalnya : INSERT INTO … VALUE. Pada bahasa yang lain INSERT INTO …VALUES…, dll.
Bahasa yang mendukung SQL antara lain : V Basic, C++ Builder,Delphi, ORACLE, MySQL,PostGreeSQL,JAVA,dll

2. Perintah-perintah SQL (query)
Perintah-perintah dalam SQL bisa disebut dengan query.
Ada tiga sub perintah:
1. Data Definition Language (DDL), yakni perintah-perintah yang digunakan untuk mendefinisikan (menciptakan, tambah/mengubah/hapus) sturktur data/tabel
2. Data manipulation language (DML), yakni perintah yang digunakan untuk memanipulasi database (melihat, menenusuri, filtering, summarize, perhitungan, dll)
3. Data Control Language (DCL), digunakan untuk mengedalikan database

3. DDL (Data Definition Language)
Perintah-perintah dibawah ini menggunakan standar MySql, karena saat ini banyak digunakan pada berbagai aplikasi:
1. Menciptakan database
CREATE DATABASE nama_database



2. Menciptakan tabel
CREATE TABLE nama_tabel(nama_field1 jenis_data1(lebar1), nama_field2 jenis_data2(lebar2),………)
 Lebar  jumlah byte/karakter maksimal pd field tersebut
3. Mengubah field
ALTER TABLE nama_tabel CHANGE field1 field2 jenis_data( lebar )
 Field1 : field lama
 Field2 : field Baru
4. Menambah field
ALTER TABLE nama_tabel ADD nama_field jenis_data( lebar )
 Field  Nama field yg ditambah
5. Menghapus field
ALTER TABLE nama_tabel DROP field
 Field  nama field yg dihapus.

4. Data Manipulation Language(DML)
Contoh :
Contoh terdapat database: Mahasiswa
Dengan tabel sbb






Tabel : Pribadi Tabel : jurusan
Nomhs Nama **Kodejur *Kodejur NamaJur Ketua
210100 Rina Gunawan 2 1 Sistem Informasi Harnaningrum,S.Si
210090 Gani Suprapto 1 2 Teknik Informatika EnnySela,S.Kom.,M.Kom
210012 Alexandra 2 3 Teknik Komputer Berta Bednar,S.Si,M.T.
210099 Nadine 3
210002 Rizal Samurai 1




5. Membaca/mengambil (dari disk/storage ke memori) isi table
1. Semua record semua field
SELECT * FROM tabel
Contoh:
SELECT * FROM Pribadi
Hasil :
Nomhs Nama Kodejur
210100 Rina Gunawan 2
210090 Gani Suprapto 1
210012 Alexandra 2
210099 Nadine 3
210002 Rizal Samurai 1
2. Semua record, field tertentu
SELECT field1, field2,… FROM tabel
Contoh :
SELECT nomhs,nama FROM Pribadi
Hasil :
Nomhs Nama
210100 Rina Gunawan
210090 Gani Suprapto
210012 Alexandra
210099 Nadine
210002 Rizal Samurai

3. Menyaring data (filtering)
Agar data yang diambil sesuai dengan kebutuhan (pada contoh diambil semua field)
 Dengan 1 kriteria/kondisi
SELECT * FROM tabel WHERE kondisi
Catatan :
Kondisi =
field [ =,>,<,>=,<=,!=] kunci [ ] = pilih salah satu dari operator relasi Field : nama field dimana data disaring Kunci : nilai/data sebagai kunci penyaringan Contoh : SELECT * FROM Pribadi WHERE nama=”Nadine” Hasil : Nomhs Nama Kodejur 210099 Nadine 3  Dengan >1 kriteria/kondisi
SELECT * FROM tabel WHERE kondisi1 {AND,OR,XOR,NOT} kondisi2 ………..
{ } : opeartor logika
Contoh :
SELECT * FROM Pribadi WHERE nama=”Nadine” OR kodejur=”2”
Hasil :
Nomhs Nama Kodejur
210100 Rina Gunawan 2
210012 Alexandra 2
210099 Nadine 3

 Menyaring data dengan karakter tengah
SELECT * FROM tabel WHERE field LIKE “%kunci%”

% : wildcard/ diabaikan
%kunci : karakter didepan kunci diabaikan
Kunci% : karakter dibelakang kunci diabaikan
%kunci%:karakter didepan dan dibelakang kunci diabaikan

Contoh :
SELECT * FROM Pribadi WHERE nama LIKE “%ra%”
Hasil :
Nomhs Nama Kodejur
210090 Gani Suprapto 1
210012 Alexandra 2
210002 Rizal Samurai 1

4. Relasi antar tabel
Digunakan untuk menghubungkan antar satu tabel dengan tabel lainnya. Kedua tabel akan ber relasi bila nilai data dari kedua tabel tersebut sama

SELECT * FROM tabel1,tabel2 WHERE tabel1.kunci tamu= tabel2.kunci primer





 Tabel1.kunci tamu dan tabel2.kunci primer dapat dibalik sesuai keadaan relasi yang sesunguhnya
Contoh :
SELECT * FROM Pribadi,jurusan WHERE pribadi.kodejur=jurusan.kodejur

Nomhs Nama Kodejur *Kodejur NamaJur Ketua
210100 Rina Gunawan 2 2 Teknik Informatika EnnySela,S.Kom.,M.Kom
210090 Gani Suprapto 1 1 Sistem Informasi Harnaningrum,S.Si
210012 Alexandra 2 2 Teknik Informatika EnnySela,S.Kom.,M.Kom
210099 Nadine 3 3 Sistem Informasi Harnaningrum,S.Si
210002 Rizal Samurai 1 1 Sistem Informasi Harnaningrum,S.Si

SELECT nomhs,nama,namajur FROM Pribadi,jurusan WHERE pribadi.kodejur=jurusan.kodejur
Hasil :
No Mhs Nama Nama Jurusan
210100 Rina Gunawan Teknik Informatika
210090 Gani Suprapto Sistem Informasi
210012 Alexandra Teknik Informatika
210099 Nadine Sistem Informasi
210002 Rizal Samurai Sistem Informasi

SELECT nomhs,nama,namajur FROM Pribadi,jurusan WHERE pribadi.kodejur=jurusan.kodejur AND
Namajur=”Teknik Informatika”

Hasil :
No Mhs Nama Nama Jurusan
210100 Rina Gunawan Teknik Informatika
210012 Alexandra Teknik Informatika







Membuat Database Perpustakaan Menggunakan MYSQL


1. Untuk membuat sebuah database anda harus menentukannya terlebih dahulu apa yang anda akan buat , misalnya kita akan membuat database perpustakaan , kemudian table - table yang terbentuk dari database perpustakaan , yaitu
 Table Admin
 Table Jenis
 Table Penerbit
 Table Desk Buku
 Table Buku
 Table Anggota
 Table Penulis

2. Untuk membuat database anda harus menuliskan perintah ini :

mysql > create database perpustakaan;
Query Ok , 1 rows affected (0.70 sec)

3. Sebelum anda membuat table - table dari perpustakaan , anda harus memasukan perintah ini :

mysql > use perpustakaan;

Gunannya untuk apa ?? untuk menggunakan perpustakaan sebagai database !! kan kita membuat database perpustakaan gimana sih cuy !!! hehehe !!!
database perpustakaan siap digunakan !!
karena kita sudah membuat table - table nya , maka kita buat yuk tablenya !!!


4. Kita bikin table Admin dulu ya , sesuai dengan susunan yang diatas !!!
perintah yang anda masukan yaitu :





5. Table Jenis , dengan perintah sebagai berikut :





6. Table Penerbit , dengan perintah sebagai berikut :








7. Table Desk Buku , dengan perintah sebagai berikut :





8. Table Buku , dengan perintah sebagai berikut :










9. Table Anggota , dengan perintah sebagai berikut :









10. Table Penulis , dengan perintah sebagai berikut :







Sumber:
1. http://dunia-programming.blogspot.com/2009/11/membuat-database-perpustakaan.html10.
2. Berbagai-bagai
read more "SQL Data Perpustakaan"

A. Pengertian Bangsa, Negara, Warga Negara dan Penduduk

1. Pengertian Bangsa
Bangsa adalah suatu komunitas etnik yang cirri-cirinya adalah: memiliki nama, wilayah tertentu, mitos leluhur bersama, kenangan bersama, satu atau beberapa budaya yang sama dan solidaritas tertentu. Bangsa juga merupakan doktrin etika dan filsafat, dan merupakan awal dari ideology nasionalisme.
Berikut pendapat beberapa para ahli tentang pengertian bangsa:
a. Ernest Renan (Perancis) : Bangsa adalah suatu nyawa, suatu akal yang terjadi dari 2 hal, yaitu rakyat yang harus hidup bersama-sama menjalankan satu riwayat, dan rakyatyang kemudian harus mempunyai kemauan atau keinginan hidup untuk menjadi satu.
b. Otto Bauer (Jerman) : Bangsa adalah kelompok manusia yag memiliki kesamaan karakter. Karakteristik tumbuh karena adanya persamaan nasib.
c. F. Ratzel (Jerman) : Bangsa terbetuk karena adanya hasrat bersatu. Hasrat itu timbul karena adanya rasa kesatuan antara manusia dan tempat tinggalnya (paham geopolitik).
Jadi dari definisi diatas, bangsa adalah suatu kelompok manusia yang memiliki karakteristik dan ciri yang sama (nama, budaya, adat), yang bertempat tinggal di suatu wilayah yang telah dikuasai nya atas sebuah persatuan yang timbul dari rasa nasionalisme serta rasa solidaritas dari sekumpulan manusia tersebut serta mengakui negaranya sebagai tanah airnya.

2. Pengertian Negara
Secara etimologis, “Negara” berasal dari bahasa asing Staat (Belanda, Jerman), atau State (Inggris). Kata Staat atau State pun berasal dari bahasa Latin, yaitu status atau statum yang berarti “menempatkan dalam keadaan berdiri, membuat berdiri, dan menempatkan”. Kata status juga diartikan sebagai tegak dan tetap. Dan Niccolo Machiavelli memperkenalkan istilah La Stato yang mengartikan Negara sebagai kekuasaan.

Beberapa pengertian Negara menurut pakar kenegaraan:
a. George Jellinek Negara adalah organisasi kekuasaan dari sekelompok manusia yang mendiami wilayah tertentu.
b. G.W.F Hegel Negara adalah organisasi kesusilaan yang muncul sebagai sintesis dari kemerdekaan individual dan kemerdekaan universal.
c. Logeman Negara adalah organisasi kemasyarakatan (ikatan kerja) yang mempunyai tujuan untuk mengatur dan memelihara masyarakat tertentu dengan kekuasaannya.
d. Karl Marx Negara adalah alat kelas yang berkuasa (kaum borjuis/kapitalis) untuk menindas atau mengeksploitasi kelas yang lain (ploretariat/buruh).
Jadi dari pengertian diatas, Negara adalah Satu kesatuan organisasi yang didalam nya ada sekelompok manusia (rakyat), wilayah yang permanent (tetap) dan memiliki kekuasaan yang mana di atur oleh pemerintahan yang berdaulat serta memiliki ikatan kerja yang mempunyai tujuan untuk mengatur dan memelihara segala instrument-instrumen yang ada didalamnya dengan kekuasaan yang ada.

Hakikat Negara
Pada dasarnya berdirinya suatu Negara yaitu karena keinginan manusia yang membentuk suatu bangsa karena adanya berbagai kesamaan ras, bahasa, adat dan sebagainya.
Sifat hakikat Negara mencakup hal-hal sebagai berikut:
 Sifat memaksa
Negara memiliki sifat memaksa, dalam arti mempunyai kekuatan fisik secara legal. Dan sarana nya adalah Polisi, tentara, dan alat penjamin hukum lainnya. Sehingga diharapkan semua peraturan perundangan yang berlaku ditaati supaya keamanan dan ketertiban Negara tercapai. Contoh bentuk paksaannya adalah UU perpajakan yang memaksa setiap warga Negara untuk membayar pajak, bila melanggar maka akan di kenai sangsi.
 Sifat monopoli
Dalam menetapkan tujuan bersama masyarakat. Misalnya Negara dapat mengatakan bahwa aliran kepercayaan atau partai politik tertentu dilarang karena dianggap bertentangan dengan tujuan masyarakat.
 Sifat mencakup semua
Semua peraturan perundang-undangan yang berlaku adalah untuk semua orang tanpa terkecuali. Sebab kalau seorang dibiarkan berada di luar ruang lingkup aktivitas Negara, maka usaha Negara kea rah tercapainya masyarakat yang dicita-citakan akan gagal.

3. Warga Negara
a. Warga Negara adalah orang yang terkait dengan sistem hukum Negara dan mendapat perlindungan Negara.
b. Warga Negara secara umum ada Anggota suatu negara yang mempunyai keterikatan timbal balik dengan negaranya.
c. Warga negara adalah orang yg tinggal di dalam sebuah negara dan mengakui semua peraturan yg terkandung di dalam negara tersebut.
d. Warga Negara Indonesia menurut Pasal 26 UUD 1945 adalah : Orang-orang bangsa Indonesia asli dan bangsa lain yang disahkan Undang-undang sebagai warga Negara.
Kewarganegaraan Republik Indonesia diatur dalam UU no. 12 tahun 2006 tentang Kewarganegaraan Republik Indonesia. Menurut UU ini, orang yang menjadi Warga Negara Indonesia (WNI) adalah:
1. Setiap orang yang sebelum berlakunya UU tersebut telah menjadi WNI.
2. Anak yang lahir dari perkawinan yang sah dari ayah dan ibu WNI.
3. Anak yang lahir dari perkawinan yang sah dari seorang ayah WNI dan ibu warga negara asing (WNA), atau sebaliknya.
4. Anak yang lahir dari perkawinan yang sah dari seorang ibu WNI dan ayah yang tidak memiliki kewarganegaraan atau hukum negara asal sang ayah tidak memberikan kewarganegaraan kepada anak tersebut.
5. Anak yang lahir dalam tenggang waktu 300 hari setelah ayahnya meninggal dunia dari perkawinan yang sah, dan ayahnya itu seorang WNI.
6. Anak yang lahir di luar perkawinan yang sah dari ibu WNI.
7. Anak yang lahir di luar perkawinan yang sah dari ibu WNA yang diakui oleh seorang ayah WNI sebagai anaknya dan pengakuan itu dilakukan sebelum anak tersebut berusia 18 tahun atau belum kawin.
8. Anak yang lahir di wilayah negara Republik Indonesia yang pada waktu lahir tidak jelas status kewarganegaraan ayah dan ibunya.
9. Anak yang baru lahir yang ditemukan di wilayah megara Republik Indonesia selama ayah dan ibunya tidak diketahui.
10. Anak yang lahir di wilayah negara Republik Indonesia apabila ayah dan ibunya tidak memiliki kewarganegaraan atau tidak diketahui keberadaannya.
11. Anak yang dilahirkan di luar wilayah Republik Indonesia dari ayah dan ibu WNI, yang karena ketentuan dari negara tempat anak tersebut dilahirkan memberikan kewarganegaraan kepada anak yang bersangkutan.
12. Anak dari seorang ayah atau ibu yang telah dikabulkan permohonan kewarganegaraannya, kemudian ayah atau ibunya meninggal dunia sebelum mengucapkan sumpah atau menyatakan janji setia.


Selain itu, diakui pula sebagai WNI bagi:
 Anak WNI yang lahir di luar perkawinan yang sah, belum berusia 18 tahun dan belum kawin, diakui secara sah oleh ayahnya yang berkewarganegaraan asing.
 Anak WNI yang belum berusia lima tahun, yang diangkat secara sah sebagai anak oleh WNA berdasarkan penetapan pengadilan.
 Anak yang belum berusia 18 tahun atau belum kawin, berada dan bertempat tinggal di wilayah RI, yang ayah atau ibunya memperoleh kewarganegaraan Indonesia.
 Anak WNA yang belum berusia lima tahun yang diangkat anak secara sah menurut penetapan pengadilan sebagai anak oleh WNI.
Kewarganegaraan Indonesia juga diperoleh bagi seseorang yang termasuk dalam situasi sebagai berikut:
 Anak yang belum berusia 18 tahun atau belum kawin, berada dan bertempat tinggal di wilayah Republik Indonesia, yang ayah atau ibunya memperoleh kewarganegaraan Indonesia
 Anak warga negara asing yang belum berusia lima tahun yang diangkat anak secara sah menurut penetapan pengadilan sebagai anak oleh warga negara Indonesia.
Jadi, warga negara adalah orang yang tinggal di suatu negara dengan keterkaitan hukum dan peraturan yang ada dalam negara tersebut serta diakui oleh negara, baik warga asli negara tersebut atau pun warga asing dan negara tersebut memiliki ketentuan kepada siapa yang akan menjadi warga negaranya.

4. Penduduk
 Penduduk adalah orang yang tinggal di suatu daerah.
 Penduduk adalah orang yang berhak tinggal daerah, dengan syarat orang tersebut harus memiliki surat resmi untuk tinggal disitu
 Dalam sosiologi, penduduk adalah kumpulan manusia yang menempati wilayah geografi dan ruang tertentu.
Jadi penduduk adalah kumpulan manusia yang tinggal di suatu wilayah (Negara, kota dan daerah) yaitu dengan memiliki surat resmi untuk tinggal di wilayah tersebut.






5. Perbedaan warganegara dengan penduduk.
 Warganegara
Merupakan anggota dari suatu Negara yang bersifat resmi/ditetapkan berdasarkan peraturan perundang-undangan,dan warga Negara sudah pasti merupakan anggota Negara tersebut.
 Penduduk
Merupakan orang-orang yang berdomisili di wilayah Negara tertentu,dan penduduk belum tentu merupakan anggota dari suatu Negara,karena ada sebagian penduduk yang merupakan orang asing/warganegara asing.

B. Fungsi Dan Tujuan Negara

1. Fungsi Negara
Ada lima fungsi negara yang dikemukakan oleh Charles E. Merriam, yaitu keamanan ekstern, ketertiban intern, keadilan, kesejahteraan umum, dan kebebasan.
Selain mempunyai tujuan, Negara juga mempunyai fungsi yang berhubungan erat dengan tujuannya. Hal-hal yang harus dilakukan oleh negara adalah melaksanakan ketertiban (law and order) untuk mencapai tujuan bersama dan mencegah bentrokan-bentrokan dalam masyarakat, mengusahakan kesejahteraan dan kemakmuran rakyat, mengusahakan pertahanan untuk menjaga kemungkinan serangan dari luar, dan menegakkan keadilan yang dilaksanakan melalui badan-badan peradilan.
Fungsi negara menurut Moh. Kusnardi, S.H. pada dasarnya hanya dua yaitu:
a. Melaksanakan ketertiban (law and order)
Untuk mencapai tujuan bersama dan mencegah bentrokan-bentrokan dalam masyarakat, negara harus melaksanakan ketertiban. Negara bertindak sebagai stabilisator.
b. Menghendaki kesejahteraan dan kemakmuran rakyat.
Setiap negara mencoba meningkatkan dan memperluas taraf kehidupan ekonomi masyarakat.

2. Tujuan Negara
Bercita-cita merupakan sesuatu yang wajar dalam kehidupan. Tujuan negara Indonesia sebagaimana tercantum di dalam Pembukaan UUD 1945 adalah melindungi segenap bangsa Indonesia dan seluruh tumpah darah Indonesia, memajukan kesejahteraan umum, mencerdaskan kehidupan bangsa, dan ikut melaksanakan ketertiban dunia yang berdasarkan kemerdekaan, perdamaian abadi, dan keadilan sosial.

C. Konsep Dasar Negara, Bangsa, dan Negara Bangsa

1. Nation (Bangsa)
Nation sering diartikan sebagai bangsa. Bangsa (nation) dapat didefinisikan sebagai sekumpulan orang yang memiliki kesamaan asal keturunan, adat, bahasa, dan sejarah, serta memiliki pemerintahan sendiri.
Dalam buku Kewarganegaraan karangan Suprapto, dikemukakan berbagai definisi negara menurut para ahli.
 Menurut Ernest Renant, bangsa adalah sekelompok manusia yang memiliki kehendak bersatu sehingga mereka merasa dirinya adalah satu.
 Menurut Renant lebih lanjut, “pemersatu bangsa bukanlah kesamaan bahasa atau kesamaan suku bangsa, akan tetapi, tercapainya hasil gemilang di masa lampau dan keinginan untuk mencapainya lagi di masa depan. Bangsa dapat terdiri dari ratusan, ribuan, bahkan jutaan manusia, tapi sebenarnya merupakan kesatuan jiwa. Apabila semua manusia yang hidup di dalamnya mempunyai kehendak untuk bersatu maka sudah merupakan suatu bangsa.
 Menurut Otto Bauer, bangsa adalah suatu persatuan karakter atau perangai yang timbul karena persaman nasib. Bangsa adalah kesatuan karakter, kesamaan watak yang lahir dari kesamaan derita dan keberuntungan yang sama.
 Hans Kohn mengartikan bangsa sebagai buah hasil tenaga hidup dalam sejarah dan karena itu selalu bergelombang dan tak pernah membeku. Sedangkan menurut Jalobsen dan Lipman, bangsa adalah kesatuan budaya dan kesatuan politik.
Dari berbagai definisi dari para ahli tersebut, dapat disimpulkan bangsa terdiri dari beberapa unsur, yaitu:
 Ada sekelompok manusia yang mempunyai keinginan untuk bersatu.
 Berada dalam suatu wilayah tertentu.
 Ada kehendak untuk membentuk atau berada dibawah pemerintahan yang dibuatnya sendiri.
 Secara psikologis, merasa senasib, sepenanggungan, setujuan dan secita-cita.
 Ada kesamaan karakter, identitas, budaya, bahasa, dan lain-lain sehingga dapat dibedakan dengan bangsa lainnya.




2. State (Negara)
Dalam buku Filsafat Pemerintahan, para ahli memberikan definisi mereka tentang negara, diantaranya:
 Aristoteles menyatakan bahwa negara adalah persekutuan dari keluarga dan desa guna memperoleh hidup yang lebih baik.
 Jean Bodin menyatakan, negara adalah suatu persekutuan dari keluarga-keluarga dengan segala kepentingannya yang dipimpin oleh akal dari suatu kuasa yang berdaulat.
 Herman Finer menyatakan, negara adalah organisasi kewilayahan yang bergerak di bidang kemasyarakatan dan kepenting a perseornangan dari segenap kehidupan yang multidimensional untuk pengawasan pemerintahan denga legalitas kekuasaa tertinggi.
 Roger H. Soltau menyatakan, negara adalah alat atau wewenang yang mengatur atau mengendalikan persoalan-persoalan bersama atas nama rakyat.
 Harold J. Laski menyatakan, negara adalah suatu masyarakat yang diintegrasikan karena mempunyai wewenang yang bersifat memaksa dan secara sah lebih agung daripada individu atau kelompok yang merupakan bagian dari masyarakat.
Berdasarkan beberapa pengertian diatas, secara sederhana Negara dapat diartikan sebagai suatu wilayah dengan yang di dalamnya terdapat rakyat dan pemerintah yang berdaulat. Rakyat atau warga negara harus taat pada peraturan perundang-undangan dari kekuasaan yang sah.
Unsur-unsur pembentuk.negara terdiri atas:
 Wilayah
Untuk mendirikan suatu negara dengan kedaulatan penuh diperlukan wilayah yang terdiri atas darat, laut dan udara sebagai satu kesatuan. Untuk wilayah yang jauh dari laut tidak memerlukan wilayah lautan. Di wilayah negara itulah rakyat akan menjalani kehidupannya sebagai warga negara dan pemerintah akan melaksanakan fungsinya.
 Rakyat
Diperlukan adanya kumpulan orang-orang yang tinggal di negara tersebut dan dipersatukan oleh suatu perasaan. Tanpa adanya orang sebagai rakyat pada suatu ngara maka pemerintahan tidak akan berjalan. Rakyat juga berfungsi sebagai sumber daya manusia untuk menjalankan aktivitas kehidupan sehari-hari.
 Pemerintahan yang Berdaulat
Pemerintahan yang baik terdiri atas susunan penyelengara negara seperti lembaga yudikatif, lembaga legislatif, lembaga eksekutif, dan lain sebagainya untuk menyelenggarakan kegiatan pemerintahan yang berdaulat.
 Pengakuan dari Negara Lain
Untuk dapat disebut sebagai negara yang sah membutuhkan pengakuan negara lain baik secara de facto (nyata) maupun secara de jure. Sekelompok orang bisa saja mengakui suatu wilayah yang terdiri atas orang-orang dengan sistem pemerintahan, namun tidak akan disetujui dunia internasional jika didirikan di atas negara yang sudah ada.

3. State-Nation (Negara bangsa)
Sebuah negara bangsa adalah negara dengan bangsa yang pada prinsipnya adalah tipe masyarakat yang sama, terorganisir oleh latar belakang suku atau budaya yang sama di suatu wilayah. Di sebuah negara bangsa, biasanya setiap orang akan berbicara dengan bahasa yang sama, menganut agama atau aliran agama yang sama, dan memiliki nilai budaya nasional.
Dengan demikian, dapat dikatakan bahwa Indonesia adalah suatu negara bangsa karena memiliki hampir semua ciri-ciri diatas. Contoh lainnya adalah Jepang, karena nasionalisme dan bahasa yang seragam.

D. Perbedaan Government dan Governance

1. Government (Pemerintah)
Government bisa diartikan sebagai pemerintah, yaitu organisasi yang memiliki kewenangan untuk membuat dan menerapkan hukum dan undang-undang. Pemerintah disini misalnya raja, presiden, walikota, bupati, dan sebagainya.
2. Governance (Pemerintahan)
Pemerintahan secara sederhana dapat diartikan sebagai proses pengambilan keputusan dan proses dimana suatu keputusan diterapkan atau tidak diterapkan . Pemerintahan digunakan dalam berbagai konteks seperti pemerintahan nasional, pemerintahan lokal, dan sebagainya. Dari definisi tersebut, maka analisis tentang pemerintahan berfokus pada aktor formal dan informal yang terlibat dalam pengambilan keputusan, penerapan keputusan yang telah dibuat, serta struktur formal dan informal yang telah diatur.
Pemerintah (government) adalah salah satu aktor dalam pemerintahan. Aktor lain yang terlibat dalam pemerintahan bermacam-macam, tergantung pada tingkat pemerintahan yang didiskusikan. Contohnya di daerah pedesaan, aktor lainnya mungkin termasuk tuan tanah, asosiasi petani dan peternak, industri, lembaga penelitian, dan lainnya. Di daerah perkotaan, tentunya lebih kompleks. Pemerintah mempunyai peran untuk menghubungkan antar aktor yang terlibat atau mempengaruhi pemerintahan.
Di tingkat nasional, para pelobi, donatur internasional, perusahaan multinasional, media massa, dan sebagainya mempunyai peran penting dalam proses pengambilan keputusan atau mempengaruhi proses pengambilan keputusan. Di beberapa negara, sebuah sindikat kriminal juga berpengaruh dalam proses pengambilan keputusan, hal ini kebanyakan terjadi di bagian perkotaan dan tingkat nasional. Semua aktor selain pemerintah dan militer termasuk bagian masyarakat sipil.

E. Bentuk-bentuk Pemerintahan
a. Aristrokrasi
Kata aristokrasi berasal dari kata “aristoi” artinya cerdik pandai, golongan ningrat (yang pada zaman dahulu jumlahnya sedikit), dan “archein” atau “cratia” artinya memerintah. Jadi aristokrasi adalah suatu pemerintahan yang dipimpin dan dipegang oleh sejumlah kecil para cerdik pandai yang memerintah berdasarkan keadilan.
b. Otokrasi
Otokrasi berasal dari kata “auto” yang artinya satu atau sendiri, dan “archein” atau “cratia” artinya memerintah. Jadi autokrasi berarti pemerintahan yang berada di tangan satu orang.
c. Demokrasi
Istilah demokrasi berasal dari kata “demos” artinya rakyat, dan “archein” atau “cratia” artinya memerintah. Jadi demokrasi adalah suatu pemerintahan yang dipegang oleh rakyat.
d. Monarki
Istilah monarki berasal dari kata “mono” artinya satu, dan “archein” atau “cratia” artinya memerintah. Jadi monarki adalah pemerintahan yang dijalankan oleh satu orang, yang berkuasa, berbakat, dan mempunyai sifat-sifat yang lebih unggul daripada warga Negara yang lain, sehingga mendapatkan kepercayaan untuk memerintah dan pemerintahannya ditujukan untuk kepentingan rakyat biasanya merupakan kerajaan.
e. Oligarki
Istilah oligarki berasal dari kata “oligos” artinya sedikit, kecil, dan “archein” atau “cratia” artinya memerintah. Jadi oligarki adalah pemerintahan yang dipegang oleh segolongan kecil yang memerintah demi kepentingan golongannya itu sendiri.




f. Teokrasi
Istilah teokrasi berasal dari kata “teo” artinya tuhan, dan “archein” atau “cratia” artinya memerintah. Jadi teokrasi adalah pemeritahan yang tidak secara langsung dikuasai oleh masalah-masalah keduniawian, terutama yang berhubungan dengan kepentingan-kepentingan material, melainkan pemerintahan yang ditinjau dari segi ketuhanan, dari segi agama.
Dari pembahasan diatas dapat disimpulkan, negara adalah suatu wilayah yang di dalamnya terdapat rakyat dan pemerintah yang berdaulat. Bangsa di negara tersebut merupakan rakyat atau warga negara harus taat pada peraturan perundang-undangan dari kekuasaan yang sah, dalam hal ini pemerintah. Pemerintah merupakan pihak yang berwenang untuk membuat dan menerapkan hukum di suatu wilayah, dan merupakan salah satu dari aktor yang berperan dalam pemerintahan. Pemerintahan sendiri memiliki berbagai macam bentuk, seperti aristokrasi, otokrasi, demokrasi, monarki, oligarki, dan teokrasi.


DAFTAR PUSTAKA

Haricahyono Cheppy. Bangsa dan Negara. Yogyakarta: Paradigma; 1991.
Kaelan.M.S. Pendidikan Yuridis Kenegaraan.Yogyakarta: Paradigma; 1996.
________. Negara dan Bangsa. Jakarta: Gramedia; 1998.
Marwati Djoned Poesponegor, Nugroho Notosusanto. Bangsa Indonesia. Jakarta: Balai Pustaka; 1984
________. Indonesia Indah. Jakarta: Yayasan Harapan Kita/Bp3 TMII
Koentjaraningrat. Manusia dan Kebudayaan Indonesia. Jakarta: PT. Gramedia; 1980.
Nopirin, Notonagoro. Beberapa Hal Mengenai Falsafah Pancasila. Cet. 9. Jakarta: Pancoran Tujuh.; 1980.
Http://jurnal-politik.blogspot.com/2009/08/negara-bangsa-dan-negara-bangsa.html
read more "Konsep Bangsa dan Negara"

Oh.... Betapa banyaknya orang meremehkanku tak
sedikitpun aku di butuhkan.Aku diam bukan berarti
kalah melainkan mengalah,diamku dianggap suatu ketidak
Kemampuan yang selama ini ku lakukan memang orang
memandang ku dari sudut kediaman mengapa mereka tidak
memandangku dari sudut mengapa atau karna apa aku diam.....

Tuhan ..... Engkau maha adil serta maha bijaksana,
mungkin engkau berkehendak begini terhadapku untuk
bekalku di masa depan...
Hari-hariku susah, tanpa suatu kesenangan.
kesenangan yang penuh dengan kesempurnaan,
kini aku berfikir "Apakah aku yang bodoh....
Ataukah merekah yang bodoh, merekah kebanyakan
melihat dari sudut kediamanku dan tak sedikitpun
mereka berfikir di dalam melihatnya, hanya satu
permintaan yang kuinginkan dari ku tuhan"
Semoga ku dapatkan barokahnya orang-orang
yang barokahkanku.

Amin... Ya Robbal Alamin
read more "Jeritan Hati"

Ada beberapa mahasiswa saya yang bertanya, “Pak… bisa tidak di MySQL diterapkan konsep Foreign Key dan Referential Integrity seperti halnya di MS. Access?”. Memang dalam MS. Access kita bisa melakukan setting relasi antar tabel, yang menggambarkan hubungan PRIMARY KEY dan FOREIGN KEY antar tabel.
Sebagai contoh, misalkan dalam kasus pengambilan matakuliah mahasiswa. Dalam kasus ini misalkan terdapat tabel induk bernama ‘MHS’ yang di dalamnya terdapat field NIM, NAMAMHS. Tabel induk yang lain adalah ‘MK’ untuk menyimpan data matakuliah dengan field-fieldnya KODEMK, NAMAMK. Dalam hal ini field NIM dan KODEMK masing-masing adalah primary key pada tabel ‘MHS’ dan ‘MK’. Selanjutnya ada tabel lain bernama ‘AMBILMK’ dengan field NIM, KODEMK, NILAI yang digunakan untuk menyimpan data pengambilan matakuliah mahasiswa. Nah… dalam hal ini, field NIM dan KODEMK keduanya adalah bertindak sebagai FOREIGN KEY.
Selanjutnya dalam MS. Access terdapat pula fasilitas untuk mengimplementasikan referensial integrity. Misalkan, kita ubah data salah satu kode NIM mahasiswa dalam tabel induk ‘MHS’. Nah… secara otomatis proses update ini juga terjadi di tabel ‘AMBILMK’ yaitu pada data yang terkait NIM tersebut. Begitu pula pada proses penghapusan. Sebagai contoh misalkan kita hapus salah satu kode matakuliah di tabel MK, maka secara otomatis data yang terkait dengan kode matakuliah tersebut pada tabel ‘AMBILMK’ akan terhapus.
Nah.. bagaimana dengan MySQL? Kira-kira bisa tidak diterapkan kedua hal di atas seperti halnya MS. Access? Saya jawab TENTU SAJA BISA.
Yang menjadi pertanyaan adalah, “Bagaimana cara melakukannya?”.
Ya… untuk menerapkan konsep FOREIGN KEY dan REFERENTIAL INTEGRITY ini, kita harus mensetting MySQL nya bisa support untuk tabel bertipe INNODB. Biasanya ketika proses instalasi MySQL akan ditanyakan apakah databasenya support dengan INNODB? Untuk hal ini, Anda harus jawab YA. Namun.. bila proses instalasi Anda terlanjur tidak memilih support INNODB, maka cara mengaktifkan INNODB adalah buka file “my.ini” lalu cari baris perintah “skip-innodb”. Hapuslah perintah ini, lalu hentikan MySQL dan hidupkan kembali MySQL (restart MySQL).
OK… sekarang kita coba untuk studi kasus. Kita akan membuat database untuk keperluan pengambilan matakuliah mahasiswa seperti pada kasus di atas. Berikut ini, adalah perintah SQL untuk membuat tabel-tabelnya.
Perintah SQL untuk membuat tabel ‘MHS’
1.CREATE TABLE mhs
2.(
3.  nim  varchar(8),
4.  namaMhs varchar(20),
5.  PRIMARY KEY (nim)
6.) TYPE = INNODB;
Perintah SQL untuk membuat tabel ‘MK’
1.CREATE TABLE mk
2.(
3.  kodeMK  varchar(3),
4.  namaMK varchar(20),
5.  PRIMARY KEY (kodeMK)
6.) TYPE = INNODB;
Perhatikan kedua perintah SQL di atas. Karena kita akan membuat tabel bertipe INNODB, maka masing-masing perintah SQL diberikan perintah TYPE = INNODB;
Sekarang, kita lanjutkan untuk membuat tabel untuk ‘ambilMK’.
01.CREATE TABLE ambilMK
02.(
03.  nim  varchar(8),
04.  kodeMK varchar(3),
05.  nilai float(3,2),
06.  PRIMARY KEY (nim, kodeMK),
07.  FOREIGN KEY (nim) REFERENCES mhs (nim) ON DELETE CASCADE ON UPDATE CASCADE,
08.  FOREIGN KEY (kodeMK) REFERENCES mk (kodeMK) ON DELETE CASCADE ON UPDATE CASCADE
09.) TYPE = INNODB;
Tabel di atas terdapat dua primary key yaitu NIM dan KODEMK. Sedangkan field NIM ini juga merupakan foreign key yang direferensikan dari field NIM yang ada dalam tabel MHS. Oleh karena itu tambahkan perintah “FOREIGN KEY (nim) REFERENCES mhs (nim)”. Selanjutnya apa maksud dari “ON DELETE CASCADE”? Perintah ini maksudnya bila ada data NIM yang dihapus pada tabel MHS, maka secara otomatis data NIM yang ada dalam tabel AMBILMK ini juga akan terhapus. Sedangkan “ON UPDATE CASCADE” digunakan untuk proses update otomatis pada NIM dalam tabel AMBILMK, apabila NIM yang ada di tabel MHS ini diupdate.
Hal yang sama juga kita terapkan untuk tabel AMBILMK. Dalam hal ini, KODEMK adalah sebagai foreign key yang direfensikan dari KODEMK yang ada dalam tabel MK.
Sekarang coba Anda masukkan data-data berikut ini pada tabel MHS
1.NIM       NAMAMHS
2.M0197001  Rosihan Ari Yuana
3.M0197002  Dwi Amalia Fitriani
4.M0197003  Faza Fauzan
5.M0197004  Nada Hasanah
6.M0197005  Muh. Ahsani Taqwim
Masukkan pula data pada tabel MK
1.KODEMK    NAMAMK
2.M01       Database
3.M02       OOP
Nah… untuk mengecek referensial integrity, sekarang kita coba masukkan data pada tabel AMBILMK.
1.INSERT INTO ambilmk VALUES ('M0197001', 'M01', 3.0);
Ketika perintah SQL di atas dijalankan, data dapat dimasukkan ke tabel AMBILMK dengan sukses. Kita lihat bahwa NIM M0197001 terdapat dalam tabel MHS, begitu pula pada kode matakuliah M01 yang ada pada tabel MK.
Sehingga isi tabel AMBILMK menjadi
1.NIM       KODEMK    NILAI
2.M0197001  M01       3.0
Sekarang kita coba masukkan data berikut ini
1.INSERT INTO ambilmk VALUES ('M0197006', 'M01', 3.0);
Nah… perintah di atas akan menghasilkan error. Hal ini disebabkan NIM M0197006 tidak ada dalam tabel MHS.
Sekarang kita coba melakukan proses update. Kita akan mengupdate NIM M0197001 menjadi M0197010 yang ada dalam tabel MHS.
1.UPDATE mhs SET nim = 'M0197010' WHERE nim = 'M0197001';
Hasil query di atas pada tabel MHS menjadi
1.NIM       NAMAMHS
2.M0197010  Rosihan Ari Yuana
3.M0197002  Dwi Amalia Fitriani
4.M0197003  Faza Fauzan
5.M0197004  Nada Hasanah
6.M0197005  Muh. Ahsani Taqwim
Sekarang Anda coba lihat isi tabel AMBILMK. Pastilah isinya menjadi berikut ini
1.NIM       KODEMK    NILAI
2.M0197010  M01       3.0
Selanjutnya kita coba update untuk KODEMK yang ada dalam tabel MK. Misalnya akan diubah kode mk M01 menjadi M09.
1.UPDATE mk SET kodeMK = 'M09' WHERE kodeMK = 'M01';
Hasil query di atas pada tabel MK adalah
1.KODEMK    NAMAMK
2.M09       Database
3.M02       OOP
Nah… bila kita lihat data di tabel AMBILMK, pastilah isinya menjadi
1.NIM       KODEMK    NILAI
2.M0197010  M09       3.0
Bagaimana dengan proses penghapusan? Kita cek aja… sekarang kita coba hapus data mahasiswa berNIM M0197010 dalam tabel MHS.
1.DELETE FROM mhs WHERE nim = 'M0197010';
Hasil dari query SQL di atas pada tabel MHS adalah
1.NIM       NAMAMHS
2.M0197002  Dwi Amalia Fitriani
3.M0197003  Faza Fauzan
4.M0197004  Nada Hasanah
5.M0197005  Muh. Ahsani Taqwim
Sekarang bila kita lihat isi tabel AMBILMK, pastilah menjadi kosong karena data pengambilan matakuliah terkait dengan mahasiswa NIM M0197010 ini ikut terhapus.
OK… begitulah penjelasan ini saya tulis. Moga-moga bermanfaat bagi mahasiswaku semua… terus semangat belajar dan pantang menyerah. Indonesia sangat membutuhkanmu :-)
read more "Foreign Key, Relationship dan Referential Integrity di MySQL"

Pada bagian ini, kita membahas bagaimana cara mengakses tabel yang ada di database MS Access dari database Oracle. Untuk mendemokan hal ini, penulis menggunakan MS Access Office 2003 dan Oracle 10g R2 Database. Mari langsung saja kira mempraktekkannya.
Persiapan MS Access
1. Buat database dbtest di MS ACCESS dengan nama dbtest dan simpan file mdb-nya di C:\dbtest.mdb
2. Buat tabel PESERTA dan isi data berikut:
Tabel PESERTA beserta isinya
Buat koneksi ODBC
1. Control Panel –> Administrative Tools –> Data Source (ODBC)
2. Pada tab System DSN, klik Add dan pilih “Drive do Microsoft Access (*.mdb) “, klik Finish
  • Data Source Name : ODBCACC
  • Description : Untuk koneksi dengan Oracle
  • Klik  button Select dan pilih file *.mdb untuk database “c:\dbtest.mdb” yang sudah dibuat sebelumnya
Konfigurasi ODBC
Klik OK
Menyiapkan Oracle Server
Pastikan yang anda Install adalah Oracle Server, bukan Oracle Client. Karena Oracle client tidak ada Heterogeneous Services  (folder $ORACLE_HOME\hs).
Edit file LISTENER.ORA, tambahkan SID_NAME “hsodbc” sebagai berikut :
SID_LIST_LISTENER =
   (SID_LIST =
     (SID_DESC =
       (SID_NAME = PLSExtProc)
       (ORACLE_HOME = C:\oracle\product\10.2.0\db_1)
       (PROGRAM = extproc)
     )
       (SID_DESC =
       (SID_NAME = hsodbc)
       (ORACLE_HOME = C:\oracle\product\10.2.0\db_1)
       (PROGRAM = hsodbc)
     )
)
LISTENER =
   (DESCRIPTION_LIST =
      (DESCRIPTION =
       (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
       (ADDRESS = (PROTOCOL = TCP)(HOST = aspire5050)(PORT = 1521))
      )
   )
STOP dan START listener. Gunakan Services dari Windows atau tools LSNRCTL
C:\LSNRCTL [enter]
LSNRCTL> STOP
LSNRCTL> START
Konfigurasi Heterogeneous Services  (HS)
Edit file file ORACLE_HOME\hs\admin\inithsodbc.ora dan tambahkan nama ODBC System DNS yang dibuat sebelumnya dalam hal ini adalah ODBCACC
HS_FDS_CONNECT_INFO = odbcacc
HS_FDS_TRACE_LEVEL = off
Konfigur koneksi dari Oracle
Untuk koneksi ke MS Access kita juga perlu mengubah file TNSNAMES.ORA untuk mendefinisikan host string.
Tambahkan koneksi “msaccess.world” seperti berikut pada file tnsnames.ora:
msaccess.world =
(DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = aspire5050) (PORT = 1521))
    (CONNECT_DATA =(SID = hsodbc))
    (HS=OK)
)
Gunakan TNSPING untuk menguji koneksi yang baru dibuat. Pastikan koneksi berhasil
C:\tnsping access_db.world
Buat database link di database Oracle
SQL> connect system/oracle
Connected.

SQL> CREATE DATABASE LINK db_access USING 'msaccess.world';
Database link created.
Akses tabel di MS Access dari Oracle
Query ke tabel PESERTA yang ada di MS Access dengan cara berikut :
SQL> SELECT * from peserta@db_access;

ID         NAMA                                                    NILAI
---------- -------------------------------------------------- ----------
1000       MEUTIA                                                    800
1001       AMAURA                                                    750
1002       TONY                                                      850
Selesai, materi cara koneksi dari Oracle ke MS Access.
read more "Koneksi dari Oracle ke MS Acces dengan Heterogeneous Services"

Sebagai DBA, tugas kita adalah mengamankan atau menjaga data dari kerusakan sehingga database bisa memberikan data yang valid. Dalam operasional bisa saja user melakukan kesalahan dalam melakukan update data sehingga data yang disajikan menjadi salah. Jika perubahan belum dibuat permanen (commit) perubahan tersebut masih bisa dibatalkan (rollback). Tentunya akan menjadi masalah besar jika perubahan baru disadari setelah beberapa jam, hari atau bulan. User yang mengupdate juga sudah lupa kapan melakukan kesalahan update. Tentunya ini akan menambah pusing DBA karena untuk mencari kapan persisnya kesalahan update itu terjadi.
Untuk Oracle 10g, DBA gak perlu pusing lagi, karena Oracle 10g menyediakan fitur Flashback Query, Flashback Version Query dan Flashback Transaction Query untuk melakukan pelacakan perubahan data yang terjadi.
  • Flashback Query
Fitur ini digunakan untuk mengetahui data (nilai suatu kolom) pada suatu waktu tertentu.
  • Flashbak Version Query
Fitur ini untuk mengetahui perubahan data yang terjadi antara waktu t1 sampai waktu t2
  • Flashback Transaction Query
untuk mengetahui semua perubahan yang disebabkan oleh satu transaction ID
Berikut ini adalah demo bagaimana cara melacak perubahan data dengan Flashback Query dan Flashback Transaction Query.
Login ke database sebagai user SCOTT
CONNECT SCOTT/TIGER;
create table peserta
(ID    NUMBER(4),
 NAMA  CHAR(15),
 NILAI NUMBER(4)) TABLESPACE USERS;
INSERT INTO PESERTA VALUES(1,'BUDI',60);
INSERT INTO PESERTA VALUES(2,'DINA',75);
COMMIT;
– Tunggu sekitar 1 menit
UPDATE PESERTA SET NILAI=65 WHERE ID=1;
INSERT INTO PESERTA VALUES(3,'MAWAR',68);
COMMIT;
– Tunggu sekitar 1 menit
UPDATE PESERTA SET NILAI=70 WHERE ID=1;
INSERT INTO PESERTA VALUES(4,'MAWARDI',80);
COMMIT;
– Lihat data di tabel PESERTA
SQL> SELECT * FROM PESERTA;

        ID NAMA                 NILAI
---------- --------------- ----------
         1 BUDI                    70
         2 DINA                    75
         3 MAWAR                   68
         4 MAWARDI                 80
– Tunggu sekitar 1 menit
– User melakukan kesalahan UPDATE.
UPDATE PESERTA SET NILAI=90;
COMMIT;
– sehingga data pada tabel PESERTA menjadi :
SQL> SELECT * FROM PESERTA;
ID NAMA                 NILAI
---------- --------------- ----------
         1 BUDI                    90
         2 DINA                    90
         3 MAWAR                   90
         4 MAWARDI                 90
– FLASHBACK VERSION QUERY berdasarkan WAKTU
COL AWAL FORMAT A20
COL AWAL FORMAT A20
COL NAMA FORMAT A5
SET LINESIZE 120
SELECT ID,NAMA,NILAI,
       VERSIONS_STARTSCN SCA_AWAL,
       VERSIONS_ENDSCN SCN_AKHIR,
       TO_CHAR(VERSIONS_STARTTIME,'DD-MM-YY:HH24:MI:SS') AWAL,
       TO_CHAR(VERSIONS_ENDTIME,'DD-MM-YY:HH24:MI:SS') AKHIR
FROM PESERTA
VERSIONS BETWEEN SCN MINVALUE AND MAXVALUE
WHERE ID=1;
ID NAMA      NILAI AWAL                 AKHIR
----- ----- --------- ----------------- -----------------
    1 BUDI         90 06-03-09:09:25:19
    1 BUDI         70 06-03-09:09:23:37 06-03-09:09:25:19
    1 BUDI         65 06-03-09:09:20:55 06-03-09:09:23:37
    1 BUDI         60                   06-03-09:09:20:55
– FLASHBACK VERSION QUERY berdasarkan SCN
SELECT ID,NAMA,NILAI,
       VERSIONS_STARTSCN SCA_AWAL,
       VERSIONS_ENDSCN SCN_AKHIR
FROM PESERTA
VERSIONS BETWEEN SCN MINVALUE AND MAXVALUE
WHERE ID=1;
ID NAMA      NILAI   SCA_AWAL  SCN_AKHIR
----- ----- --------- ---------- ----------
    1 BUDI         90    1380320
    1 BUDI         70    1380102    1380320
    1 BUDI         65    1379304    1380102
    1 BUDI         60               1379304
– FLASHBACK QUERY
SELECT * FROM PESERTA
AS OF TIMESTAMP
TO_TIMESTAMP('06-MAR-2009:09:24:00','DD-MON-YYYY:HH24:MI:SS');
ID NAMA                 NILAI
------ --------------- ----------
     1 BUDI                    70
     2 DINA                    75
     3 MAWAR                   68
     4 MAWARDI                 80
SELECT * FROM PESERTA
AS OF SCN 1380102;
ID NAMA                 NILAI
------ --------------- ----------
     1 BUDI                    70
     2 DINA                    75
     3 MAWAR                   68
     4 MAWARDI                 80
SQL> SELECT * FROM PESERTA
  2  AS OF TIMESTAMP TO_TIMESTAMP('04-DEC-2008','DD-MON-YYYY');
ID NAMA            NILAI
---------- ---------- ----------
         1 BUDI               80
– FLASHBACK TABLE
SQL> ALTER TABLE PESERTA ENABLE ROW MOVEMENT;
Table altered.
– KEMBALIKAN TABEL KE KONDISI JAM ‘06-MAR-2009:09:24:00′
– ATAU SCN 1380102
FLASHBACK TABLE PESERTA TO TIMESTAMP
TO_TIMESTAMP('06-MAR-2009:09:24:00','DD-MON-YYYY:HH24:MI:SS');
Flashback complete.
– ATAU BERDASARKAN SCN
– FLASHBACK TABLE PESERTA TO SCN 1380102
SELECT * FROM PESERTA;
ID NAMA                 NILAI
------ --------------- ----------
     1 BUDI                    70
     2 DINA                    75
     3 MAWAR                   68
     4 MAWARDI                 80
Jika Anda ingin mengembalikan semua kondisi database ke waktu sebelumnya gunakan Flashback Database.
Selamat Mencoba
read more "Melacak Perubahan Data"

Flashback database merupakan fitur baru dalam Oracle 10g, dengan flashback database kita bisa mengembalikan database ke kondisi tertentu berdasarkan waktu atau SCN. Flashback database digunakan untuk melakukan recovery database karena user melakukan truncate large table, drop user atau terjadi kesalahan transaksi yang sangat kompleks sehingga terlalu sulit untuk telusuri.
Walaupun flashback database lebih mudah dan lebih simple dibandingkan dengan INCOMPLETE RECOVERY namun ada keterbatasan terhadap flashback database. Flashback database tidak bisa dilakukan dalam kondisi seperti:
  • Kerusakan media disk, kita tetap harus melakukan restore file database dari media backup dan melakukan recovery baik complete ataupun incomplete
  • Datafile sudah berubah ukuran menjadi lebih kecil atau biasa disebut shrinking datafiles (defrag datafile)
  • Control baru direstore atau recreate
  • Drop tablespace dan recovery dengan OPEN RESETLOGS
  • Tidak bisa melakukan flashback database ke SCN yang lebih kecil dari SCN yang ada di flashback log
KONFIGURASI FLASHBACK
Secara default database yang kita buat belum bisa untuk melakukan flashback database. Kita harus melakukan beberapa konfigurasi dulu
1. SETTING ARCHIVELOG MODE DATABASE
Flashback database mensyaratkan database harus ARCHIVELOG. Untuk mengetahui apakah database sudah archivelog atau belum, cek dengan perintah berikut:
SQL> ARCHIVE LOG LIST;
Database log mode              Archive Mode
Automatic archival             Enabled
Archive destination            USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence     1
Next log sequence to archive   3
Current log sequence           3
Info diatas menunjukkan database sudah ARCHIVELOG. Jika belum lakukan konfigurasi dengan cara seperti berikut :
SQL> SHUTDOWN IMMEDIATE;
SQL> STARTUP MOUNT ;
SQL> ALTER DATABASE ARCHIVELOG ;
SQL> ALTER DATABASE OPEN ;
2. SETTING UKURAN FLASH RECOVERY AREA
SQL> SHOW PARAMETER db_recovery_file_dest_size;
NAME                                 TYPE        VALUE
------------------------------------ ----------- ------
db_recovery_file_dest_size           big integer 2G
Ukuran flash recovery area adalah 2 GB, jika ukuran dirasa kurang, flash recovery area bisa dibesarkan dengan perintah :
SQL> ALTER SYSTEM SET db_recovery_file_dest_size=3G;
System altered.
3. SETTING RETENTION FLASHBACK
Misalkan maksimum bisa flashbak sampai 2 hari ke belakang.
SQL> ALTER SYSTEM SET
2  DB_FLASHBACK_RETENTION_TARGET=2880
3  SCOPE=BOTH; System altered.

4. AKTIFKAN FITUR FLASHBACK DATABASE

SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup mount;
ORACLE instance started.
Total System Global Area  272629760 bytes
Fixed Size                  1248504 bytes
Variable Size              88081160 bytes
Database Buffers          180355072 bytes
Redo Buffers                2945024 bytes
Database mounted.     

SQL> alter database flashback on;
Database altered.
SQL> alter database open;
Database altered.
MONITORING FLASHBACK
Flashback database bisa dimonitor melalui dynamic view V$DATABASE, V$FLASHBACK_DATABASE_LOG dan V$FLASHBACK_DATABASE STATS.
View V$DATABASE menampilkan informasi apakah Flashback Database enable atau disable, jika enable bernilai YES dan disable bernilai NO.
SQL> select flashback_on from v$database;
FLASHBACK_ON
------------------
YES
View V$FLASHBACK_DATABASE_LOG view baru di Oracle 10g dan dibuat untuk mendukung fasilitas Flashback Database. Informasi dari view ini adalah total space yang diperlukan di recovery area untuk mendukung aktifitas flashback database. View ini juga menampilkan ukuran flashback data yaitu pada kolom FLASHBACK_SIZE. Kolom ESTIMATED_FLASHBACK_SIZE digunakan untuk menentukan perkiraan ukuran flashback data yang diperlukan untuk setting retention target yang sudah kita lakukan.
SQL> select
2  oldest_flashback_scn AS OLD_SCN,
3  TO_CHAR(oldest_flashback_time,'DD-MM-YYYY:HH24:MI:SS') AS OLD_TIME,
4  retention_target as RET_TARGET,
5  estimated_flashback_size,
6  FLASHBACK_SIZE
7  from v$flashback_database_log;
OLD_SCN         OLD_TIME RET_TARGET EST_FB_SIZE FLASHBACK_SIZE
------- ---------------- ---------- ----------- --------------
741507 02-10-2007:13:16       2880           0        8192000
Database Anda sudah siap untuk fitur FLASHBACK DATABASE.
Untuk demo melakukan flasback datbabase silahkan download disini.
read more "Flashback Database"

Database Oracle dibagi dalam dua bagian besar yaitu Instance dan Database. Instance merupakan struktur memori dan background process yang mengurusi kegiatan database, sedangkan database adalah kumpulan dari beberapa jenis file untuk menyimpan data baik data aplikasi maupun metadata. Data yang ada di database tidak akan bisa diakses jika instance suatu database tidak aktif (open). Artinya file-file database tidak akan berguna jika instancenya tidak aktif.
Di kalangan Oracle DBA tentunya sudah tidak asing lagi dengan kata ”startup” dan ” shutdown”   database.
Pada dasarnya proses startup dan shutdown jarang dilakukan karena sudah seharusnya server database support untuk operasional selama 24 jam nonstop. Walaupun begitu startup dan shutdown database diperlukan untuk maintenance database seperti closed recovery dan konfigurasi fitur database lainnya.
STARTUP
Proses startup database dibagi dalam tiga tahapan, yaitu :
  • NOMOUNT, pada tahap ini yang dibaca adalah parameter file dan System Global Area(SGA) dialokasikan di memori.
Perintah : STARTUP NOMOUNT
  • MOUNT, control file yang terdaftar di parameter file dibaca dan diperiksa sinkron atau tidak.
Perintah : STARTUP MOUNT
  • OPEN, pada tahap ini semua datafile yang statusnya ONLINE diperiksa keberadaannya dan  konsistensinya.
Perintah : STARTUP OPEN atau STARTUP
Untuk startup dan shutdown database adalah user dengan privilege SYSDBA atau SYSOPER.  Secara default user yang mempunyai privilege tersebut adalah user SYS.
Melakukan STARTUP database, asumsi database sedang tidak aktif (shutdown).
1. Tentukan database yang akan di startup, misal nama database dbtest
C:\>set ORACLE_SID=dbtest
2. Jalankan SQL*Plus dan login sebagai user SYS
C:\>sqlplus sys as sysdba
SQL*Plus: Release 10.2.0.1.0 - Production on Tue Feb 17 14:34:10 2009 Copyright (c) 1982, 2005, Oracle. All rights reserved.
Enter password: ********
Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production With the Partitioning, OLAP and Data Mining options
SQL>
3. Startup database sesuai dengan tahap yang diinginkan.
SQL> startup
Untuk pindah ke satu tahapan diatasnya gunakan perintah ALTER DATABASE.  misalkan saat ini status instance database NOMOUNT, maka untuk pindah ke tahap MOUNT gunakan perintah :
SQL> alter database mount;
Perintah ALTER DATABASE  hanya bisa untuk pindah ke tahap yang lebih tinggi misal dari NOMOUNT ke MOUNT dan dari MOUNT ke OPEN, tidak bisa sebaliknya.
SHUTDOWN
Shutdown database ada empat jenis dengan karakteristik yang berbeda pada setiap jenisnya, yaitu normal, transactional, immediate dan abort.
Shutdown Normal
  • semua koneksi baru digagalkan
  • user yg sedang konek akan ditunggu sampai disconnect
  • user yg sedang melakukan transaksi akan ditunggu sampai selesai
  • melakukan checkpoint
SQL> shutdown normal;
– atau
SQL> shutdown
Shutdown Transaksional
  • semua koneksi baru digagalkan
  • user yg sedang konek tidak melakukan kegiatan apapun akan disconnect
  • user yg sedang melakukan transaksi akan ditunggu sampai selesai
  • melakukan checkpoint
SQL> shutdown transactional;
Shutdown Immediate
  • semua koneksi baru digagalkan
  • user yg sedang konek tidak melakukan kegiatan apapun akan disconnect
  • user yg sedang melakukan transaksi dibatalkan
  • melakukan checkpoint
SQL> shutdown immediate;
Shutdown Abort
  • tidak melakukan pengecekan apapun
  • langsung shutdown
  • pengecekan dilakukan pada saat startup berikutnya.
SQL> shutdown abort;
RESTART DATABASE
Restart database diperlukan jika Anda melakukan perubahan parameter database statik seperti merubah ukuran maxsimum SGA (SGA_MAX_SIZE).
Untuk restart database gunakan perintah :
SQL> startup FORCE;
Selamat mencoba
read more "Startup dan Shutdown Database"