Pemograman Web

Server side dan Client side


Halaman web statis telah berubah menjadi dinamis. Dinamis artinya dapat menampilkan isi yang berbeda ketika mengakses pada waktu yang berbeda pula. Pada dasarnya saat ini pemrograman web dibagi menjadi 2 kelompok, yaitu : client side programming (HTML, CSS, Javascript, Jscript, VBScript) dan server side programming (PHP,ASP,JavaServelet, SGI, Perl)



Perbedaan utama server-side programming dan client server programming adalah tempat mengeksekusi skripnya. Pada client server programming, skrip dieksekusi di browser sedangkan server side programming dieksekusi di client (web browser)



Karakteristik client –side scripting :

1.       Kode program didownload bersama dengan halaman web

2.       Bersifat interpreter dan diterjemahkan oleh browser

3.       Model eksekusinya simple dan skrip dapat dijadikan satu dengan HTML



Karakteristik server side programming :

1.       Ada client yang meminta request

2.       Eksekusi program dilakukan di server

3.       Mengirimkan hasil ke client



Keuntungan server side programming :

Cross platform : tidak tergantung dengan browser tertentu

1.       Optimasi danpemeliharaan dilakukan di browser

2.       Dapat mengakses database dan tidak tergantung dengan keamanan

3.       Menambah kekuatan server

4.       Kode program aman



Aplikasi yang sering digunakan oleh server side programming

1.       Search engines

2.       Database access

3.       Chat & bulletin board service



Terkait dengan kebutuhan user yang ingin web yang lebih interakti f, nyaman, cepat dan mudha digunakan, maka saat ini muncullah teknik pemrograman baru disebut AJAX (Asynchronous JavaScript And XML). Dikenal juga dengan istilah Web 2.0. Pasti anda tertarik mempelajarinya. Sebab dengan teknik ini sebagian besar interaksi pada computer webserver, melakukan pertukaran data dengan server dibelakang layar sehingga halaman web dapat tidak harus dibaca ulang setiap kali pengguna melakukan perubahan. 


Basis Data

Pengenalan MySQL Database Server


MySQL merupakan salah satu program pengolah basis data yang cukup terkenal dikalangan pembuat web (web master) hal ini disebabkan beberapa faktor:
  • Free license (open source), sehingga sebagai pengembang web tidak perlu khawatir dengan masalah lisensi. Namun harus dilihat lagi lebih detail bagaimana end user license agreement-nya di situs resmi mysql (www.mysql.com)
  • Ukuran file datanya relatif kecil.
  • Performance-nya cukup baik.
  • Pengoperasiannya mudah bahkan dengan banyaknya program client berbasis GUI (graphical user interface) membuat user lebih mudah dalam mengolah data di mysql.
  • Banyaknya dukungan server web hosting di internet yang menggunakan mysql sebagai DBMS-nya, arsitekturnya sudah berbasis client-server.
  • Termasuk kategori database server sehingga fitur-fitur yang berhubungan dengan database server sudah terdapat didalamnya. diantaranya fitur multi-concurent user, hot backup dan cold backup, recovery.
Untuk mendapatkan program master mysql dapat di download melalui situs resmi mysql, yaitu: http://www.mysql.com. Untuk file distribusi yang disediakan cukup banyak pilihannya. mulai dari plattform apa yang digunakan (sistem operasi), jenis file distribusi (versi instalasi atau versi no-install dalam file terkompresi).
Selain mengakses melalui console/ shell dengan menggunakan command text, mysql juga dapat diakses menggunakan program client berbasis GUI yang saat ini banyak di kembangkan oleh komunitas open source di internet. Berikut adalah contohnya: MySQL-Front (desktop-based), PHPMyAdmin (web-based). Dengan menggunakan program berbasis GUI tersebut pengguna database ini lebih mudah dan dimanjakan dengan tampilannya yang visual dan user friendly. Namun yang perlu diperhatikan walaupun program GUI seperti ini mempermudah user dalam mengoperasikan mysql tentu saja tidak semua fitur-fitur yang terdapat di dalam mysql sudah didukung oleh program GUI tersebut. Hal ini disebabkan program GUI tersebut masih dalam pengembangan dan dibuat oleh komunitas open source yang tentu saja memerlukan waktu untuk menjadi versi release (final).
Berikut adalah beberapa contoh perintah dasar di MySQL menggunakan command shell text:
  • Menjalankan service MySQL, sebelum login kedatabase mysql terlebih dahulu service mysql dijalankan. biasanya service ini diaktifkan secara otomatis oleh MySQL ketika pertama kali di install. Jika otomatis dijalankan, maka service ini akan aktif secara otomatis ketika sistem operasi start up/ jalan.
C:\MySQL\Bin> mysqld [enter]
  • Menjalankan / Login ke MySQL. Untuk login ke mysql perintah yang digunakan adalah [mysql] lalu diikuti parameter [-h] untuk host tempat dimana mysql tersebut di install, misal: localhost. [-u] untuk username dari user yang punya akses ke mysql, defaultnya adalah user: root atau tanpa username. [-p] untuk password dari user yang berhak mengakses mysql, defaultnya: root atau tanpa password.
C:\MySQL\Bin>mysql -h [host] -u [username] -p [enter]
masukkan password:
  • Keluar/ Logout dari MyQSL
MySQL> exit [enter] atau
MySQL> quit [enter] atau
MySQL> \q [enter]
  • Menampilkan versi database MySQL yang di install
MySQL> SHOW VERSION; [enter]
  • Menampilkan daftar database yang ada dalam MySQL
MySQL> SHOW DATABASES; [enter]
  • Memilih/ mengaktifkan database yang akan digunakan
MySQL> USE [nama database yang akan di aktifkan]; [enter]
  • Menampilkan daftar tabel yang ada dalam database yang aktif
MySQL> SHOW TABLES; [enter]
  • Melihat struktur tabel [misal: tabel mahasiswa]
MySQL> DESC mahasiswa; [enter]
  • Melakukan backup database (dumping)
C:\MySQL\Bin>mysqldump -h [host] -u [username] [database-source] > “path”  [enter]
keterangan: database-source diisi dengan nama database yang akan di backup, path diisi dengan lokasi dan nama file tempat file backup  dibuat.
contoh:
C:\MySQL\Bin>mysqldump -h localhost -u root akademik > “d:\akademik.sql”  [enter]
  • Melakukan restore database
C:\MySQL\Bin>mysql -h localhost -u root akademik < “d:\akademik.sql”  [enter]
keterangan: tanda “<” [kurang dari] = memasukkan database dari luar. pada contoh nama file backupnya “akademik.sql” dan nama database tujuan didalam mysql “akademik”
  • Membuat user baru sekaligus memberikan hak akses
MySQL> GRANT ALL PRIVILEGES ON *.* TO ‘rudy’ IDENTIFIED BY ‘rudy’; [enter]
keterangan: GRANT = perintah untuk memberikan hak akses, ALL = semua hak akses (administrator) diberikan kepada user, *.* = diijinkan untuk mengakses semua database dan semua tabel didalam database mysql, TO ‘rudy’ = user name-nya rudy, IDENTIFIED BY ‘rudy’ = passwordnya adalah rudy dengan menggunakan fungsi enkripsi password yang tersapat di mysql.
  • Mengambil hak akses user yang telah diberikan sebelumnya
MySQL> REVOKE ALL PRIVILEGES FROM ‘rudy’; [enter]
keterangan: fungsi REVOKE adalah perintah untuk mengambil kembali hak akses seorang user yang diberi hak akses didalam database mySQL. penambahan atribut ALL artinya semua hak akses yang pernah diberikan kepada user tersebut akan di cabut/ ambil semuanya. fungsi ini hanya mengambil kembali hak akses user tersebut tetapi tidak menghapus account user tersebut dari daftar user yang terdapat didalam tabel user didalam database mySQL. Jadi user tersebut tetap terdaftar didalam daftar user mySQL tetapi sudah tidak memiliki hak akses lagi didalam database. Untuk melakukan penghapusan account user tersebut secara permanen dari daftar user di database mySQL, maka harus dilakukan proses penghapusan secara manual menggunakan perintah SQL DELETE.
  • Mengetahui User yang Terdaftar di Database mySQL
Login ke Database mySQL terlebih dahulu sebagai administrator,
Aktifkan database mySQL menggunakan perintah: USE mysql; [enter]
Tampilkan daftar tabel-tabel didalam database mySQL yang sudah aktif: SHOW TABLES; [enter]
Dari semua tabel yang ditampilkan didalam database mySQL, terdapat tabel ‘user’ yang menyimpan informasi semua user yang terdaftar dan hak aksesnya apa saja.
Tampilkan semua user yang ada didalam tabel user: SELECT * FROM user; [enter]
Jika terlalu banyak kolom yanng ditampilkan, maka dapat dipilih kolom-kolom tertentu saja yang ingin ditampilkan dari tabel ‘user’ tersebut.
misal: SELECT user, password, host FROM user; [enter]
perintah diatas adalah perintah untuk menampilkan semua user yang terdaftar didalam tabel ‘user’ dengan menampilkan informasi username, passwordnya, dan host masing-masing user tersebut.
  • Beda Host [localhost] dan Host [AnyHOst/ %] pada kolom Host di tabel ‘user’
Jika dari daftar user yang ditampilkan dari tabel ‘user’ ada informasi localhost pada host user tersebut, itu berarti user tersebut hanya dapat mengakses/ login ke database server mySQL di komputer host/ komputer dimana database mySQL tersebut di install dan tidak dapat diakses secara remote/ jarak jauh. Jika ada informasi simbol ‘%’ atau persen pada bagian host user tersebut itu artinya anyhost, bahwa user tersebut dapat mengakses database server mySQL baik secara localhost maupun secara remote/ jarak jauh.


Basis Data

Pengenalan MySQL Database Server

by rudy@nto on Nov.16, 2009, under Basis Data
MySQL merupakan salah satu program pengolah basis data yang cukup terkenal dikalangan pembuat web (web master) hal ini disebabkan beberapa faktor:
  • Free license (open source), sehingga sebagai pengembang web tidak perlu khawatir dengan masalah lisensi. Namun harus dilihat lagi lebih detail bagaimana end user license agreement-nya di situs resmi mysql (www.mysql.com)
  • Ukuran file datanya relatif kecil.
  • Performance-nya cukup baik.
  • Pengoperasiannya mudah bahkan dengan banyaknya program client berbasis GUI (graphical user interface) membuat user lebih mudah dalam mengolah data di mysql.
  • Banyaknya dukungan server web hosting di internet yang menggunakan mysql sebagai DBMS-nya, arsitekturnya sudah berbasis client-server.
  • Termasuk kategori database server sehingga fitur-fitur yang berhubungan dengan database server sudah terdapat didalamnya. diantaranya fitur multi-concurent user, hot backup dan cold backup, recovery.
Untuk mendapatkan program master mysql dapat di download melalui situs resmi mysql, yaitu: http://www.mysql.com. Untuk file distribusi yang disediakan cukup banyak pilihannya. mulai dari plattform apa yang digunakan (sistem operasi), jenis file distribusi (versi instalasi atau versi no-install dalam file terkompresi).
Selain mengakses melalui console/ shell dengan menggunakan command text, mysql juga dapat diakses menggunakan program client berbasis GUI yang saat ini banyak di kembangkan oleh komunitas open source di internet. Berikut adalah contohnya: MySQL-Front (desktop-based), PHPMyAdmin (web-based). Dengan menggunakan program berbasis GUI tersebut pengguna database ini lebih mudah dan dimanjakan dengan tampilannya yang visual dan user friendly. Namun yang perlu diperhatikan walaupun program GUI seperti ini mempermudah user dalam mengoperasikan mysql tentu saja tidak semua fitur-fitur yang terdapat di dalam mysql sudah didukung oleh program GUI tersebut. Hal ini disebabkan program GUI tersebut masih dalam pengembangan dan dibuat oleh komunitas open source yang tentu saja memerlukan waktu untuk menjadi versi release (final).
Berikut adalah beberapa contoh perintah dasar di MySQL menggunakan command shell text:
  • Menjalankan service MySQL, sebelum login kedatabase mysql terlebih dahulu service mysql dijalankan. biasanya service ini diaktifkan secara otomatis oleh MySQL ketika pertama kali di install. Jika otomatis dijalankan, maka service ini akan aktif secara otomatis ketika sistem operasi start up/ jalan.
C:\MySQL\Bin> mysqld [enter]
  • Menjalankan / Login ke MySQL. Untuk login ke mysql perintah yang digunakan adalah [mysql] lalu diikuti parameter [-h] untuk host tempat dimana mysql tersebut di install, misal: localhost. [-u] untuk username dari user yang punya akses ke mysql, defaultnya adalah user: root atau tanpa username. [-p] untuk password dari user yang berhak mengakses mysql, defaultnya: root atau tanpa password.
C:\MySQL\Bin>mysql -h [host] -u [username] -p [enter]
masukkan password:
  • Keluar/ Logout dari MyQSL
MySQL> exit [enter] atau
MySQL> quit [enter] atau
MySQL> \q [enter]
  • Menampilkan versi database MySQL yang di install
MySQL> SHOW VERSION; [enter]
  • Menampilkan daftar database yang ada dalam MySQL
MySQL> SHOW DATABASES; [enter]
  • Memilih/ mengaktifkan database yang akan digunakan
MySQL> USE [nama database yang akan di aktifkan]; [enter]
  • Menampilkan daftar tabel yang ada dalam database yang aktif
MySQL> SHOW TABLES; [enter]
  • Melihat struktur tabel [misal: tabel mahasiswa]
MySQL> DESC mahasiswa; [enter]
  • Melakukan backup database (dumping)
C:\MySQL\Bin>mysqldump -h [host] -u [username] [database-source] > “path”  [enter]
keterangan: database-source diisi dengan nama database yang akan di backup, path diisi dengan lokasi dan nama file tempat file backup  dibuat.
contoh:
C:\MySQL\Bin>mysqldump -h localhost -u root akademik > “d:\akademik.sql”  [enter]
  • Melakukan restore database
C:\MySQL\Bin>mysql -h localhost -u root akademik < “d:\akademik.sql”  [enter]
keterangan: tanda “<” [kurang dari] = memasukkan database dari luar. pada contoh nama file backupnya “akademik.sql” dan nama database tujuan didalam mysql “akademik”
  • Membuat user baru sekaligus memberikan hak akses
MySQL> GRANT ALL PRIVILEGES ON *.* TO ‘rudy’ IDENTIFIED BY ‘rudy’; [enter]
keterangan: GRANT = perintah untuk memberikan hak akses, ALL = semua hak akses (administrator) diberikan kepada user, *.* = diijinkan untuk mengakses semua database dan semua tabel didalam database mysql, TO ‘rudy’ = user name-nya rudy, IDENTIFIED BY ‘rudy’ = passwordnya adalah rudy dengan menggunakan fungsi enkripsi password yang tersapat di mysql.
  • Mengambil hak akses user yang telah diberikan sebelumnya
MySQL> REVOKE ALL PRIVILEGES FROM ‘rudy’; [enter]
keterangan: fungsi REVOKE adalah perintah untuk mengambil kembali hak akses seorang user yang diberi hak akses didalam database mySQL. penambahan atribut ALL artinya semua hak akses yang pernah diberikan kepada user tersebut akan di cabut/ ambil semuanya. fungsi ini hanya mengambil kembali hak akses user tersebut tetapi tidak menghapus account user tersebut dari daftar user yang terdapat didalam tabel user didalam database mySQL. Jadi user tersebut tetap terdaftar didalam daftar user mySQL tetapi sudah tidak memiliki hak akses lagi didalam database. Untuk melakukan penghapusan account user tersebut secara permanen dari daftar user di database mySQL, maka harus dilakukan proses penghapusan secara manual menggunakan perintah SQL DELETE.
  • Mengetahui User yang Terdaftar di Database mySQL
Login ke Database mySQL terlebih dahulu sebagai administrator,
Aktifkan database mySQL menggunakan perintah: USE mysql; [enter]
Tampilkan daftar tabel-tabel didalam database mySQL yang sudah aktif: SHOW TABLES; [enter]
Dari semua tabel yang ditampilkan didalam database mySQL, terdapat tabel ‘user’ yang menyimpan informasi semua user yang terdaftar dan hak aksesnya apa saja.
Tampilkan semua user yang ada didalam tabel user: SELECT * FROM user; [enter]
Jika terlalu banyak kolom yanng ditampilkan, maka dapat dipilih kolom-kolom tertentu saja yang ingin ditampilkan dari tabel ‘user’ tersebut.
misal: SELECT user, password, host FROM user; [enter]
perintah diatas adalah perintah untuk menampilkan semua user yang terdaftar didalam tabel ‘user’ dengan menampilkan informasi username, passwordnya, dan host masing-masing user tersebut.
  • Beda Host [localhost] dan Host [AnyHOst/ %] pada kolom Host di tabel ‘user’
Jika dari daftar user yang ditampilkan dari tabel ‘user’ ada informasi localhost pada host user tersebut, itu berarti user tersebut hanya dapat mengakses/ login ke database server mySQL di komputer host/ komputer dimana database mySQL tersebut di install dan tidak dapat diakses secara remote/ jarak jauh. Jika ada informasi simbol ‘%’ atau persen pada bagian host user tersebut itu artinya anyhost, bahwa user tersebut dapat mengakses database server mySQL baik secara localhost maupun secara remote/ jarak jauh.
[to be continued ...  ]

Structured Query Language (SQL) merupakan bahasa berbasis “request”/ permintaan. SQL adalah salah satu bahasa yang digunakan untuk mengelola data dalam sebuah sistem pengolah basis data (SPBD) atau dalam bahasa inggris adalah Database Management System (DBMS). Contoh DBMS yang ada dalam dunia nyata “real-world” diantaranya: MS SQL Server (Microsoft), MS Access (Microsoft), MySQL (MySQL AB), Oracle (Oracle Corp), DB2 (IBM), PostGreSQL, Paradox (Borland), dan masih banyak lagi vendor-vendor pembuat software DBMS yang lain.
SQL merupakan bahasa generasi ke-4 (4th Generation Language), dimana dalam hirarki bahasa pemrograman semakin tinggi level dari sebuah bahasa pemrograman maka semakin mudah bahasa tersebut untuk dipelajari (lihat kembali sejarah bahasa pemrograman). Hal ini dikarenakan bahasa tersebut menggunakan bahasa yang digunakan manusia sehari-hari.
SQL dapat dibagi menjadi beberapa kategori:
  • SQL SELECT, untuk menampilkan (retrieving) data dari basis data.
  • Data Definition Language (DDL), untuk mendefinisikan obyek-obyek dalam basis data. Diantaranya membuat obyek (CREATE), merubah obyek (ALTER), menghapus obyek (DROP)
  • Data Manipulation Language (DML), untuk memanipulasi data didalam basis data. Misalnya: menambah data (INSERT), merubah data (UPDATE), menghapus data (DELETE).
  • Data Transaction Language (DTL), untuk mengatur transaksi data dalam basis data. Misalnya: Menyelesaikan transaksi (COMMIT), membatalkan transaksi (ROLLBACK).
  • Data Control Language (DCL), untuk mengendalikan hak akses user terhadap basis data. Misalnya: Memberikan hak akses kepada user (GRANT), mengambil hak akses user (REVOKE).

Tidak ada komentar:

Posting Komentar