Apa yang didefinisikan dalam mysql?

MySQL adalah perangkat lunak bebas dan sumber terbuka di bawah persyaratan Lisensi Publik Umum GNU, dan juga tersedia di bawah berbagai lisensi kepemilikan. MySQL dimiliki dan disponsori oleh perusahaan Swedia MySQL AB, yang dibeli oleh Sun Microsystems (sekarang Oracle Corporation). Pada tahun 2010, ketika Oracle mengakuisisi Sun, Widenius mem-fork proyek open-source MySQL untuk membuat MariaDB

MySQL memiliki klien yang berdiri sendiri yang memungkinkan pengguna untuk berinteraksi langsung dengan database MySQL menggunakan SQL, tetapi lebih sering MySQL digunakan dengan program lain untuk mengimplementasikan aplikasi yang membutuhkan kemampuan database relasional. MySQL adalah komponen dari tumpukan perangkat lunak aplikasi web LAMP (dan lainnya), yang merupakan singkatan dari Linux, Apache, MySQL, Perl/PHP/Python. MySQL digunakan oleh banyak aplikasi web berbasis database, termasuk Drupal, Joomla, phpBB, dan WordPress. MySQL juga digunakan oleh banyak situs web populer, termasuk Facebook, Flickr, MediaWiki, Twitter, dan YouTube

Ikhtisar[sunting | sunting sumber]

MySQL ditulis dalam bahasa C dan C++. Parser SQL-nya ditulis dalam yacc, tetapi menggunakan penganalisa leksikal buatan sendiri. MySQL bekerja pada banyak platform sistem, termasuk AIX, BSDi, FreeBSD, HP-UX, ArcaOS, eComStation, IBM i, IRIX, Linux, macOS, Microsoft Windows, NetBSD, Novell NetWare, OpenBSD, OpenSolaris, OS/2 Warp, QNX, . Port MySQL ke OpenVMS juga ada

Perangkat lunak server MySQL itu sendiri dan pustaka klien menggunakan distribusi lisensi ganda. Mereka ditawarkan di bawah GPL versi 2, atau lisensi kepemilikan

Dukungan dapat diperoleh dari manual resmi. Dukungan gratis juga tersedia di berbagai saluran dan forum IRC. Oracle menawarkan dukungan berbayar melalui produk MySQL Enterprise-nya. Mereka berbeda dalam cakupan layanan dan harga. Selain itu, sejumlah organisasi pihak ketiga ada untuk memberikan dukungan dan layanan

MySQL telah menerima ulasan positif, dan pengulas menyadarinya "berkinerja sangat baik dalam kasus rata-rata" dan bahwa "antarmuka pengembang ada di sana, dan dokumentasinya (belum lagi umpan balik di dunia nyata melalui situs Web dan sejenisnya) sangat, . Itu juga telah diuji untuk menjadi "server database SQL multi-pengguna, multi-utas yang cepat, stabil, dan benar"

Sejarah[sunting]

David Axmark (kiri) dan Michael "Monty" Widenius, pendiri MySQL AB, pada tahun 2003

MySQL dibuat oleh perusahaan Swedia, MySQL AB, yang didirikan oleh orang Swedia David Axmark, Allan Larsson, dan Swedia Finlandia Michael "Monty" Widenius. Pengembangan asli MySQL oleh Widenius dan Axmark dimulai pada tahun 1994. Versi pertama MySQL muncul pada 23 Mei 1995. Awalnya dibuat untuk penggunaan pribadi dari mSQL berdasarkan ISAM bahasa tingkat rendah, yang dianggap pembuatnya terlalu lambat dan tidak fleksibel. Mereka membuat antarmuka SQL baru, sambil mempertahankan API yang sama dengan SQL. Dengan menjaga agar API tetap konsisten dengan sistem mSQL, banyak pengembang dapat menggunakan MySQL alih-alih anteseden mSQL (yang dilisensikan secara eksklusif)

Tonggak sejarah[sunting | sunting sumber]

Tonggak tambahan dalam pengembangan MySQL disertakan

  • Rilis internal pertama pada 23 Mei 1995
  • Versi 3. 19. Akhir tahun 1996, dari www. tcx. se
  • Versi 3. 20. Januari 1997
  • Versi Windows dirilis pada 8 Januari 1998 untuk Windows 95 dan NT
  • Versi 3. 21. rilis produksi 1998, dari www. mysql. com
  • Versi 3. 22. alfa, beta dari tahun 1998
  • Versi 3. 23. beta dari Juni 2000, rilis produksi 22 Januari 2001
  • Versi 4. 0. beta dari Agustus 2002, rilis produksi Maret 2003 (serikat)
  • Versi 4. 1. beta dari Juni 2004, rilis produksi Oktober 2004 (R-trees dan B-trees, subqueries, pernyataan siap)
  • Versi 5. 0. beta dari Maret 2005, rilis produksi Oktober 2005 (kursor, prosedur tersimpan, pemicu, tampilan, transaksi XA)
Pengembang Federated Storage Engine menyatakan bahwa "The Federated Storage Engine adalah mesin penyimpanan bukti-konsep", tetapi distribusi utama MySQL versi 5. 0 menyertakannya dan menyalakannya secara default. Dokumentasi dari beberapa kekurangan muncul di "MySQL Federated Tables. Pedoman yang Hilang". Versi 5. 1 berisi 20 bug crashing dan hasil yang salah selain 35 bug yang ada di versi 5. 0 (hampir semuanya diperbaiki pada rilis 5. 1. 51). MySQL5. 1 dan 6. 0-alpha menunjukkan performa yang buruk saat digunakan untuk data warehousing – sebagian karena ketidakmampuannya menggunakan beberapa inti CPU untuk memproses satu kueri
  • Oracle mengakuisisi Sun Microsystems pada 27 Januari 2010
  • Pada hari Oracle mengumumkan pembelian Sun, Michael "Monty" Widenius mem-fork MySQL, meluncurkan MariaDB, dan membawa banyak pengembang MySQL bersamanya

Geir Høydalsvik, Senior Software Development Director untuk MySQL di Oracle pada tahun 2018

  • Server MySQL5. 5 tersedia secara umum (per Desember 2010). Peningkatan dan fitur termasuk
    • Mesin penyimpanan default adalah InnoDB, yang mendukung transaksi dan batasan integritas referensial
    • Peningkatan subsistem I/O InnoDB
    • Peningkatan dukungan SMP
    • Replikasi semisinkron
    • Pernyataan SIGNAL dan RESIGNAL sesuai dengan standar SQL
    • Dukungan untuk kumpulan karakter Unicode tambahan utf16, utf32, dan utf8mb4
    • Opsi baru untuk partisi yang ditentukan pengguna
  • ServerMySQL6. 0. 11-alpha diumumkan pada 22 Mei 2009 sebagai rilis terakhir dari 6. 0 baris. Pengembangan MySQL Server ke depan menggunakan Model Rilis Baru. Fitur dikembangkan untuk 6. 0 sedang dimasukkan ke dalam rilis mendatang
  • Ketersediaan umum MySQL 5. 6 diumumkan pada Februari 2013. Fitur-fitur baru termasuk peningkatan kinerja untuk pengoptimal kueri, throughput transaksional yang lebih tinggi di InnoDB, API memcache bergaya NoSQL baru, peningkatan partisi untuk kueri dan mengelola tabel yang sangat besar, tipe kolom TIMESTAMP yang menyimpan milidetik dengan benar, peningkatan replikasi, dan pemantauan kinerja yang lebih baik . Mesin penyimpanan InnoDB juga menyertakan dukungan untuk pencarian teks lengkap dan peningkatan kinerja komitmen grup
  • Ketersediaan umum MySQL 5. 7 diumumkan pada Oktober 2015. Pada MySQL 5. 7. Pada 8 Agustus 2015, MySQL mendukung tipe data JSON asli yang ditentukan oleh RFC 7159
  • Server MySQL8. 0 diumumkan pada bulan April 2018, termasuk NoSQL Document Store, kalimat DDL atomik dan crash safe dan sintaks JSON Extended, fungsi baru, seperti fungsi tabel JSON, penyortiran yang lebih baik, dan pembaruan parsial. Server MySQL sebelumnya 8. 0. 0-dmr (Milestone Release) diumumkan 12 September 2016
  • MySQL dinyatakan sebagai DBMS tahun 2019 dari peringkat DB-Engines

Riwayat rilis[sunting | sunting sumber]

RilisKetersediaan umumVersi minor terbaruRilis terbaruAkhir dukunganVersi lama, tidak lagi dipertahankan. 5. 15. 1. 732013-12-03 Des 2013 Versi lama, tidak lagi dipertahankan. 5. 55. 5. 622018-10-22 Des 2018 Versi lama, tidak terawat lagi. 5. 65. 6. 512021-01-20Feb 2021Versi lama, namun tetap dipertahankan. 5. 75. 7. 402022-10-11 Okt 2023 Versi stabil saat ini. 8. 08. 0. 312022-10-11Apr 2026

Versi lama, masih dipertahankan

Pengerjaan versi 6 dihentikan setelah akuisisi Sun Microsystems. Produk MySQL Cluster menggunakan versi 7. Keputusan dibuat untuk melompat ke versi 8 sebagai nomor versi utama berikutnya

Sengketa hukum dan akuisisi[sunting | sunting sumber]

Pada tanggal 15 Juni 2001, NuSphere menggugat MySQL AB, TcX DataKonsult AB dan penulis aslinya Michael ("Monty") Widenius dan David Axmark di U. Pengadilan Negeri S di Boston atas "pelanggaran kontrak, gangguan berat terhadap kontrak dan hubungan pihak ketiga, serta persaingan tidak sehat"

Pada tahun 2002, MySQL AB menggugat Progress NuSphere atas pelanggaran hak cipta dan merek dagang di pengadilan distrik Amerika Serikat. NuSphere diduga melanggar hak cipta MySQL AB dengan menautkan kode GPL MySQL dengan tabel NuSphere Gemini tanpa mematuhi lisensi. Setelah sidang pendahuluan di hadapan Hakim Patti Saris pada 27 Februari 2002, para pihak memasuki pembicaraan penyelesaian dan akhirnya berdamai. Setelah sidang, FSF berkomentar bahwa "Hakim Saris menjelaskan bahwa dia menganggap GNU GPL sebagai lisensi yang dapat ditegakkan dan mengikat. "

Pada Oktober 2005, Oracle Corporation mengakuisisi Innobase OY, perusahaan Finlandia yang mengembangkan mesin penyimpanan InnoDB pihak ketiga yang memungkinkan MySQL menyediakan fungsionalitas seperti transaksi dan kunci asing. Setelah akuisisi, siaran pers Oracle menyebutkan bahwa kontrak yang membuat perangkat lunak perusahaan tersedia untuk MySQL AB akan jatuh tempo untuk pembaruan (dan mungkin negosiasi ulang) sekitar tahun 2006. Selama Konferensi Pengguna MySQL pada bulan April 2006, MySQL AB mengeluarkan siaran pers yang menegaskan bahwa MySQL AB dan Innobase OY menyetujui perpanjangan "multi-tahun" dari perjanjian lisensi mereka

Pada Februari 2006, Oracle Corporation mengakuisisi Sleepycat Software, pembuat Berkeley DB, sebuah mesin basis data yang menyediakan basis untuk mesin penyimpanan MySQL lainnya. Ini memiliki pengaruh yang kecil, karena Berkeley DB tidak digunakan secara luas, dan dijatuhkan (karena kurangnya penggunaan) di MySQL 5. 1. 12, rilis pra-GA dari MySQL 5. 1 dirilis pada Oktober 2006

Pada Januari 2008, Sun Microsystems membeli MySQL AB seharga $1 miliar

Pada bulan April 2009, Oracle Corporation mengadakan perjanjian untuk membeli Sun Microsystems, pemilik hak cipta dan merek dagang MySQL. Dewan direksi Sun dengan suara bulat menyetujui kesepakatan itu. Itu juga disetujui oleh pemegang saham Sun, dan oleh AS. S. pemerintah pada tanggal 20 Agustus 2009. Pada tanggal 14 Desember 2009, Oracle berjanji untuk terus menyempurnakan MySQL seperti yang telah dilakukan selama empat tahun sebelumnya.

Sebuah gerakan menentang akuisisi Oracle terhadap MySQL AB, untuk "Save MySQL" dari Oracle dimulai oleh salah satu pendiri MySQL AB, Monty Widenius. Petisi 50.000+ pengembang dan pengguna meminta Komisi Eropa untuk memblokir persetujuan akuisisi. Pada saat yang sama, beberapa pemimpin opini Perangkat Lunak Bebas (termasuk Pamela Jones dari Groklaw, Jan Wildeboer dan Carlo Piana, yang juga bertindak sebagai co-counsel dalam prosedur regulasi merger) menganjurkan untuk persetujuan tanpa syarat atas merger tersebut. Sebagai bagian dari negosiasi dengan Komisi Eropa, Oracle berkomitmen bahwa server MySQL akan berlanjut hingga setidaknya tahun 2015 untuk menggunakan strategi lisensi ganda yang telah lama digunakan oleh MySQL AB, dengan tersedia versi kepemilikan dan GPL. Antimonopoli UE telah "menekan untuk mendivestasi MySQL sebagai syarat persetujuan merger". Namun, seperti diungkap WikiLeaks, Departemen Kehakiman AS, atas permintaan Oracle, menekan UE untuk menyetujui merger tanpa syarat. Komisi Eropa akhirnya tanpa syarat menyetujui akuisisi MySQL AB oleh Oracle pada 21 Januari 2010

Pada Januari 2010, sebelum Oracle mengakuisisi MySQL AB, Monty Widenius memulai fork khusus GPL, MariaDB. MariaDB didasarkan pada basis kode yang sama dengan server MySQL 5. 5 dan bertujuan untuk mempertahankan kompatibilitas dengan versi yang disediakan Oracle

Fitur[sunting]

MySQL ditawarkan dalam dua edisi berbeda. open source MySQL Community Server dan Enterprise Server berpemilik. MySQL Enterprise Server dibedakan oleh serangkaian ekstensi kepemilikan yang dipasang sebagai plugin server, tetapi berbagi sistem penomoran versi dan dibangun dari basis kode yang sama

Fitur utama yang tersedia di MySQL 5. 6

Pengembang merilis pembaruan kecil dari Server MySQL kira-kira setiap dua bulan. Sumber dapat diperoleh dari situs web MySQL atau dari repositori GitHub MySQL, keduanya di bawah lisensi GPL

Keterbatasan[sunting | sunting sumber]

Saat menggunakan beberapa mesin penyimpanan selain InnoDB default, MySQL tidak memenuhi standar SQL lengkap untuk beberapa fungsi yang diterapkan, termasuk referensi kunci asing. Batasan pemeriksaan diuraikan tetapi diabaikan oleh semua mesin penyimpanan sebelum MySQL versi 8. 0. 15

Hingga MySQL 5. 7, pemicu dibatasi satu per tindakan / waktu, artinya paling banyak satu pemicu dapat didefinisikan untuk dieksekusi setelah operasi INSERT, dan satu sebelum INSERT pada tabel yang sama. Tidak ada pemicu yang dapat ditentukan pada tampilan

Fungsi bawaan database MySQL seperti UNIX_TIMESTAMP() akan mengembalikan 0 setelah 03. 14. 07 UTC pada 19 Januari 2038. Baru-baru ini, [] ada upaya untuk memecahkan masalah yang telah ditugaskan ke antrian internal

Penerapan[sunting | sunting sumber]

MySQL dapat dibangun dan diinstal secara manual dari kode sumber, tetapi lebih sering diinstal dari paket biner kecuali diperlukan penyesuaian khusus. Pada sebagian besar distribusi Linux, sistem manajemen paket dapat mendownload dan menginstal MySQL dengan sedikit usaha, meskipun konfigurasi lebih lanjut sering diperlukan untuk menyesuaikan pengaturan keamanan dan pengoptimalan

Apa yang didefinisikan dalam mysql?

Bundel perangkat lunak LAMP, ditampilkan di sini bersama dengan Squid

Meskipun MySQL dimulai sebagai alternatif low-end untuk database berpemilik yang lebih kuat, MySQL secara bertahap berevolusi untuk mendukung kebutuhan berskala lebih tinggi juga. Itu masih paling umum digunakan dalam penyebaran server tunggal skala kecil hingga menengah, baik sebagai komponen dalam aplikasi web berbasis LAMP atau sebagai server database mandiri. Sebagian besar daya tarik MySQL berasal dari kesederhanaan dan kemudahan penggunaannya yang relatif, yang diaktifkan oleh ekosistem alat sumber terbuka seperti phpMyAdmin. Dalam rentang menengah, MySQL dapat diskalakan dengan menerapkannya pada perangkat keras yang lebih kuat, seperti server multi-prosesor dengan memori gigabyte.

Namun, ada batasan seberapa jauh kinerja dapat diskalakan pada satu server ('scaling up'), jadi pada skala yang lebih besar, penyebaran MySQL ('scaling out') multi-server diperlukan untuk memberikan peningkatan kinerja dan keandalan. Konfigurasi high-end tipikal dapat menyertakan database master yang kuat yang menangani operasi penulisan data dan direplikasi ke banyak budak yang menangani semua operasi baca. Server master terus-menerus mendorong peristiwa binlog ke budak yang terhubung sehingga jika terjadi kegagalan, budak dapat dipromosikan menjadi master baru, meminimalkan waktu henti. Peningkatan kinerja lebih lanjut dapat dicapai dengan melakukan caching hasil dari kueri basis data di memori menggunakan memcache, atau memecah basis data menjadi potongan-potongan kecil yang disebut pecahan yang dapat tersebar di sejumlah kluster server terdistribusi

Perangkat lunak ketersediaan tinggi[sunting | sunting sumber]

Oracle MySQL menawarkan solusi ketersediaan tinggi dengan campuran alat termasuk router MySQL dan shell MySQL. Mereka didasarkan pada Replikasi Grup, alat sumber terbuka

MariaDB menawarkan penawaran serupa dalam hal produk

Penerapan cloud[sunting | sunting sumber]

MySQL juga dapat dijalankan pada platform cloud computing seperti Microsoft Azure, Amazon Elastic Compute Cloud, Oracle Cloud Infrastructure. Beberapa model penerapan umum untuk MySQL di cloud adalah

Gambar mesin virtualDalam implementasi ini, pengguna cloud dapat mengunggah gambar mesin mereka sendiri dengan MySQL terinstal, atau menggunakan gambar mesin siap pakai dengan penginstalan MySQL yang dioptimalkan di atasnya, seperti yang disediakan oleh Amazon EC2. MySQL sebagai layanan Beberapa platform cloud menawarkan MySQL "sebagai layanan". Dalam konfigurasi ini, pemilik aplikasi tidak perlu menginstal dan memelihara database MySQL sendiri. Sebaliknya, penyedia layanan database bertanggung jawab untuk menginstal dan memelihara database, dan pemilik aplikasi membayar sesuai dengan penggunaannya. Layanan MySQL berbasis cloud yang terkenal adalah Amazon Relational Database Service; . Dalam model ini penyedia layanan database bertanggung jawab untuk memelihara host dan database

Antarmuka pengguna[sunting | sunting sumber]

Antarmuka pengguna grafis[sunting | sunting sumber]

Antarmuka pengguna grafis (GUI) adalah jenis antarmuka yang memungkinkan pengguna untuk berinteraksi dengan perangkat atau program elektronik melalui ikon grafis dan indikator visual seperti notasi sekunder, berlawanan dengan antarmuka berbasis teks, label perintah yang diketik, atau navigasi teks

Aplikasi administrasi grafis milik pihak ketiga dan gratis (atau "ujung depan") tersedia yang terintegrasi dengan MySQL dan memungkinkan pengguna untuk bekerja dengan struktur basis data dan data secara visual

Meja Kerja MySQL[sunting | sunting sumber]

MySQL Workbench adalah lingkungan terintegrasi untuk MySQL. Ini dikembangkan oleh MySQL AB, dan memungkinkan pengguna untuk mengelola database MySQL secara grafis dan merancang struktur database secara visual

MySQL Workbench tersedia dalam tiga edisi, Edisi Komunitas sumber terbuka dan gratis reguler yang dapat diunduh dari situs web MySQL, dan Edisi Standar berpemilik yang memperluas dan meningkatkan rangkaian fitur Edisi Komunitas, dan MySQL Cluster CGE.

Alat GUI lainnya[sunting | sunting sumber]

Antarmuka baris perintah[sunting | sunting sumber]

Antarmuka baris perintah adalah sarana untuk berinteraksi dengan program komputer di mana pengguna mengeluarkan perintah ke program dengan mengetikkan baris teks yang berurutan (baris perintah). MySQL dikirimkan dengan banyak alat baris perintah, dari mana antarmuka utamanya adalah klien mysql

Utilitas MySQL adalah seperangkat utilitas yang dirancang untuk melakukan pemeliharaan umum dan tugas administratif. Awalnya dimasukkan sebagai bagian dari MySQL Workbench, utilitasnya adalah unduhan mandiri yang tersedia dari Oracle

Percona Toolkit adalah toolkit lintas platform untuk MySQL, yang dikembangkan di Perl. Percona Toolkit dapat digunakan untuk membuktikan bahwa replikasi berfungsi dengan benar, memperbaiki data yang rusak, mengotomatiskan tugas berulang, dan mempercepat server. Percona Toolkit disertakan dengan beberapa distribusi Linux seperti CentOS dan Debian, dan paket juga tersedia untuk Fedora dan Ubuntu. Percona Toolkit awalnya dikembangkan sebagai Maatkit, namun pada akhir 2011, Maatkit tidak lagi dikembangkan

Shell MySQL adalah alat untuk penggunaan interaktif dan administrasi database MySQL. Ini mendukung mode JavaScript, Python atau SQL dan dapat digunakan untuk keperluan administrasi dan akses

Banyak bahasa pemrograman dengan API khusus bahasa menyertakan pustaka untuk mengakses database MySQL. Ini termasuk MySQL Connector/Net untuk. NET/CLI Languages, dan driver JDBC untuk Java

Selain itu, antarmuka ODBC yang disebut MySQL Connector/ODBC memungkinkan bahasa pemrograman tambahan yang mendukung antarmuka ODBC untuk berkomunikasi dengan database MySQL, seperti ASP atau ColdFusion. HTSQL – Metode kueri berbasis URL juga disertakan dengan adaptor MySQL, yang memungkinkan interaksi langsung antara database MySQL dan klien web apa pun melalui URL terstruktur. Driver lain ada untuk bahasa seperti Python atau Node. js

Apa gunanya DESC di MySQL?

DESC adalah kependekan dari perintah DESCRIBE dan digunakan untuk menampilkan informasi tentang tabel seperti nama kolom dan pembatas pada nama kolom . TAMPILKAN kolom dari perintah NamaTabel Anda.

Apa yang tidak terdefinisi di MySQL?

Untuk UNDEFINED , MySQL memilih algoritma mana yang akan digunakan. Itu lebih suka MERGE daripada TEMPTABLE jika memungkinkan, karena MERGE biasanya lebih efisien dan karena tampilan tidak dapat diperbarui jika tabel sementara digunakan. Jika tidak ada klausa ALGORITMA , UNDEFINED adalah algoritme default.

Apa kata kunci di MySQL?

Kata kunci adalah kata yang memiliki arti penting dalam SQL . Kata kunci tertentu, seperti SELECT , DELETE , atau BIGINT , dicadangkan dan memerlukan perlakuan khusus untuk digunakan sebagai pengidentifikasi seperti nama tabel dan kolom. Ini mungkin juga berlaku untuk nama fungsi bawaan.

Apa itu $$ di MySQL?

Dalam kueri MySQL, apa yang dimaksud dengan $$? . KTP, Penduduk = TUA CREATE TRIGGER before_population_update BEFORE UPDATE ON City FOR EACH ROW BEGIN INSERT INTO City_Changes SET ACTION = 'update', CityID = OLD.ID, Population = OLD .