MySQL
Fra Wikipedia, den frie encyklopedi.
MySQL er en SQL-databasetjener som er lisensiert under GPL. Denne databasetjeneren er veldig mye brukt, og er en vesentlig del av LAMP-systemer, hvor M-en står for nettopp MySQL.
MySQL er utviklet og vedlikeholdt av svenske MySQL AB, som i motsetning til andre organisasjoner som Apache, er et profit-firma.
| Innholdsfortegnelse |
Plattformer
MySQL kjører på mange plattformer — inkludert AIX, BSDi, FreeBSD, HP-UX, Linux, Mac OS X, NetBSD, Netware, OpenBSD, OS/2 Warp, QNX, SGI IRIX, Solaris, SunOS, SCO OpenServer, SCO UnixWare, Tru64 og mange versjoner av Windows.
Programmeringsspråk
Programmeringsspråk som kan koble til MySQL-databaser er blant annet: C, C++, Eiffel, Smalltalk, Java, Lisp, Perl, PHP, Python, Ruby, og Tcl; hver av dem bruker en spesifikk API. Et ODBC-grensesnitt kalt MyODBC tillater andre programmeringsspråk som støtter ODBC-grensesnittet å kommunisere med en MySQL-database. MySQL bruker ANSI C som sitt hovedspråk.
Bruksområder
MySQL er populær som databasetjener for nettbaserte tjenester, og det finnes mange eksempeler på åpen kildekode-programvare som bruker MySQL, eksempelvis MediaWiki, PHP-Nuke , Slashcode og phpBB.
MySQL og PHP nevnes ofte i samme åndedrag, og de har sammen fått ett eget navn, LAMP, som står for Linux, Apache, MySQL og PHP. Noen ganger ser man også at L-en er byttet ut med en W, WAMP, når den samme kombinasjonen brukes på MS Windows platformen.
Kritikk av MySQL
Tidlige versjoner av MySQL hadde få av funksjonene som ellers er å finne i RDBMS-databaser, og selv den nyeste versjonen mangler viktige funksjoner. Dette har fått noen kjente databaseeksperter, somEksempel:
CREATE TABLE null_1 (
id INT NOT NULL,
text1 VARCHAR(32) NOT NULL,
text2 VARCHAR(32) NOT NULL DEFAULT 'foo'
);
INSERT INTO null_1 (id) VALUES(1);
INSERT INTO null_1 (text1) VALUES('test');
SELECT * FROM null_1;
| id | text1 | text2 |
| 1 | | foo |
| 0 | test | foo |
CREATE TABLE bounds_test (
id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
price NUMERIC(4,2),
code VARCHAR(8),
numbers_only INT
);
INSERT INTO bounds_test VALUES (
99999999999999,
21474.83,
'ABCDEFGHIJK',
'A quick brown dolphin...'
);
SELECT * FROM bounds_test;
| id | price | code | numbers_only |
| 2147483647 | 999.99 | ABCDEFGH | 0 |
Her burde ikke MySQL ha godtatt noen av verdiene som ble satt inn i tabellene – legg merke til hva den har erstattet verdiene med.
Lisensiering
Både MySQL-tjenerprogramvare og klientbibliotek er distributert under en dobbellisens. Brukere kan velge mellom GNU General Public License [1] (http://www.mysql.com/products/licensing/opensource-license.html) og en kommersiell lisens. Dette prinsippet omtaler de som "Quid pro quo", og det går ut på at hvis man vil bruke og distribuere proprietær applikasjon med deres MySQL drivere må man betale for en kommersiell lisens, mens det er fritt for bruk i GPL lisensierte programmer.
Hvorfor navnet?
Mange tror "My" i "MySQL" er engelsk for "min" eller "mitt". MySQLs grunnleggere kan ikke med sikkerhet si hvor navnet kommer fra, men blant de sannsynlige opprinnelsene er faktumet at datteren til grunnleggeren Monty Widenius heter "My".[2] (http://dev.mysql.com/doc/mysql/en/History.html)
Andre SQL-databasetjenere
Eksterne ressurser
- Hjemmesiden til MySQL (http://www.mysql.com)
- MySQL på Debian (http://wiki.debian.net/index.cgi?MySql)
- MySQLs utviklingsplan (http://www.databasejournal.com/features/mysql/article.php/2210771)
- Innføring fra MySQL Webmonkey (http://hotwired.lycos.com/webmonkey/programming/php/tutorials/tutorial4.html)
- MySQL Reference Guide (http://www.contrib.andrew.cmu.edu/~shadow/sql.html)
- fabFORCE.net DBDesigner 4 (http://www.fabforce.net/dbdesigner4)
- MySql Manual fra UnixCities.Com (http://www.unixcities.com/mysql/manual_toc.html)
- MySQL Gotchas (http://sql-info.de/mysql/gotchas.html)—Beskrivelse av mange egenskaper som kan fungere på uventede måter
- PostgreSQL vs MySQL: Which is better? (http://www.databasejournal.com/features/mysql/article.php/3288951) av Ian Gilfillan
- Open Source Databases: As The Tables Turn (http://www.phpbuilder.com/columns/tim20001112.php3) av Tim Perdue
- MySQL Manager (http://www.ems-hitech.com/mymanager)
- MySQL fra/til Access (http://www.ems-hitech.com/mysqlutils#datapump)
- MySQL for OpenVMS (http://www.pi-net.dyndns.org/anonymous/kits/)
- PHP MySQL Tutorial (http://www.php-mysql-tutorial.com) En innføring om MySQL mot PHP. Eksempler på gjestebøker, kontaktskjema, filopplasting til database, osv.
- MySQL Solution Providers Index (http://www.opensourcexperts.com/Index/index_html/MySQL/index.html) En oversikt over firma som tilbyr support på MySQL

