MySQL: Perbedaan antara revisi

Konten dihapus Konten ditambahkan
HsfBot (bicara | kontrib)
k replaced: Meski pun → Meskipun
Binchosqlmap (bicara | kontrib)
penambahan eksternal link ke monty
 
(24 revisi perantara oleh 13 pengguna tidak ditampilkan)
Baris 6:
|developer = [[Oracle Corporation|Oracle]] (sebelumnya [[Sun Microsystems|Sun]], sebelumnya [[MySQL AB]])
|released = {{start-date|23 May 1995}}
|latest_release_version = 8.0.1630
|latest_release_date = {{release date and age|df=yes|20192022|0407|2506}}<ref>{{cite web|url=https://dev.mysql.com/doc/relnotes/mysql/8.0/en/news-8-0-16.html |title=Changes in MySQL 8.0.16 |publisher=[[Oracle Corporation]] |accessdate=27 may 2019}}</ref>
<!--|latest_preview_version = 5.6.5
|latest_preview_date = {{release date and age|df=yes|2012|04|10}}-->
|frequently updated = yes
|programming language = [[C (programming language)|C]], [[C++]]<ref>{{cite web|title=MySQL|url=http://www.ohloh.net/p/mysql/analyses/latest|work=Ohloh.net|access-date=2012-05-15|archive-date=2012-07-07|archive-url=https://web.archive.org/web/20120707023450/http://www.ohloh.net/p/mysql/analyses/latest|dead-url=yes}}</ref>
|operating_system = [[antar-platform]]
|genre = [[Relational database management system|RDBMS]]
Baris 17:
|website = [http://www.mysql.com/ www.mysql.com]<br/>[http://dev.mysql.com/ dev.mysql.com]
}}
[[Berkas:Monty-Widenius-David-Axmark-MySQL-2003-05-09.jpg|jmpl|200px|David Axmark (kiri) dan Michael "Monty" Widenius, Pendiri MySQL AB, dalam sebuah konferensi]]
'''MySQL''' adalah sebuah [[perangkat lunak]] sistem manajemen [[basis data]] [[SQL]] ([[bahasa Inggris]]: ''database management system'') atau DBMS yang [[multialur]], [[multipengguna]], dengan sekitar 6 juta instalasi di seluruh dunia. [[MySQL AB]] membuat MySQL tersedia sebagai [[perangkat lunak gratis]] di bawah lisensi [[GNU General Public License]] (GPL), tetapi mereka juga menjual di bawah lisensi komersial untuk kasus-kasus di mana penggunaannya tidak cocok dengan penggunaan GPL.
 
Tidak sama dengan proyek-proyek seperti [[Apache HTTP Server|Apache]], di mana perangkat lunak dikembangkan oleh komunitas umum, dan [[hak cipta]] untuk kode sumber dimiliki oleh penulisnya masing-masing, MySQL dimiliki dan disponsori oleh sebuah perusahaan komersial [[Swedia]] [[MySQL AB]], di mana memegang hak cipta hampir atas semua kode sumbernya. Kedua orang Swedia dan satu orang [[Finlandia]] yang mendirikan MySQL AB adalah: [[David Axmark]], [[Allan Larsson]], dan [[Michael (Monty) Widenius:en:Michael_Widenius|Michael "Monty" Widenius]].
 
== Gambaran ==
== Sistem manajemen basis data [[relasional]] ==
 
MySQL adalah sebuah implementasi dari sistem manajemen basis data relasional ([[RDBMS]]) yang didistribusikan secara gratis di bawah [[GPL|lisensi GPL]] (General Public License). Setiap pengguna dapat secara bebas menggunakan, MySQLmendistribusikan, tetapidan denganmembuat batasan perangkat lunak tersebut tidak boleh dijadikan produkkarya turunan yangdari bersifat komersialMySQL. MySQL sebenarnya merupakan turunan salah satu konsep utama dalam basisdata yang telah ada sebelumnya; [[SQL]] (Structured Query Language). SQL adalah sebuah konsep pengoperasian basisdata, terutama untuk pemilihan atau seleksi dan pemasukan data, yang memungkinkan pengoperasian data dikerjakan dengan mudah secara otomatis.
 
Kehandalan suatu sistem basisdata ([[DBMS]]) dapat diketahui dari cara kerja pengoptimasi-nya dalam melakukan proses perintah-perintah SQL yang dibuat oleh pengguna maupun program-program aplikasi yang memanfaatkannya. Sebagai peladen basis data, MySQL mendukung operasi basisdata transaksional maupun operasi basisdata non-transaksional. Pada modus operasi non-transaksional, MySQL dapat dikatakan unggul dalam hal unjuk kerja dibandingkan perangkat lunak peladen basisdata kompetitor lainnya. Namun pada modus non-transaksional tidak ada jaminan atas reliabilitas terhadap data yang tersimpan, karenanya modus non-transaksional hanya cocok untuk jenis aplikasi yang tidak membutuhkan reliabilitas data seperti aplikasi blogging berbasis web ([[wordpress]]), [[Content management system|CMS]], dan sejenisnya. Untuk kebutuhan sistem yang ditujukan untuk bisnis sangat disarankan untuk menggunakan modus basisdata transaksional, hanya saja sebagai konsekuensinya unjuk kerja MySQL pada modus transaksional tidak secepat unjuk kerja pada modus non-transaksional.
 
== Sejarah MySQL ==
[[Berkas:Monty-Widenius-David-Axmark-MySQL-2003-05-09.jpg|jmpl|200px|David Axmark (kiri) dan Michael "Monty" Widenius, Pendiri MySQL AB, dalam sebuah konferensi]]
MySQL pada awalnya diciptakan pada tahun 1979, oleh Michael "[[:en:Michael_Widenius|Monty]]" Widenius, seorang programmer komputer asal [[Swedia]]. Monty mengembangkan sebuah sistem database sederhana yang dinamakan UNIREG yang menggunakan koneksi low-level ISAM database engine dengan indexing. Pada saat itu Monty bekerja pada perusahaan bernama TcX di Swedia.
 
TcX pada tahun 1994 mulai mengembangkan aplikasi berbasis web, dan berencana menggunakan UNIREG sebagai sistem database. Namun sayangnya, UNIREG dianggagap tidak cocok untuk database yang dinamis seperti web.
Baris 41:
David Axmark dari Detron HB, rekanan TcX mengusulkan agar MySQL di ‘jual’ dengan model bisnis baru. Ia mengusulkan agar MySQL dikembangkan dan dirilis dengan gratis. Pendapatan perusahaan selanjutnya di dapat dari menjual jasa “support” untuk perusahaan yang ingin mengimplementasikan MySQL. Konsep bisnis ini sekarang dikenal dengan istilah Open Source.
 
Pada tahun 1995 itu juga, TcX berubah nama menjadi MySQL AB, dengan Michael Widenius, David Axmark dan Allan Larsson sebagai pendirinya. Titel “AB” di belakang MySQL, adalah singkatan dari “Aktiebolag”, istilah PT ([[Perseroan terbatas|Perseroan Terbatas]]) bagi perusahaan Swedia.<ref>http://www.duniailkom.com/tutorial-mysql-sejarah-dan-masa-depan-mysql/</ref>
 
=== Akuisisi oleh Sun dan Oracle ===
== Keistimewaan MySQL ==
Pada tanggal 16 Januari 2008 Sun Microsystems, Inc mengumumkan aksi korporasi - akuisisi terhadap MySQL AB sehingga menjadikan Sun sebagai salah satu perusahaan dengan produk platform open source terbesar seperti [[Java]], [[OpenSolaris]] dan akhirnya MySQL.
 
Berselang setahun kemudian, tepatnya pada tanggal 20 April 2009 giliran Oracle melakukan akusisi terhadap Sun Microsystems. Sejak saat itu berkembang isu Oracle - yang memiliki produk database yang berkompetisi dengan MySQL - akan mematikan MySQL. Namun sampai sejauh ini hal tersebut belum terbukti.
MySQL memiliki beberapa keistimewaan, antara lain:
 
# '''Portabilitas'''. MySQL dapat berjalan stabil pada berbagai sistem operasi seperti Windows, Linux, FreeBSD, Mac Os X Server, Solaris, Amiga, dan masih banyak lagi.
== Kemampuan MySQL ==
# '''Perangkat lunak sumber terbuka'''. MySQL didistribusikan sebagai [[perangkat lunak sumber terbuka]], di bawah lisensi [[GPL]] sehingga dapat digunakan secara gratis.
 
# '''Multi-user'''. MySQL dapat digunakan oleh beberapa pengguna dalam waktu yang bersamaan tanpa mengalami masalah atau konflik.
MySQL memiliki beberapa keistimewaan,kapabilitas antara lainseperti:
# ''''PerformanceUnjuk tuning'''', MySQL memiliki kecepatankerja yang menakjubkantinggi dalam menanganimemproses query sederhana, dengan katadalam lainarti dapat memproses lebih banyak SQL per satuan waktu.
# '''Ragam tipe data'''. MySQL memiliki ragam tipe data yang sangat kaya, seperti signed / unsigned integer, float, double, char, text, date, timestamp, dan lain-lain.
# Memiliki lebih banyak tipe data seperti: signed/unsigned integer yang memiliki panjang data sebesar 1,2,3,4 dan 8 byte, FLOAT, DOUBLE, CHAR, VARCHAR, TEXT, BLOB, DATE, TIME, DATETIME, TIMESTAMP, YEAR, SET dan tipe ENUM.
# '''Perintah dan Fungsi'''. MySQL memiliki operator dan fungsi secara penuh yang mendukung perintah Select dan Where dalam perintah (''query'').
# Mendukung field yang dijadikan Index, dengan maksimal '''32 index''' dalam satu tabel. *
# '''Keamanan'''. MySQLMYSQL memiliki beberapa lapisan keamanan, seperti level [[''subnetmask]]'', nama [[''host]]'', dan izin akses ''user'' dengan sistem perizinanperijinan yang mendetail serta sandi/password terenkripsi.
# '''Skalabilitas dan Pembatasan'''. MySQL mampu menangani basis data dalam skala besar, dengan jumlah rekaman ([[records]]) lebih dari 50 juta dan 60 ribu tabel serta 5 miliar baris. Selain itu batas indeks yang dapat ditampung mencapai 32 indeks pada tiap tabelnya.
# '''Konektivitas'''. MySQL dapat melakukan koneksi dengan klien menggunakan protokol [[TCP/IP]], [[Unix soket]] ([[UNIX]]), atau [[Named Pipes]] ([[NT]]).
# '''Multi-user'''. MySQL dapat digunakan oleh beberapa pengguna dalam waktu yang bersamaan tanpa mengalami masalah atau konflik.
# '''Lokalisasi'''. MySQL dapat mendeteksi pesan kesalahan pada klien dengan menggunakan lebih dari dua puluh bahasa. Meskipun demikian, bahasa Indonesia belum termasuk di dalamnya.
# '''Perintah dan Fungsi'''. MySQL memiliki operatorfungsi dan fungsioperator secara penuh yang mendukung perintah Select''select'' dan Where''where'' dalam perintah (''query'').
# '''Antar Muka'''. MySQL memiliki antar muka (interface) terhadap berbagai aplikasi dan bahasa pemrograman dengan menggunakan fungsi [[API]] (Application Programming Interface).
# ''Structure Table, ''MySQL memiliki struktur tabel yang lebih fleksibel dalam menangani ''ALTER TABLE'' dibandingkan DBMS lainnya.
# '''Klien dan Peralatan'''. MySQL dilengkapi dengan berbagai peralatan ([[tool]]) yang dapat digunakan untuk administrasi basis data, dan pada setiap peralatan yang ada disertakan petunjuk online.
# '''Skalabilitas dan Pembatasan'''. MySQL mampu menangani basis data dalam skala besar, dengan jumlah rekaman ([[records]]) lebih dari 50 juta dan 60 ribu tabel serta 5 miliar baris. Selain itu batas indeks yang dapat ditampung mencapai 32 indeks pada tiap tabelnya.
# '''Struktur tabel'''. MySQL memiliki struktur tabel yang lebih fleksibel dalam menangani ALTER TABLE, dibandingkan basis data lainnya semacam [[PostgreSQL]] ataupun [[Oracle]].
# Mendukung penuh terhadap kalimat SQL GROUP BY dan ORDER BY. Mendukung terhadap fungsi penuh ( COUNT(),COUNT(), DISTINCT() AVG(), STD(), SUM(), MAX() dan MIN() )
 
== Kelebihan Dandan kekurangan MySQL dibanding RDBMS Lain ==
 
Hal paling mendasar yang menjadikan MySQL pilihan utama sebagai database yang digunakan adalah karena MySQL menggunakantidak Lisensidipungut GPLbiaya dan multiplatformlintas platform, sehingga lebih disukai para mahasiswa karena tidak membutuhkan biaya besar dalam membuat aplikasi serta tidak harus tergantung pada OS Windows ataupun Linux karena dapat dijalankan pada kedua OS tersebut dan beberapa OS lainnya. Tapi alasan tersebut tidaklah cukup untuk menjadikan MySQL sebagai RDBMS yang akan digunakan. Berikut keunggulan lain yang diberikan
== Kelebihan Dan kekurangan MySQL dibanding RDBMS Lain ==
Hal paling mendasar yang menjadikan MySQL pilihan utama sebagai database yang digunakan adalah karena MySQL menggunakan Lisensi GPL dan multiplatform, sehingga lebih disukai para mahasiswa karena tidak membutuhkan biaya besar dalam membuat aplikasi serta tidak harus tergantung pada OS Windows ataupun Linux karena dapat dijalankan pada kedua OS tersebut dan beberapa OS lainnya. Tapi alasan tersebut tidaklah cukup untuk menjadikan MySQL sebagai RDBMS yang akan digunakan. Berikut keunggulan lain yang diberikan
 
=== Kelebihan ===
# '''Portabilitas'''.Berlisensi MySQLGPL dan dapat berjalandijalankan stabil padadi berbagai sistem operasiplatform seperti Windows, Linux, FreeBSD, Mac Os X Server, Solaris, Amiga, dan masih banyak lagi.
# Berlisensi GPL dan Multi Platform.
# Dapat diintegrasikan dengan beberapa bahasa Pemrograman seperti PHP, .Net, Java, Python, Perl yang merupakan bahasa pemrograman yang paling dominan di kalangan programmer.
# Mendukung ODBC untuk sistem operasi Windows sehingga bisa digunakan aplikasi yang berjalan diwindows.
# Bisa dijalankan pada spesifikasi hardware yang rendah karena lebih hemat resource memory (dibandingkan database lain) sehingga mudah digunakan untuk bahan pembelajaran.
# MySQL dapat mendeteksi pesan kesalahan pada klien dengan menggunakan lebih dari 20 bahasa meskipun bahasa indonesia belum termasuk didalamnya.
#
# MySQL dapat diintegrasikan dengan [[Layanan hos web|Hosting]].
 
=== Kekurangan ===
# Banyak mengklaim{{Siapa}} kurang support terhadap pemrograman Visual/Desktop, sehingga sedikit yang menggunakan untuk aplikasi visual.
#
# Karena berlisensi GPL sehingga sulit mendapatkan update untuk ''problem ''yang ''urgent, ''sehingga perusahaan skala menengah keatas lebih memilih RDBMS berlisensi dan disupport seperti Oracle dan MS SQL Server
# Sangat diragukan dalam menangani data skala besar, karena ada beberapa opini{{Siapa}} yang pro dan kontra terhadap kemampuan MySQL terhadap pengolahan data yang besar.
 
== Antarmuka Pemrograman Aplikasi ==
== Kemampuan MySQL ==
Terdapat beberapa [[API]] (''Application Programming Interface'') tersedia yang memungkinkan aplikasi-aplikasi komputer yang ditulis dalam berbagai [[bahasa pemrograman]] untuk dapat mengakses basis data MySQL antara lain: [[bahasa pemrograman C]], [[C++]], [[C Sharp|C#]], [[bahasa pemrograman Eiffel]], [[bahasa pemrograman Smalltalk]], [[Java|bahasa pemrograman Java]], [[Lisp|bahasa pemrograman Lisp]], [[Perl]], [[PHP]], [[bahasa pemrograman Python]], [[Ruby]], [[REALbasic]] dan [[Tcl]]. Sebuah antarmuka [[ODBC]] memanggil [[MyODBC]] yang memungkinkan setiap bahasa pemrograman yang mendukung [[ODBC]] untuk berkomunikasi dengan basis data MySQL. Kebanyakan kode sumber MySQL dalam bahasa [[bahasa pemrograman C|ANSI C]].
Berikut Fitur serta kapabilitas yang dimiliki oleh MySQL:
# Unjuk kerja yang tinggi dalam memproses query sederhana, dalam arti dapat memproses lebih banyak SQL per satuan waktu.
# Memiliki lebih banyak tipe data seperti: signed/unsigned integer yang memiliki panjang data sebesar 1,2,3,4 dan 8 byte, FLOAT, DOUBLE, CHAR, VARCHAR, TEXT, BLOB, DATE, TIME, DATETIME, TIMESTAMP, YEAR, SET dan tipe ENUM.
# Mendukung field yang dijadikan Index, dengan maksimal '''32 index''' dalam satu tabel. *
# MYSQL memiliki beberapa '''lapisan keamanan''', seperti ''subnetmask'', nama ''host'', dan izin akses user dengan sistem perijinan yang mendetail serta sandi/password terenkripsi.
# '''Konektivitas ''', MySQL dapat melakukan koneksi dengan klien menggunakan protokol TCP/IP,Unix soket (UNIX),atau Named Pipes(NT).
# '''Multi-user'''. MySQL dapat digunakan oleh beberapa pengguna dalam waktu yang bersamaan tanpa mengalami masalah atau konflik
# ''Command and function'', MySQL memiliki fungsi dan operator secara penuh yang mendukung perintah ''select'' dan ''where'' dalam ''query''.
# ''Structure Table, ''MySQL memiliki struktur tabel yang lebih fleksibel dalam menangani ''ALTER TABLE'' dibandingkan DBMS lainnya.
# Mendukung penuh terhadap kalimat SQL GROUP BY dan ORDER BY. Mendukung terhadap fungsi penuh ( COUNT(),COUNT(), DISTINCT() AVG(), STD(), SUM(), MAX() dan MIN() )
 
== Bahasa pemrograman ==
 
Terdapat beberapa [[API]] (''Application Programming Interface'') tersedia yang memungkinkan aplikasi-aplikasi komputer yang ditulis dalam berbagai [[bahasa pemrograman]] untuk dapat mengakses basis data MySQL antara lain: [[bahasa pemrograman C]], [[C++]], [[C Sharp|C#]], [[bahasa pemrograman Eiffel]], [[bahasa pemrograman Smalltalk]], [[Java|bahasa pemrograman Java]], [[Lisp|bahasa pemrograman Lisp]], [[Perl]], [[PHP]], [[bahasa pemrograman Python]], [[Ruby]], [[REALbasic]] dan [[Tcl]]. Sebuah antarmuka [[ODBC]] memanggil [[MyODBC]] yang memungkinkan setiap bahasa pemrograman yang mendukung [[ODBC]] untuk berkomunikasi dengan basis data MySQL. Kebanyakan kode sumber MySQL dalam [[bahasa pemrograman C|ANSI C]].
 
== Penggunaan ==
MySQL sangat populer dalam [[aplikasi web]] seperti [[MediaWiki]] (perangkat lunak yang dipakai [[Wikipedia]] dan proyek-proyek sejenis) dan [[PHP-Nuke]] dan berfungsi sebagai komponen basis data dalam [[LAMP]]. Popularitas sebagai aplikasi web dikarenakan kedekatannya dengan popularitas [[PHP]], sehingga sering kali disebut sebagai ''Dynamic Duo''.
<s><sup>Text dicoret</sup>{{<!-- {|class="wikitable"
|-
Komentar
|}hjkglgjk -->}}</s>
 
== Administrasi ==
Untuk melakukan administrasi dalam basis data MySQL, dapat menggunakan modul yang sudah termasuk yaitu ''[[Command line|command-line]]'' (perintah: <code>mysql</code> dan <code>mysqladmin</code>). Juga dapat diunduh dari situs MySQL yaitu sebuah modul berbasis grafik (''[[Graphical user interface|GUI]]''): ''[http://mysql.com/products/tools/administrator MySQL Administrator]'' dan ''[http://mysql.com/products/tools/query-browser MySQL Query Browser]''. Selain itu terdapat juga sebuah perangkat lunak gratis untuk administrasi basis data MySQL berbasis web yang sangat populer yaitu [[phpMyAdmin]]. Untuk perangkat lunak untuk administrasi basis data MySQL yang dijual secara komersial antara lain: MySQL front, Navicat dan EMS SQL Manager for MySQL. Untuk pengelolaan website di hosting, database MySQL dapat dikelola melalui phpMyAdmin.
 
== AkusisiKomunitas OlehMySQL Sundi dan OracleIndonesia ==
MySQL termasuk salah satu database utama yang digunakan di Indonesia terutama di kalangan developer PHP. Ini disebabkan native integration antara PHP dan MySQL serta banyaknya hosting yang menyertakan kedua produk tersebut karena bebas lisensi dan sudah terbukti tangguh dan efisien.
 
Pada tanggal 16 Januari 2008 Sun Microsystems, Inc mengumumkan aksi korporasi - akuisisi terhadap MySQL AB sehingga menjadikan Sun sebagai salah satu perusahaan dengan produk platform open source terbesar seperti [[Java]], [[OpenSolaris]] dan akhirnya MySQL.
 
Website komunitas MySQL Indonesia yang terpisah dari komunitas PHP dapat Anda kunjungi di [http://groups.google.com/group/mysql-indonesia http://groups.google.com/group/mysql-indonesia].
Berselang setahun kemudian, tepatnya pada tanggal 20 April 2009 giliran Oracle melakukan akusisi terhadap Sun Microsystems. Sejak saat itu berkembang isu Oracle - yang memiliki produk database yang berkompetisi dengan MySQL - akan mematikan MySQL. Namun sampai sejauh ini hal tersebut belum terbukti.
 
== KomunitasSertifikasi MySQL Indonesia ==
Oracle selaku pemilik MySQL menawarkan sertifikasi kompetensi di Oracle University, meliputi<ref>{{Cite web|title=MySQL :: MySQL Certification|url=https://www.mysql.com/certification/|website=www.mysql.com|access-date=2024-06-05}}</ref>:
MySQL termasuk salah satu database utama yang digunakan di Indonesia terutama di kalangan developer PHP. Ini disebabkan native integration antara PHP dan MySQL serta banyaknya hosting yang menyertakan kedua produk tersebut karena bebas lisensi dan sudah terbukti tangguh dan efisien.
 
* MySQL Database Administration: Oracle Certified Professional MySQL 8.0 Database Administrator, MySQL 2021 Certified Implementation Specialist, MySQL Heatwave Implementation Certified Associate Rel 1
Website komunitas MySQL Indonesia yang terpisah dari komunitas PHP dapat Anda kunjungi di [http://groups.google.com/group/mysql-indonesia http://groups.google.com/group/mysql-indonesia].
* MySQL Developer: MySQL 8.0 Database Developer Oracle Certified Professional
 
== Lihat pula ==
Baris 140 ⟶ 126:
[[Kategori:Sistem manajemen basis data]]
[[Kategori:Sistem manajemen basis data sumber terbuka]]
[[Kategori:Artikel kelas awal bertopik teknologi informasi]]