Sunday, October 24, 2010

How To: Install Webmin di Linux Ubuntu 10.x


Pada posting sebelumnya ane udah bahas tentang webmin. Untuk kali ini yang ane share adalah instalasi webmin versi 1.520 yang dikemas ke dalam tar file dari situsnya. Sebenarnya untuk konfigurasi baik instalasi file installer bash .sh ataupun file paket .deb adalah sama. Hanya saja langkah awalnya yang berbeda. Untuk paket .deb seperti biasa dengan mengetikkan perintah:



sudo dpkg -i webmin*.deb

Kemudian masukkan parameter konfigurasinya.

Sedangkan untuk instalasi webmin yang di dapat dari download di situsnya adalah sebagai berikut

Setelah selesai download webmin install dulu perl, libcrypt-ssleay-perl, libnet-ssleay-perl biar bisa pake SSL (Secure Sockets Layer).

sudo apt-get install perl libcrypt-ssleay-perl libnet-ssleay-perl


login sebagai super user,
su


Kalo passwd rootnya blm di set, set dulu

sudo passwd root


copy webmin ke direktori /usr/share
cp webmin*.tar.gz /usr/share

Ekstrak

tar xvfz webmin*.tar.gz

pindah direktori ke folder hasil ekstrak'an

cd webmin*

jalankan script setup

./setup.sh

webminstallscript
Konfigurasi setup webmin

Abiz tuw masukin beberapa paramater konfigurasinya

1. Config file directory [/etc/webmin]: <-- Default, langsung tekan Enter
2. Log file directory [/var/webmin]: <-- Langsung tekan Enter
3. Full path to perl (default /usr/bin/perl): <-- Enter lagi
4. Web server port (default 10000): 10000
5. Login name: (default admin)
6. Use SSL (y/n):y
7. Start Webmin at boot time (y/n): y

***********************************************************************
Webmin has been installed and started successfully. Use your web
browser to go to

https://unknown-laptop:10000/

and login with the name and password you entered previously.

Because Webmin uses SSL for encryption only, the certificate
it uses is not signed by one of the recognized CAs such as
Verisign. When you first connect to the Webmin server, your
browser will ask you if you want to accept the certificate
presented, as it does not recognize the CA. Say yes.

Berez dah,, webmin udah bisa diakses dari https://127.0.0.1:10000/

webminsysinfo
Tampilan System info pada halaman webmin



Referensi:
http://www.sarimingeek.com/index.php?page=blog&title=Webmin+di+Linux


© 2010 by Irfandz Lagi Enjoy

Berkenalan dengan WEBMIN, Sistem Administrator Linux berbasis WEB


Kemarin pas sharing2 ma temen mbahas tentang web server, tiba2 temen ane nyletuk aplikasi webmin.., tapi ga taw fungsi dari webmin itu sendiri untuk apa aja, katanya bisa buat lihat sistem OS linux kita gitu.., trz karena penasaran, langsung dah ane browsing nyari info tentang ne app.. dan ternyata,

Webmin
Webmin adalah pengelola sistem berbasis web yang digunakan untuk melakukan administrasi di linux.
Dengan webmin ini kita bisa melakukan konfigurasi service, proses, backup & restore filesystem, edit password system, konfigurasi jaringan seperti interface yang digunakan, konfigurasi DNS, routing, dan masih banyak lagi.

Hampir semua aktifitas yang berhubungan dengan tugas sistem administrator bisa dilakukan dengan mudah menggunakan WEBMIN, tanpa perlu di repotkan dengan command2 yang njlimet.. :D. Tapi kalo menurut ane, jangan hanya mengandalkan dari tools ini aja, coz yang namanya linux bagaimanapun the best pren-nya adalah CLI, meskipun front-end gui aplikasi ini menawarkan segudang fitur, kita juga tetap harus bisa menguasai CLI.. coz adakalanya kita harus berhadapan dengan 100% cli, seperti pada saat broken package, desktop manager error, dll.

Secara umum modul yang didukung webmin saat ini sebagai berikut:
Name Download Description Supports
ADSL Client adsl-client.wbm.gz Set up a PPP client with the RP-PPPoE package. Only Linux
Apache Webserver apache.wbm.gz Configure almost all Apache directives and features. Most operating systems
BIND 4 DNS Server dnsadmin.wbm.gz Create and edit domains and DNS records. Most operating systems
BIND DNS Server bind8.wbm.gz Create and edit domains, DNS records, BIND options and views. Most operating systems
BSD Firewall ipfw.wbm.gz Configure a BSD firewall using IPFW, by creating and editing rules. FreeBSD and Mac OS X
Backup Configuration Files backup-config.wbm.gz Perform manual or scheduled backups and restores of configuration files managed by Webmin modules. All operating systems
Bacula Backup System bacula-backup.wbm.gz Configure Bacula to perform backups and restores manually or on schedule, for one or many systems. All operating systems
Bandwidth Monitoring bandwidth.wbm.gz View reports on bandwidth usage by host, port, protocol and time on a Linux system. All except Windows
Bootup and Shutdown init.wbm.gz Setup scripts to be run at boot time from /etc/init.d or /etc/rc.local. Most operating systems
CD Burner burner.wbm.gz Burn data CDs from ISO images or selected directories. All except Windows
CVS Server pserver.wbm.gz Setup a remotely-accessible CVS server, manage users and browse the repository. All except Windows
Change Language and Theme change-user.wbm.gz Allows the current Webmin user to change his language, theme and possibly password. All operating systems
Change Passwords passwd.wbm.gz Change the password of any user on the system. All except Windows
Cluster Change Passwords cluster-passwd.wbm.gz Change passwords on multiple systems in a Webmin cluster at once. All except Windows
Cluster Copy Files cluster-copy.wbm.gz Schedule the transfer of files from this server to multiple servers in a Webmin cluster. All operating systems
Cluster Cron Jobs cluster-cron.wbm.gz Create scheduled Cron jobs that run on multiple servers simultaneously. Most operating systems
Cluster Shell Commands cluster-shell.wbm.gz Run commands on multiple servers at once. All operating systems
Cluster Software Packages cluster-software.wbm.gz Install RPMs, debian and solaris packages across multiple servers from one source. Most operating systems
Cluster Usermin Servers cluster-usermin.wbm.gz Install and manage modules and themes across multiple Usermin servers. All except Windows
Cluster Users and Groups cluster-useradmin.wbm.gz Create, update and delete users and groups across multiple servers. Unlike NIS, each server has its own passwd and group files which are remotely updated by this module. Most operating systems
Cluster Webmin Servers cluster-webmin.wbm.gz Install and manage modules, themes, users, groups and access control settings across multiple Webmin servers. All operating systems
Command Shell shell.wbm.gz Execute shell commands and view their output. All operating systems
Configuration Engine cfengine.wbm.gz Configure the CFengine program, for checking and maintaining various system-administration settings. All except Windows
Custom Commands custom.wbm.gz Create buttons to execute commonly used commands or edit files on your system. All operating systems
DHCP Server dhcpd.wbm.gz Manage shared networks, subnets, hosts and groups for ISC DHCPD. Most operating systems
Disk Quotas quota.wbm.gz Setup and edit user or group disk quotas for local filesystems. Most operating systems
Disk and Network Filesystems mount.wbm.gz Mount filesystems and swap files usually configured in /etc/fstab or /etc/vfstab. Most operating systems
Dovecot IMAP/POP3 Server dovecot.wbm.gz Configure the Dovecot IMAP and POP3 mail retrieval server. All except Windows
Extended Internet Services xinetd.wbm.gz Edit servers handled by Xinetd, a replacement for inetd. All operating systems
Fetchmail Mail Retrieval fetchmail.wbm.gz Configure the popular fetchmail program for automatically retrieving mail from other servers. All except Windows
File Manager file.wbm.gz View, edit and change permissions on files and directories on your system with a Windows-like file manager. All operating systems
Filesystem Backup fsdump.wbm.gz Backup and restore filesystems using the dump and restore family of commands. Most operating systems
Filter and Forward Mail filter.wbm.gz Create rules to filter and forward incoming email. All operating systems
Frox FTP Proxy frox.wbm.gz Configure Frox, a transparent proxy for FTP clients. Linux and FreeBSD
GRUB Boot Loader grub.wbm.gz Configure the Linux GRUB boot loader to allow the selection of various operating systems and kernels at boot time. Linux and Sun Solaris
HTTP Tunnel tunnel.wbm.gz Connect to another HTTP server via a tunnel through the Webmin server. All operating systems
Heartbeat Monitor heartbeat.wbm.gz Configure the Heartbeat package for automatic server failover in a cluster. Linux and FreeBSD
IPFilter Firewall ipfilter.wbm.gz Configure a firewall using the IPFilter package, by creating and editing rules. Only Sun Solaris
IPsec VPN Configuration ipsec.wbm.gz Set up a client or server for an IPsec VPN using FreeSWAN. Only Linux
Initial System Bootup inittab.wbm.gz Configure low-level services to be run at boot time, and select the initial runlevel. Most operating systems
Internet Services and Protocols inetd.wbm.gz Edit services in /etc/inetd.conf, /etc/services and /etc/rpc. Most operating systems
Jabber IM Server jabber.wbm.gz Configure the multi-protocol Jabber messaging server. All except Windows
Kerberos5 krb5.wbm.gz Configure the Kerberos 5 client on your system. Only Linux
LDAP Client ldap-client.wbm.gz Configure your system as an LDAP client for users and groups. Only Linux
LDAP Server ldap-server.wbm.gz Manage the OpenLDAP server and objects in its database All operating systems
LDAP Users and Groups ldap-useradmin.wbm.gz Manage users and groups stored in an LDAP database, used for Unix, Samba and Cyrus IMAP authentication. All except Windows
Linux Bootup Configuration lilo.wbm.gz Edit kernels and partitions selectable at boot time with LILO. Only Linux
Linux Firewall firewall.wbm.gz Configure a Linux firewall using iptables. Allows the editing of all tables, chains, rules and options. Only Linux
Linux RAID raid.wbm.gz Create RAID 0, 1, 4, 5 and linear devices on a Linux system. Only Linux
Log File Rotation logrotate.wbm.gz Set up the automatic rotation of Apache, Squid, Syslog and other log files. All except Windows
Logical Volume Management lvm.wbm.gz Configure volume groups, physical volumes and logical volumes for Linux LVM. Only Linux
MIME Type Programs mailcap.wbm.gz Edit the /etc/mailcap file, which maps MIME types to handler programs All except Windows
MON Service Monitor mon.wbm.gz Setup MON, a powerful service monitor and alerting system. Only Linux
Majordomo List Manager majordomo.wbm.gz Create and configure mailing lists for Majordomo. All except Windows
MySQL Database Server mysql.wbm.gz Setup databases, tables and permissions in your MySQL database server. All operating systems
NFS Exports sgiexports.wbm.gz Edit file shares as defined in the Irix /etc/exports file Only SGI Irix
NFS Exports exports-nfs4.wbm.gz Edit NFS file shares defined in /etc/exports. Most operating systems
NFS Exports bsdexports.wbm.gz Edit file shares from the FreeBSD /etc/exports file. Most operating systems
NFS Exports exports.wbm.gz Edit NFS file shares defined in /etc/exports. Most operating systems
NFS Exports hpuxexports.wbm.gz Edit file shares as defined in the HPUX /etc/exports file. Only HP/UX
NFS Shares dfsadmin.wbm.gz Edit file shares as defined in the /etc/dfs/dfstab file. Sun Solaris and SCO UnixWare
NIS Client and Server nis.wbm.gz Setup a system as an NIS client, master or slave server. Note that NIS+ is not supported. Most operating systems
Network Configuration net.wbm.gz Configure boot time and active interfaces, DNS, routing and /etc/hosts. Most operating systems
OpenSLP Server openslp.wbm.gz Configure the service location protocol server. All except Windows
PAM Authentication pam.wbm.gz Configure the PAM authentication steps used by services such as telnet, POP and FTP. Most operating systems
PHP Configuration phpini.wbm.gz Configure PHP settings for the whole system or invidivual Apache virtual servers. All except Windows
PPP Dialin Server pap.wbm.gz Set up a dialin server using mgetty and PPP. Most operating systems
PPP Dialup Client ppp-client.wbm.gz Configure the WV-Dial package to connect to the Internet with a modem PPP connection Only Linux
PPTP VPN Client pptp-client.wbm.gz Configure and establish connections to a VPN server using the PPTP protocol. Only Linux
PPTP VPN Server pptp-server.wbm.gz Set up your system as a PPTP server so that Linux or Windows VPN clients can connect. Linux and FreeBSD
Partitions on Local Disks format.wbm.gz Create and edit paritions on local disks on Solaris. Only Sun Solaris
Partitions on Local Disks fdisk.wbm.gz Create and edit paritions on local SCSI and IDE disks on Linux. Only Linux
Perl Modules cpan.wbm.gz Install new Perl modules on your system, and view those already installed. All except Windows
Postfix Mail Server postfix.wbm.gz Configure the Postfix mail server. All except Windows
PostgreSQL Database Server postgresql.wbm.gz Manage databases, tables and users in your PostgreSQL database server. All operating systems
Printer Administration lpadmin.wbm.gz Create and edit local and remote printers. Supports Windows print servers and Ghostscript print drivers. Most operating systems
ProFTPD Server proftpd.wbm.gz Configure the powerful ProFTPD FTP server. Supports all options in most of the standard modules. All except Windows
Procmail Mail Filter procmail.wbm.gz Edit recipes in the global /etc/procmailrc file, which apply to all incoming email. All except Windows
Protected Web Directories htaccess-htpasswd.wbm.gz Create .htaccess and htpasswd files to protect web-acessible directories. All operating systems
QMail Mail Server qmailadmin.wbm.gz Configure the QMail mail server, a simpler alternative to Sendmail. All except Windows
RBAC and Projects rbac.wbm.gz Manage RBAC user attributes, profiles and authorizations. Sun Solaris and Sun Solaris
Read User Mail mailboxes.wbm.gz Read email in users’ mailboxes. All except Windows
Running Processes proc.wbm.gz List, kill and renice running processes on your system. Most operating systems
SMART Drive Status smart-status.wbm.gz Check the status of IDE drives to detect problems and potential failures. Linux, FreeBSD and Mac OS X
SSH Login telnet.wbm.gz Login to your system with SSH or telnet. All operating systems
SSH Server sshd.wbm.gz Setup the SSH server for remote secure logins. All operating systems
SSL Tunnels stunnel.wbm.gz Setup SSL tunnels to encrypt services like POP3 and IMAP, using stunnel run from inetd. All except Windows
Samba Windows File Sharing samba.wbm.gz Create and edit samba file and print shares. Most operating systems
Scheduled Commands at.wbm.gz Schedule the execution of one-off commands or scripts. Most operating systems
Scheduled Cron Jobs cron.wbm.gz Create, edit and delete Cron jobs. Most operating systems
Security Sentries sentry.wbm.gz Configure the portsentry, hostsentry and logcheck system security monitoring programs. All except Windows
Sendmail Mail Server sendmail.wbm.gz Manage sendmail aliases, masquerading, address rewriting and other features. Most operating systems
Service Management Facility Configuration smf.wbm.gz Edit services under control of Service Manangement Facility SMF(1). Only Sun Solaris
Shorewall Firewall shorewall.wbm.gz Lets you edit the most useful tables of the Shorewall Firewall Only Linux
Software Packages software.wbm.gz Manage software packages on your system, and install new packages. Most operating systems
Solaris Zones zones.wbm.gz Create and manage Solaris 10 zones. Only Sun Solaris
SpamAssassin Mail Filter spam.wbm.gz Set up and configure SpamAssassin to filter email received by your system. All except Windows
Squid Proxy Server squid.wbm.gz Configure Squid options, ACLs, caching parameters and proxy users. Most operating systems
Squid Report Generator sarg.wbm.gz Configure and schedule SARG, a tool for generating reports from Squid access logs. All except Windows
System Documentation man.wbm.gz View man pages, HOWTOs and other package documentation. Most operating systems
System Logs syslog.wbm.gz Configure the syslog server on your system and view its log files. Most operating systems
System Logs NG syslog-ng.wbm.gz Configure the Syslog-NG server on your system and view its log files. All operating systems
System Time time.wbm.gz Set the sytem and hardware time either manually or from a time server. Most operating systems
System and Server Status status.wbm.gz View the status of services on your system and on remote systems. All operating systems
TCP Wrappers tcpwrappers.wbm.gz Configure the TCP wrappers networking access control files All operating systems
Thirdlane PBX Manager asterisk.wbm.gz Thirdlane PBX Manager All operating systems
Upload and Download updown.wbm.gz Upload multiple files to the server, and download multiple URLs either immediately or in the background at a scheduled time. All operating systems
Usermin Configuration usermin.wbm.gz Configure global options for the Usermin user account management server. All except Windows
Users and Groups useradmin.wbm.gz Create and edit Unix users and groups from the /etc/passwd and /etc/group files. Most operating systems
Voicemail Server vgetty.wbm.gz Set up your system as an answering machine using vgetty Only Linux
WU-FTP Server wuftpd.wbm.gz Configure the access control, anonymous FTP and other options of WU-FTPd. Most operating systems
Webalizer Logfile Analysis webalizer.wbm.gz Generate reports from webserver, proxy server and FTP log files All except Windows
Webmin Actions Log webminlog.wbm.gz View detailed logs of actions by Webmin users. All operating systems
Webmin Configuration webmin.wbm.gz Configure Webmin itself, such as allowed hosts, SSL, installed modules and themes. All operating systems
Webmin Servers Index servers.wbm.gz Displays an index of other Webmin servers for easy linking. All operating systems
Webmin Users acl.wbm.gz Create Webmin users and configure which modules and features they are allowed to access. All operating systems
idmapd daemon idmapd.wbm.gz Manage the NFS ID mapping daemon. Only Linux

Banyak banget kan fitur-fitur webmin, untuk dokumentasi oprekan lebih lanjut, InsyaAllah akan ane share di lain waktu..


Referensi

http://kusprayitna.staff.uii.ac.id/2009/10/21/webmin-sistem-administrator-linux-berbasiskan-web/

© 2010 by Irfandz Lagi Enjoy

Trik Upgrade dan Install Software dari Repository online dengan Cepat


synapticBagi pengguna debian family dengan desktop manager GNOME, pasti udah familiar dengan synaptic package manager. Yupz, synaptic adalah sebuah aplikasi GUI yang digunakan untuk managejemen paket apt. Synaptic package manager tidak hanya bisa jalan di GNOME tetapi bisa juga jalan di desktop manager lain, dalam hal ini ane menggunakan KDE. Aplikasi ini memiliki fitur yang sama seperti perintah apt-get pada command line. So, kita bisa dengan mudah install, remove, upgrade, downgrade, baik single maupun multiple packages.


Nah.. yang namanya install via repo online, kan butuh koneksi internet, apalagi untuk upgrade ratusan MB memerlukan koneksi inet kenceng bila pengen proses upgrade cepet cepet selesai. "Truz yang koneksi inetnya lemoud, jalan di tempat, or yang pat-pet gmn nuw?".. Neh ane punya sedikit tips buat ngakalin-nya.

Sebelum memulai trik ini kita memerlukan koneksi internet untuk mengupdate perpustakaan repositori yang kita gunakan. Uke, step-stepnya kek gini:

1. Buka synaptic package manager. => Untuk distro ubuntu dengan desktop manager gnome sudah pasti ada. Untuk yang bawaan desktop managernya kde, xfce, lxde, dll... install dulu synapticnya lewat terminal

sudo apt-get install synaptic

Pastikan kita udah bisa konek ke repository, untuk melihat, mengatur, menambah repository yang digunakan klik Setting>Repositories atau langsung menuju /etc/apt/sources.list

2. Klik icon Reload pada toolbar, untuk memperbarui perpustakaan paket kita. Tunggu sampai proses reload selesai.

3. Tandai semua paket2 yang akan kita pasang atau kita upgrade, jangan di apply dulu

4. File>Save Markings As, untuk menyimpan paket2 yang udah kita tandai

5. File>Generate package download script, untuk men-generate atu mendapatkan alamat2 paket yang akan kita install, centang Save full state, not only changes, simpan dengan nama apa saja tanpa ekstensi

6. Buka hasil generate tadi menggunakan gedit, kate, ato apalah, trz select all, copy & paste di openoffice word, dan hapus "#!/bin/sh" pada baris yg paling atas, hapus jg semua tulisan "wget -c ". Untuk mempercepat silahkan gunakan fasilitas serach (Ctrl+F), trz pada kotak dialog seach for masukkan "wget -c " tanpa tanda kutip, klik "Find all" dan arahkan kursor pada "Replace with", tekan "Space" sehingga pada "Replace with" berisi satu spasi kosong. Trz klik "Replace all" dan close, yang tersisa di layar kini tinggal alamat2 package aja. Simpan sebagai namafile.txt

7. Sekarang saatnya beraksi.. Pergi ke warnet yg koneksinya cepet, biasanya ane ke warnet sbelah yg koneksinya lumayan kenceng skitar 800KBps pake idm, tanpa menggangu user yg laen.. :D Ane ndiri jg heran koneksi sgitu, tp user laen jg te2p cepet padahal clientnya ada skitar 70 dan sering semua kompi kepake. Kira2 pake apa koneksinya ya gan? ups.... sedikit curhat gpp ya.. :2peace: kembali ke topik,, Buka idm, trz pilih Task>Import>From text file, buka namafile.txt yang udah kita simpan tadi, dan resume semua dunlud.

8. Setelah dunlud selesai, masukkan seluruh dunlud td ke directory /var/cache/apt/archives => ne harus masuk sebagai root, bisa melalui terminal
gksudo dolphin


copy seluruh dunlud'an tadi ke /var/cache/apt/archives

9. Buka lagi synaptic package manager tanpa terkoneksi ke internet, klik Reload, abaikan bila muncul error

10. Buka Marking yg udah kita simpan tadi melalui File>Read Marking namafile yg udah disimpan tadi.

11. Klik Apply, dan instalasi akan segera dimulai.. :D

Mungkin cara sperti ini bisa dikatakan semi online, coz kita juga butuh sedikit koneksi inet meskipun numpang.. xixixi

Dokumentasi selengkapnya bisa lihat di http://www.nongnu.org/synaptic/index.html

© 2010 by Irfandz Lagi Enjoy

Install nVidia driver di Ubuntu 10.04, 10.10


Sedikit sharing kale ne tentang instalasi driver nvidia. mungkin berguna buat pengguna baru Ubuntu family lucid dan turunanya.


nVidiaNe pengalaman ane pake distro linux mint 9, turunannya Ubuntu 10.04. Permasalah muncul setelah ane selesai instalasi dan mo mengaktifkan animation, yaitu visual effectnya kaga' mau, harus diinstall dulu driver vganya. Sedangkan instalasinya juga tidak bisa pake cara yang biasa sperti versi sebelumnya. Masih perlu sedikit modifikasi dan sedikit trik untuk mengaktifkan Visual effect, . Oke langsung aja ke TKPeeeh...
1. Download driver nvidia versi terbaru di sini
2. Pastikan compiler yg diperlukan udah terinstall.
Untuk install compilernya bisa melalui terminal dan ketik

sudo apt-get install build-essential gcc


3. Masih melalui terminal,

sudo nano /etc/modprobe.d/blacklist.conf


Tambahkan blacklist berikut pada baris yg paling bawah

blacklist vga16fb
blacklist nouveau
blacklist rivafb
blacklist nvidiafb
blacklist rivatv

Tekan Ctrl+O, lalu Enter. Tekan Ctrl+X untuk keluar.

4. Buang driver nvidia bawaan distro

sudo apt-get remove --purge nvidia*

5. Masuk ke tty (tekan Ctrl+alt+F1 or F2, F3, F4, F5, F6), truz login sbagai user.
matikan desktop managernya

sudo /etc/init.d/gdm stop

gdm karna ane pake desktop manager gnome, kdm buat kde, xdm untuk xfce,
tapi yg pernah ane coba gnome, kde, n xfce aj,, he..he.. yg laen silahkan di explorasi sendiri.

6. Masuk ke direktori tempat file driver nvidia tersimpan
Kalo punya ane driver nvidia tersimpan di direktori /home/ip4ndz/Downloads
So msuk direktori dulu

cd /home/ip4ndz/Downloads


7. Install driver nvidia

sudo sh NVIDIA*.31-pkg1.run -k $(uname -r)

Pilih Accept,

dan ikuti instruksi pada instalasi.
Biarin aja kalo terjadi kesalahan pada saat instalasi.

8. Setelah instalasi selesai, reboot.

9. Kalo driver nvidia blm aktif, lakukan update&upgrade dengan perintah:

sudo aptitude update && sudo aptitude full-upgrade

Setelah upgrade selesai, ulangi langkah 5-8.
nvidiaku
Sampai tahap ini sy sudah bisa menikmati linux Mint9 dengan full animation.

Source:
http://www.ubuntugeek.com/howto-install-nvidia-drivers-manually-on-ubuntu-10-04-lucid-lynx.html
http://jeffhoogland.blogspot.com/2010/04/installing-nvidia-driver-in-ubuntu-1004.html


© 2010 by Irfandz Lagi Enjoy

Saturday, October 23, 2010

Install Apache2 dengan PHP5 dan MySQL support di Ubuntu 10.x (Install LAMP via apt)


Dalam tulisan kali ne ane mo sharing dokumentasi oprekan ane kmarin siang. Sebelumnya ane, menggunakan LAMPP server versi 1.7.3a yang ane dunlud dari http://www.apachefriends.org/en/xampp-linux.html yang udah di bundling Apache 2.2.14, MySQL 5.1.41, PHP 5.3.1, dan berbagai aplikasi tambahan seperti PEAR + SQLite 2.8.17/3.6.16 + multibyte (mbstring) support, Perl 5.10.1, ProFTPD 1.3.2c, phpMyAdmin 3.2.4, OpenSSL 0.9.8l, XAMPP Control Panel 0.8, dan masih banyak lagi. "Lha trz, knapa pake aplikasi udah lengkap kek gitu kok malah mutusin untuk install satu2 via apt?", 

Banyak alasannya broda, salah satunya coz ane pengen ngoprex langsung mulai dari awal, ga tinggal makek yang udah ada aja. Kalo di LAMPP versi paketan untuk upgrade kan musti nunggu versi releasenya yang baru keluar dulu, ga bisa upgrade mysqlnya aja ato phpmyadmin-nya aja.. ato ane ya yang belom tau? :mikir:

Uke dah,, segitu dulu cuap2nya, sekarang menuju ke topik..

Karena instalasinya via apt, so kita butuh terkoneksi ke internet untuk menjalankan aksi ini.. (wuih kayak mo ngapaen aja..  xixixi:)

1. Buka terminal, login sebagai super user

sudo -i

2. Install web server Apache2

apt-get install apache2

Untuk mengecek apakah webserver apache2 udah aktif ato belom, buka browser dan arahkan ke 127.0.0.1, kalo udah nampak tulisan

"It works!

This is the default web page for this server.

The web server software is running but no content has been added, yet." berarti web server udah aktif.

Defaultnya pada ubuntu, dokumen root apache berada di direktory /var/www, dan konfigurasi filenya berada di /etc/apache2/apache2.conf. Konfigurasi tambahan tersimpan di sub direktori /etc/apache2, direktori2 tersebut seperti mods-enabled (untuk modul-modul apache), /etc/apache2/sites-enabled (untuk virtual host), and /etc/apache2/conf.d.

3. Install MySQL 5

apt-get install mysql-server mysql-client

isikan password root mysql,

New password for the MySQL "root" user: <-- passwordrootanda

Repeat password for the MySQL "root" user: <-- passwordrootanda

mo diisi apa terserah deh,,

4. Install PHP5

Untuk memasang PHP5 dan modul Apache PHP5 kita bisa menggunakan perintah

apt-get install php5 libapache2-mod-php5

Setelah itu kita harus merestart web server apache

/etc/init.d/apache2 restart

ato

service apache2 restart

5. Testing PHP5, melihat detail PHP5 yang udah kita install

Kita bisa membuat file.php yang didalamnya berisi kode untuk menampilkan informasi seputar PHP yang udah kita install.

masih di terminal sebagai super user, arahkan di rektori ke /var/www

cd /var/www

buka text editor cli kesayangan anda, ane biasanya pake nano

nano

ketik

<?php
phpinfo();
?>

Tekan Ctrl+O, teruz beri nama info.php

Kalo udah, arahkan browser ke 127.0.0.1/info.php
info.php

Seperti informasi di atas, PHP5 udah aktif, dan bekerja melalui Apache 2.0 Handler, seperti ditunjukkan pada baris Server API. Jika kita scroll ke bawah, akan terlihat semua modul yang udah diaktifkan di PHP5. MySQL ga terdaftar di sana yang berarti kita belum memiliki dukungan MySQL di PHP5.

6. Mendapatkan dukungan MySQL di PHP5

Biar MySQL support di PHP, kita bisa menggukakan paket php5-mysql. Bisa juga kita memasang beberapa modul PHP5 yang lain sesuai kebutuhan dari aplikasi yang kita gunakan. Untuk mencari modul2 PHP5 bisa menggunakan perintah

aptitude search php5

install beberapa modul sesuai keperluan, kalo yg ane install sperti ne

aptitude install php5-mysql php5-curl php5-gd php5-idn php-pear php5-imagick php5-imap php5-mcrypt php5-memcache php5-mhash php5-ming php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl php5-json

abiz tuw, restart web service apache

service apache2 restart

Reload browser 127.0.0.1/info.php, scrol ke bawah.. sekarang modul MySQL udah ada di sana.. :D

7. instal phpMyAdmin

phpMyAdmin adalah sebuah aplikasi web yang dirancang untuk memanage MySQL database,

apt-get install phpmyadmin

ntar kita akan ditanya kek gini

Web server to reconfigure automatically: <-- apache2
Configure database for phpmyadmin with dbconfig-common? <-- No

Setelh itu kita bisa mengakses phpmyadmin melalui
127.0.0.1/phpmyadmin/

Berez dah instalasinya,, :D

source:
http://www.howtoforge.com/installing-apache2-with-php5-and-mysql-support-on-ubuntu-10.04-lamp

untuk mempelajari lebih lanjut dokumentasi dari masing2 aplikasi yg udah kita install di atas melalui
* Apache: http://httpd.apache.org/
* PHP: http://www.php.net/
* MySQL: http://www.mysql.com/
* phpMyAdmin: http://www.phpmyadmin.net/

Oprekan belum berakhir.. Keep Oprex & Keep Sharing...!

© 2010 by Irfandz Lagi Enjoy

Mengenal perintah SQL grant, Operasi DML, index, inner join


Tugas Pertemuan 4 Praktikum DBD

Pertemuan ke 4 praktikum dbd kemarin materi diisi dari modul dengan topik indeks, grant, commit, dan yang dijelaskan pada pertemuan ini adalah cara bikin indeks, grant melalui front-ent oracle-xe, dan fungsi commit pada SQL*PLUS.

Sedikit review, n overview tentang konsep topik di atas, dalam hal ini ane juga masih belajar, dan kemarin sempet membaca dari berbagi referensi.. :)
Berdasarkan referensi yang ane dapet, ke 3 topik di atas masing2 memiliki pembahasan yang berbeda dalam belajar oracle. Untuk konsep indeks, objek indeks cukup kompleks dan teknik atau cara pembuatan indeks di oracle bermacam2. Seperti unique index, function based index, bitmap index, dan masih banyak lagi. Indeks dibuat untuk mengalokasikan informasi secara lebih cepat dan efisien, sehingga mempermudah dalam proses pencarian data.

Grant, termasuk dalam Administrasi role dan Object privilage pada DBMS oracle. Dimana dengan feature ini kita bisa memberikan hak akses per objek, misalnya tabel, view, package, dsb, milik seorang user, ke user lainnya.

Sedangkan Commit merupakan salah satu perintah pada operasi transaksi DML (Data Manipulation Language).
Ada dua perintah pokok dalam operasi transaksi yaitu COMMIT dan ROLLBACK. Secara sederhana, perintah COMMIT digunakan untuk memberitahu kepada oracle bahwa semua transaksi yang telah dilakukan akan disimpan pada media database file, sehingga setelah dengan COMMIT, perintah2 manipulasi data melalui SQL command line, yang awalnya hanya tersimpan dalam memori oracle, akan dieksekusi dan disimpan ke dalam database file. Sedangkan ROLLBACK adalah perintah untuk membatalkan semua transaksi yang sudah dilakukan sampai waktu commit terakhir. :D
hmm..,, kalo semua tentang Administrasi role dan Object privilage, Semua Oerasi DML, DDL, Berbagai teknik pengindeks'an, itu aja kalo dbahas mua di praktikum, 1 semester kaga cukup :D, makanya dalam hal ini, praktikan harus kreatif meningkatkan skill untuk menjadi seorang dba... :D (nyadar & ngarep MODE ON)

O'ya, berkaitan dengan tugas bikin inner join, "apa seh inner join?" inner join kalo ga salah merupakan perintah yang digunakan untuk menggabungan 2 tabel ato lebih.

Langsung praktek,
##dimulai dari grants, sedikit operasi DML##
Kalo di modul kemarin membuat grants melalui front-end, di sini ane melalui SQL*PLUS
kmarin ane udah buat schema dbmobil di sini sekarang ane mo kasih hak akses ke user irfandz

=============================================
=--------------------------------- SQL*PLUS COMMANDS ----------------------------------------=
=============================================


conn dbmobil/dbmobil

grant select on dbmobil.mobil to irfandz;

grant select on dbmobil.mobil_inv to irfandz;

conn irfandz/passwordku

create table mobil as select* from dbmobil.mobil;

create table mobil_inv as select* from dbmobil.mobil_inv;


Dari pada ane lama musti ngetik lagi,, langsung ane tampilin SSnya aja ya,,

Masuk dulu ke schema dbmobil
conn dbmobil

Kasih hak akses select untuk tabel mobil, mobil_inv kepada user irfandz
grant

trz login sebagai user irfandz, n buat tabel mobil, mobil_inv mengambil dari schema dbmobil
conn_irfandz&create

Nah, untuk ngecheck hasil pembuatan tabel seperti ini
describe

Kalo udah skarang buat constraint untuk tabel mobil, mobil_inv
addConstraint

Abiz tuw ne ane gunakan perintah DML (Data Manipulation Language)
Oke, kita leat dulu data tabel mobil yang sekarang
datamobil

untuk menampilkan tabel mobil beserta tipe datanya,

describe mobil;


disini ane pengen nampilin no mobil (bukan no polisi, no_polisi ada di mobil_inv), nama mobil, th keluar, dan biaya sewa.

select no_mobil, nm_mobil, th_keluar, biy_sewa from mobil;

Truz ane pengen ngrubah biaya sewa untuk New Corolla Altis menjadi 550000,
updateCommit
Untuk mengeksekusi transaksi, menggunakan perintah COMMIT, kalo di mysql menggunakan flush privileges;.

##Create INDEX##

Dalam hal ini ane membuat index melalui SQL*PLUS, untuk jenis mobil dan no polisi

create index jns_mobil_idx on mobil (jns_mobil);

create index no_polisi_idx on mobil_inv (no_polisi);

Untuk menampilkan index dari mobil_inv, bisa menggunakan query


SELECT INDEX_NAME, INDEX_TYPE, UNIQUENESS, STATUS, SECONDARY FROM USER_INDEXES WHERE TABLE_NAME = 'MOBIL_INV';

huruf query harus kapital, coz kalo ga kapital ga mo kluar tuh "no row selected"
queryIndex


##Inner Join##

Ane menggunakan INNER JOIN untuk menampilkan gabungan tabel mobil dan mobil_inv

SELECT * FROM mobil INNER JOIN mobil_inv ON mobil.no_mobil = mobil_inv.no_mobil;

innerJoin

Pada gambar di atas, ane menggunakan front-end oracle, coz kalo di SQL*PLUS ga bisa muat mua column2na, tampilannya ancur deh..
itu masih gabungan 2 tabel, n skarang ane pengen nampilkan th_keluar, nm_mobil, biy_sewa, jns_mobil, no_polisi

SELECT mobil.th_keluar, mobil.nm_mobil, mobil.biy_sewa, mobil.jns_mobil, mobil_inv.no_polisi FROM mobil INNER JOIN mobil_inv ON mobil.no_mobil = mobil_inv.no_mobil
ORDER BY mobil.th_keluar;

InnerJoin2

Lebih selektif kan daripada perintah inner join yang pertama tadi.. :D, ORDER BY mobil.th_keluar digunakan untuk mensortir data berdasarkan th_keluar. Sebenarnya masih banyak perintah2 tentang SQL JOIN, kalo ane bahas mua,, tulisan ini ga kelar2.. :D

Referensi
Budi Susanto. Administrasi dan Pemrograman Database Oracle 10G XE. 2007. Jakarta: Elex Media Komputindo
http://di2n.blogsome.com/2010/01/25/memahami-sql-join-jilid-2/
http://www.w3schools.com/SQl/sql_join_inner.asp

Segitu dulu dah tulisan kale ne..
Semoga bermanfaaat...

© 2010 by Irfandz Lagi Enjoy

Instalasi Oracle 10g XE di Linux Ubuntu 10.x


Untuk memasang Oracle 10g XE di OS ubuntu, kita membutuhkan paket .deb oracle-xe, dan dependensinya yang harus dipenuhi yaitu libaio. libaio1 udah tersedia di repositori ubuntu 10.04, dan mungkin di 10.10 jg udah ada, ne ane masih krasan di ubuntu 10.04 :D.

Paket .deb oracle-xe, nama asli dari situs resminya kalo ga salah oracle-xe-universal_10_1.2.0.1-1.0_i386.deb untuk yg universal dan oracle-xe_10.2.0.1-1.0_i386.deb untuk yang english only. Ane pake yang ke 2, english ony :D. Paket ini diperuntukkan OS 32 bit, dipasang di 64 bit amd64 juga bisa, tapi agak ribet ngakalin instalasi n managenya. Dalam pembahasan ini ane menggunakan 32bit ubuntu 10.04. Uke, langsung aja, untuk paket .deb oracle, bisa di download di http://www.oracle.com/technetwork/database/express-edition/downloads/102xelinsoft-102048.html


Nah, kalo udah punya paket .deb oracle-xe, saatnya pasang dulu dependensinya, trz baru install oracle-xe. step2nya -/+ kek gini:

1. Buka terminal, login sebagai super user,

install libaio1

apt-get install libaio1

2. Setelah selesai install dependensi, abiz tuw install oracle-nya.
pindahkan direktori ke tempat pinyimpanan oracle

cd /home/irfandz/downloads

trz install

dpkg -i oracle-xe*.deb

3. Kalo instalasi udah selesai, selanjutnya konfigurasi oracle untuk memasukkan beberapa parameter konfigurasi database server Oracle XE dan layanan lainnya..

/etc/init.d/oracle-xe configure

atau

service oracle-xe configure
  • Untuk port HTTP manajemen Oracle XE berbasis GUI gunakan 8081, “Mengapa kok pake 8081”, coz port 8080 ane pake buat web server apache... :D
  • Port listerner gunain default aja 1521. So, bisa langsung tekan Enter.
  • Abiz tuw masukkan password untuk user admin SYS dan SYSTEM,
  • Muncul dialog lagi, yang menanyakan apakah service Oracle akan dijalankan setiap login, masukkan no aja, biar tidak mengganggu kecepatan proses booting kita.So setiap kali mo makek oracle, kita jalankan dengan cara manual

sudo /etc/init.d/oracle-xe start

atau

sudo service oracle-xe start

O'ya, terkadang udah di start tapi service-nya belum juga aktif, untuk mengatasi hal ini bisa dengan perintah

sudo /etc/init.d/oracle-xe force-reload

untuk melihat tipe perintah lain

sudo /etc/init.d/oracle-xe –help

Sekian dulu dokumentasi dari ane.. Semoga bermanfaaat!

© 2010 by Irfandz Lagi Enjoypiss

Monday, October 18, 2010

Teknologi Cluster pada DBMS Oracle


"Seperti apa seh teknologi cluster?Bagaimana dia bekerja?keunggulannya? seberapa penting kah teknologi ini?", itulah sederetan pertanyaan yang sempet mampir di benak saya kemarin pas dapet tugas nyari materi tentang "Cluster database". Semua pertanyaan tersebut akan terjawab dengan beberapa tulisan yang ane rangkum dari berbagai sumber. Uke,, langsung aja....................


Preface

Dewasa ini kebutuhan akan komunikasi data sangat penting seiring dengan pesatnya laju perkembangan teknologi komunikasi digital yang makin canggih. Salah satu hal yang sangat penting bagi teknologi komunikasi digital adalah database sebagai penyedia data. Aplikasi-aplikasi database dituntut untuk mampu melayani banyak akses data. Hal ini dapat dimaklumi karena database server telah di rancang untuk dapat melayani beragam jenis akses data. Saat ini aplikasi database semakin berkembang, baik dalam hal kegunaan, ukuran, maupun kompleksitas. Hal ini secara langsung akan berdampak pada serverdatabase sebagai penyedia layanan terhadap akses database, konsekuensi dari semua itu adalah beban database server akan semakin bertambah berat dan mengakibatkan kurang optimalnya kinerja dari server tersebut. Oleh sebab itu, diperlukan perancangan yang tepat dan handal dalam membangun database server.

Solusi praktis dan tepat yang dapat diterapkan untuk mengatasi permasalahan diatas antara lain dengan penerapan Teknologi Cluster. Banyak sekali manfaat yang diperoleh dari teknologi cluster diantaranya meningkatkan ketersediaan dan performansi system. Pada server database yang besar dalam pelayanannya tidak menggunakan server database tunggal, tetapi dilayani oleh sekelompok server database, beberapa buah server database dihubungkan menjadi satu pada lingkungan yang sangat kompleks. Arsitektur yang digunakan harus menjamin bahwa sistem bekerja dengan baik, setiap server mengerjakan beban semestinya, dan tidak ada bottleneck (kemacetan). Berbagai jenis server diikat menjadi satu untuk menjadikan suatu pelayanan tunggal (one stop shopping). Database tercluster tersebut dapat dianggap personal desktop atau database tunggal bagi penggunanya.

Database pada masa sekarang ini dituntut agar dapat berjalan dengan cepat dan mempunyai kehandalan yang tinggi, Dengan clustering ini database yang disimpan dapat terbagi ke beberapa mesin dan pada saat aplikasi berjalan, semua mesin yang menyimpan data tersebut dianggap sebagai satu kesatuan. Metode clustering seperti ini sangat baik untuk load balancing dan penanganan system failure karena kemampuan tiap mesin akan digunakan dan jika ada salah satu mesin yang mengalami failure maka sistem tidak akan langsung terganggu karena mesin lain akan tetap berfungsi. Kemampuan clustering memungkinkan sebuah database tetap hidup dalam waktu yang lama.

Clustering Database Menggunakan Teknologi DBMS



Salah satu keunggulan Oracle sebagai DBMS (Database Management System) adalah mampu menangani banyak sekali data yang masuk dan keluar dari database. Dengan adanya keunggulan tersebut database Oracle digunakan oleh banyak perusahaan yang mempunyai kapasitas data yang sangat besar. Tapi jika pada Server yang menghubungkan antara client dan database Oracle mengalami traffic yang sangat tinggi, maka akan terjadi kemacetan pada Server tersebut yang bisa membuat database menjadi down (mati). Hal tersebut bisa membuat perusahaan tersebut mengalami kerugian besar. Oracle mengatasi masalah tersebut dengan mengimplementasikan sebuah teknologi Clustering Database yang disebut Real Application Cluster RAC dimana pengaksesan database Oracle dibagi menjadi beberapa server dengan tujuan server - server tersebut mampu mengatasi masalah traffic yang sering terjadi apabila banyak sekali client yang mengakses ke database Dari sistem yang dibangun ini akan dihasilkan sistem database yang high availability dengan kemampuan mampu melakukan pengalihan tugas pada server yang ada ketika server yang utama sedang mati.


rac

Dari sisi DBMS, memang Oracle termasuk product top, terutama system clusteringnya… Oracle Real Application Cluster (RAC) merupakan opsi tambahan dari Oracle, dimana sejak Oracle 9i sudah ada dan membuat system database lebih meningkat in term of reliability, availability ataupun performance nya… :D.

Seperti terlihat pada architecture di atas, suatu clustered database Oracle dapat dibentuk melalui beberapa node server. “Kelebihannya apa… ?”, seperti yang udah diuraikan pada pembahasan di atas menggunakan teknologi cluster, yaitu jika satu server mati, maka masih bisa dihandle oleh yang lain. Disamping itu jika utilisasi servernya sudah hampir penuh, kita bisa menambah server tambahan. So, dengan gampang membuat capacity on demand... :D. Dan konfigurasi ini adalah aktif-aktif, bukan seperti database lain yang aktif-pasif, sehingga bisa idle resource.

rac2
So, satu cluster database dapat diakses oleh multiple instances. Setiap server mempunyai IP public yang bisa diakses oleh banyak user. Selain itu, server itu juga mempunyai IP private untuk berhubungan dengan server lain. Untuk mengirim ‘heartbeat’ mengenai status server-server tersebut. Konfigurasi RAC ini kudu menshare database didalam suatu storage. Storage-nya bisa menggunakan Network Attached Storage (NAS), Storage Area Network (SAN) ataupun SCSI disk. Jika performance yang diinginkan, maka solusi clustered database dengan SAN adalah yang terbaik.
Nah, karena RAC ini memang share segalanya, maka memerlukan pula volume management dan file system yang digunakan juga kudu cluster-aware. Oracle sih menyediakan yang namanya Automatic Storage Management (ASM), dimana segala storage ataupun penulisan ke disk dihandle oleh Oracle. Alternatif lain ada juga, menggunakan raw disk juga bisa, ataupun cluster file system. Seperti Oracle Cluster File System (OCFS) di Linux / Windows. Mau pake third party juga bisa, model IBM GPFS, ataupun Veritas Cluster File System (VxCFS) dari Veritas.

Untuk memonitornya pun tidak sulit. Dengan adanya Oracle Enterprise Management (OEM) Grid Control, mau ngeliat status, alert, set threshold resource, monitor performance, dan manage services seperti startup, shotdown, etc. Terlebih dengan fitur workload management maka beban bisa terdistribusikan dengan baik. Apakah Oracle RAC ini yang dibutuhkan… ??? Yaagh jawabnya tergantung kebutuhan,  kalau nggak memerlukan system yang high availability (HA) yaagh nggak perlu. Masih banyak yang lebih cost effective.


berita terkait dengan releasenya oracle 11g rc 2


Jakarta, 17 November, 2009 - Generasi Terbaru dari Inovasi Database Menghantarkan Kualitas Layanan Superior dengan Biaya Lebih Rendah.

Fakta Berita
  • Oracle® Database 11g Release 2 telah tersedia dan dapat didownload hari ini dari Oracle Technology Network (OTN).
  • Generasi terbaru dari database #1 didunia ini diciptakan dengan inovasi yang ada pada Oracle Database 11g untuk membantu organisasi menghantarkan informasi lebih baik diseluruh enterprise, dengan layanan tingkat tinggi dan biaya lebih rendah.

Mengurangi Biaya Server 5x Lebih Baik dengan Menggabungan Kedalam Grid

  • Dengan release ini, Oracle Real Application Clusters (RAC) menghantarkan grid plug and play dan kemampuan pooling server baru yang memungkinkan organisasi untuk mengurangi biaya server mereka dengan streamline provision dan pengaturan dari database grid terkonsolidasi.
  • Oracle RAC One Node, pilihan Database baru, yang tersedia hari ini. Oracle RAC One Node adalah solusi yang memungkinkan pelanggan untuk dengan mudah mengkonsolidasikan lingkungan database mereka kedalam grid dengan ketersediaan yang disediakan oleh Oracle Real Application Clusters.

Mengurangi Biaya Penyimpanan

  • Kombinasi dari Oracle Database 11g Release 2 Advanced Compression dan Partisi mendukung pengurangan biaya penyimpanan dengan mengkompresi data sebanyak 2-4x dan menyederhanakan penggunaan penyimpanan biaya rendah.
  • Pada release ini, Oracle Automatic Storage Management telah diperpanjang untuk mendukung tujuan umum sistem file cluster dan membantu pelanggan mengurangi biaya pengaturan penyimpanan.

Menghilangkan Redundancy

  • Oracle Database 11g Release 2 Automatic Storage Management, Oracle Real Application Clusters. Dan Active Data Guard memungkinkan sumber penyimpanan dan server digunakan untuk toleransi kesalahan dan menjalankan. workload produksi, menjaga server dan penyimpanan dari posisi idle sampai menunggu untuk deteksi kesalahan.
  • Pada release ini, Edition-based Redefinition telah diperkenalkan untuk memungkinkan aplikasi database pelanggan dapat di upgrade secara online; ini menghilangkan kebutuhan untuk upgrade terpisah.

Meningkatkan Kinerja untuk Data Warehouses

  • Oracle Database 11g Release 2, dikombinasikan dengan Oracle Database Machine, dapat menghantarkan kinerja 10 kali lebih cepat.
  • Release ini dapat menghantarkan kinerja yang lebih baik dengan kemampuan untuk secara transparan melaksanakan pekerjaan melawan data yang telah tersimpan di memori diseluruh server pada grid.

Meningkatkan 2x Produktifitas DBA

  • Kemampuan pengaturan terotomasi yang dapat membantu untuk melipatgandakan produktifitas administrator database dari versi lama Oracle Database, dan mengurangi waktu yang dibutuhkan untuk mengupgrade dari versi terdahulu.

Kutipan Pendukung

Kastoto, Technical Director,  PT. Adicipta Inovasi Teknologi menjelaskan:


“Oracle Database adalah platform kuat untuk enterprise data store. Sekarang hal ini telah menjadi lebih terukur dan teratur, terutama dengan banyaknya fitur fitur baru grid. Oracle Active Data Guard membuat standby database tersedia untuk tujuan permintaan dan laporan, yang menyediakan ROI lebih baik untul client kita.”

Andy Mendelsohn, Senior Vice President of Database Server Technologies, Oracle menjelaskan:


“Pelanggan kami menginginkan fitur fitur yang menawarkan kinerja lebih baik dan ketersediaan, biaya TI lebih rendah untuk menghantarkan informasi lebih baik untuk pengguna bisnis mereka. Ketersediaan Release 2 melengkapi visi dari Oracle Database 11g untuk memenuhi tantangan TI dan bisnis saat ini, dan melanjutkan strategi kami untuk membantu pelanggan menghantarkan kualitas tinggi layanan dengan biaya rendah.”

Carl Olofson, Research Vice President, IDC menjelaskan:


“Sebagaimana organisasi menghadapi pertumbuhan dan kompleksitas diseluruh data center, mereka mencari cara untuk meminimalisasi biaya TI dan meningkatkan efisiensi administrasi. Peningkatan fitur-fitur Oracle Databse 11g Release 2 kepada grid computing, pengaturan penyimpanan dan kemampuan administrasi yang diciptakan untuk membantu pengguna meraih penggunaan sumber daya lebih baik untuk sistem pengaturan informasi sementara membuat infrastruktur sistem dan penyimpanan terkait lebij mudah untuk ditata dengan harga terjangkau.”


Segitu dulu dah beberapa informasi yang berhasil ane rangkum dari berbagai sumber. Segala kekurangan ane mohon maap..

Referensi

http://en.wikipedia.org/wiki/Oracle_RAC
http://www.endrosri.co.cc/perkuliahan/Basis-Data-2/MySQL%20Cluster.pdf
http://www.eepis-its.edu/id/ta/659/Clustering-Database-Menggunakan-Teknologi-Dbms
http://triatmono.wordpress.com/2009/05/09/overview-oracle-real-application-clusterz/
http://www.chip.co.id/direct/?p=3678

© 2010 by Irfandz Lagi Enjoypiss

Sunday, October 17, 2010

Mengenal PL/SQL (Programming Language/Structured Query Language)


Setelah nyari2 referensi ttg PL/SQL, dan baca2 beberapa artikel, akhirna ane tulis dah di blog ini. Rata2 tulisan yang bagus tentang PL/SQL mua dalam English, ya musti minta bantuan eyang gugel lagi dueh untuk ngartiin.. Artikel tentang PL/SQL yang ane tulis ini masih dalam pembahasan secara umum, coz kalo sampe detail bisa ampe' puluhan halaman... Untuk penggunaan bahasa selanjutnya agak resmi ya,, coz spertinya gimana gitu mbahas kek gini kalo pake bahasa2 planet seperti ne... xixixi

Uke langsung aja.., "apa seh yang dimaksud dengan PL/SQL?"
menurut pak guru Wikipedia kek gini
"PL/SQL (Procedural Language/Structured Query Language) is Oracle Corporation's procedural extension language for SQL and the Oracle relational database. PL/SQL's general syntax resembles that of Ada."
yang kurang lebih artinya, PL/SQL (Procedural Language / Structured Query Language) adalah ekstensi bahasa prosedural punya korporasi oracle untuk SQL dan DBMS relasional oracle.

PL/SQLPL/SQL adalah salah satu dari 3 kunci bahasa pemrograman yang tertanam dalam DBMS Oracle, bersama dengan SQL itu sendiri dan Java. Mendukung variabel, kondisi, loop, exception (pengecualian) dan array juga didukung meski dengan cara yang agak tidak biasa, yang melibatkan penggunaan koleksi PL/SQL.

PL/SQL sesungguhnya merupakan bahasa pemrograman generasi ke-4 yang menawarkan akses SQL yang mulus, integrasi yang ketat dengan Oracle 10g Database Server dan tools lain yang berhubungan. Dengan PL/SQL kita bisa memanipulasi data dan menggunakan pernyataan-pernyataan SQL, serta mengendalikan aliran program dengan konstruksi prosedural, seperti menggunakan pernyataan kondisional IF-THEN dan LOOP. Dalam PL/SQL kita juga bisa mendeklarasikan prosedur-prosedur dan fungsi-fungsi, serta mengatasi kesalahan (error) yang mungkin muncul(dalam bentuk exception handler). Aplikasi-aplikasi yang ditulis menggunakan UI pemrograman Oracle dapat memanggil prosedur tersimpan(stored procedure) yang ditulis menggunakan PL/SQL dan mengirim blok2 kode PL/SQL ke server untuk dieksekusi di sana.

Strukur Umum PL/SQL

Lanjut neh... :D

PL/SQL bekerja server-side yang mana PL/SQL ini sesungguhnya akan dijalankan di server basisdata. Truz apa implikasinya? Karena berjalan server-side, kode-kode PL/SQL ini sangat efisien untuk operasi-operasi yang melibatkan data dalam volume besar serta meminimalisir lalu lintas di jaringan komputer pada aplikasi-aplikasi client-server. PL/SQL sangat portable dan merupakan bahasa transaksi berkinerja tinggi serta merupakan bahasa yang menawarkan keunggulan-keunggulan seperti berikut:

  • Dukungan penuh terhadap SQL. PL/SQL memungkinkan kita untuk menggunakan semua sintaks manipulasi data SQL, kendali cursor, dan perintah-perintah pengendali transaksi, sehingga kita dapat memanipulasi basis data oracle secara fleksibel dan aman. PL/SQL mendukung penuh seluruh tipe data SQL seperti yang didefinisikan oleh Oracle 10g, mengurangi konversi yang mungkin akan terjadi antara aplikasi dan basis data. Digabungkan dengan akses langsung yang dilakukan oleh SQL, tipe data yang terbagi mengintegrasikan PL/SQL dengan kamus data(data dictionary) milik basis data oracle 10g. Atribut-atribut %TYPE dan %ROWTYPE memungkinkan kode-kode kita beradaptasi dengan perubahan definisi tabel. Sebagai contoh, atribut %TYPE mendeklarasikan peubah (variable)berbasis pada jenis kolom basis data. Jika type kolom berubah, peubah kita akan menggunakan type yang benar saat aplikasi dijalankan (run-time environment).
  • Kinerja yang lebih baik. Jika aplikasi kita cenderung bekerja dengan volume data yang besar, kita dapat menggunakan blok PL/SQL untuk mengelompokkan pernyataan-pernyataan SQL sebelum mengirimnya ke server basis data Oracle 10g untuk dieksekusi. Hal ini akan secara dramatis mengurangi “biaya” komunikasi antar-aplikasi kita dengan sistem basis data Oracle 10g. Prosedur-prosedur tersimpan PL/SQL akan dikompilasi sekali saja dan disimpan dalam bentuk yang langsung dapat dieksekusi, sehingga pemanggilan prosedur dapat berlangsung dengan cepat dan efisien.
  • Produktifitas yang lebih tinggi. PL/SQL menambahkan kemampuan-kemampuan prosedural yang bersifat sama dalam semua lingkungan. Saat kita mahir menggunakan PL/SQL dengan salah satu tools yang dimiliki oleh Oracle 10g, kita dapat mentransfer pemahaman kita pada tools yang lain, sehingga sangat meningkatkan produktifitas. Sebagai contoh, script yang ditulis menggunakan suatu tools dapat digunakan oleh tools yang lain.
  • Skalabilitas. Prosedur-prosedur tersimpan yang ditulis menggunakan PL/SQL meningkatkan skalabilitas dengan cara memusatkan pemrosesan aplikasi server-side(di sisi server). Fasilitas memori terbagi (shared memory) dari server terbagi (shared server) memungkinkan basis data Oracle 10g mendukung ribuan pengguna.
  • Kemudahan dipelihara. Sekali divalidasi, prosedur tersimpan (stored procedure) yang ditulis menggunakan bahasa PL/SQL dapat digunakan oleh sejumlah aplikasi. Jika definisinya berubah, hanya prosedur tersimpa yang bersangkutan yang dipengaruhi, bukannya aplikasi-aplikasi yang memanggilnya. Hal ini menyederhanakan pemeliharaan. Selain itu, memelihara stored procedure di server lebih mudah dibandingkan memelihara beberapa salinannya di banyak komputer client.Pada dasarnya ada 3 jenis objek PL/SQL yang paling dasar, yaitu stored procedure, dan stored function serta trigger, dimana ketiganya merupakan bagian dari beberapa objek PL/SQL lainnya yang dapat disebutkan di bawah ini.
  • Packages, adalah kumpulan prosedur dan fungsi yang secara logika berhubungan. Pada package ini ada yang dinamakan sebagai spec (spesifikasi), yang merupakan antarmuka ke aplikasi pengguna. Spec ini mendeklarasikan peubah-peubah (variables), jenis-jenisnya, konstanta2, exception (pengecualian), serta cursor, yang tersedia untuk dimanfaatkan oleh pengguna.
  • Package Body, merupakan tubuh program yang secara penuh mendefinisikan cursor serta sub program, serta juga digunakan untuk mengimplementasikan spec. Tubuh program ini merupakan rincian implementasi deklarasi dan pada umumnya tersembunyi dari aplikasi yang dibuat opeh pengguna.
  • Type Body, merupakan kumpulan metode-metode (prosedur-prosedur dan fungsi-fungsi) yang behubungan dengan tipe data yang didefinisikan pengguna.
  • Procedure, merupakan blok PL/SQL yang melaksanakan aksi tertentu yang sifatnya spesifik.
  • Functions, merupakan blok PL/SQL yang mengembalikan suatu nilai tunggal menggunakan perintah RETURN.
  • Trigger, merupakan nlok PL/SQL yang tereksekusi saat even tertentu terjadi di basis data. Even-even ini mungkin berbasis pada tabel seperti saat baris, tertentu ditambahkan ke suatu tabel. Trigger dapat juga merupakan even-even basis data, seperti misalnya even yang terjadi saat pengguna login ke basis data.

Uke dah,, sekarang ke contoh penulisan :D

Struktur Blok PL/SQL

Terdapat tiga bagian:

  • Bagian pendeklarasian tipe data (opsional)
  • Bagian penulisan perintah
  • Bagian eksepsi (opsional)

Bentuk umum PL/SQL


DECLARE
variabel tipe_data;
konstanta CONSTANT tipe_data := nilai;
...
BEGIN
statement_1;
statement_2;
...
EXCEPTION
WHEN nama_eksepsi THEN statement_untuk_mengatasi_error;
...
END;


Contoh paling sederhana

BEGIN
DBMS_OUTPUT.PUT_LINE(‘Belajar Oracle’);
END;

Catatan: Untuk melihat hasil, setting terlebih dahulu variabel sistem SERVEROUTPUT dengan menuliskan : SET SERVEROUTPUT ON

Contoh dengan eksepsi

SET SERVEROUTPUT ON
DECLARE
X Integer;
BEGIN
X := ‘Belajar Oracle’;
DBMS_OUTPUT.PUT_LINE( TO_CHAR(X) );
EXCEPTION
WHEN VALUE_ERROR THEN
DBMS_OUTPUT.PUT_LINE (‘Kesalahan pada pengisisan
nilai’);
END;
/


Contoh Studi Kasus

Prosedur debit_account di bawah ini memiliki kegunaan untuk menarik uang sejumlah tertentu dari rekening bank. Prosedur ini menerima parameter formal nomor rekening(acc_id) dan jumlah penarikan (debit_amount), kemudian menghitung saldo (balance) yang baru. Jika saldo (new_balance) lebih kecil dari nol, prosedur akan melompat ke rutin kesalahan (EXCEPTION) ; Jika tidak, ia akan dengan segera meperbarui rekening bank.

PROCEDURE debit_account (acct_id INTEGER, debit_amount REAL) IS
–- BAGIAN DEKLARASI
old_balance REAL;
new_balance REAL;
overdrawn EXCEPTION;
–- PROGRAM PL/SQL
BEGIN
SELECT bal INTO old_balance FROM accts
WHERE acct_no = acct_id;
new_balance:= old_balance – debit_amount;
IF new_balance < 0 THEN
RAISE overdrawn;
ELSE
UPDATE accts SET bal = new_balance
WHERE acct_no = acct_id;
END IF;
COMMIT;
EXCEPTION
WHEN overdrawn THEN
- - KODE UNTUK MENANGANI KESALAHAN DILETAKKAN DI SINI
END debit_account;
/

Bagian deklarasi mendeklarasikan peubah-peubah PL/SQL, exception, serta cursor. Bagian yang dapat dieksekusi memuat kode PL/SQL dan pernyataan-pernyataan SQL, dan dapat mengandung blok-blok bersarang (nested blocks). Penanganan eksepsi (exception handler) memuat kode-kode yang akan dipanggil saat exception (mirip dengan error) terjadi, entah menggunakan kode eksepsi yang telah terdefinisi sebelumnya (seperti NO_DATA_FOUND atau ZERO_DIVIDE) atau kode eksepsi yang kelak kita definisikan sendiri.

Sekian dulu tulisan ini,, capek dari tadi ngetik teruz.. untuk belajar lebih lanjut bisa langsung ke referensi yang saya gunakan.. :D


References

PL/SQL dari Wikipedia, Ensiklopedia bebas.

Pengenalan PL/SQL slide presentasi staff kampus sebelah

Eksepsi, dari sono juga :D

Langsung ke direktorinya di sini
ne referensi yang dari buku, Adi_nugroho.Menjadi Administrasi Basis Data ORACLE 10g.2008.Bandung:Informatika

Masih kurang? Pengin belajar lebih lanjut, bisa di rohmat.net

Semoga Bermanfaat...
© 2010 by Irfandz Lagi Enjoypiss