MySQL Alfabet
Cauza numelui MySQL nu este clar. Pe de o parte, dezvoltatorii sunt în procesul de scriere a programelor la mai multe directoare și numele de fișiere sunt adăugate în mod tradițional prefixul „meu“. Pe de altă parte, numele fiicei unuia dintre dezvoltatori - mea. Care dintre aceste fapte a fost cauza numelui ramane un mister chiar și pentru dezvoltatori, să nu ne mai vorbim muritorii
De îndată ce ne gândim la stocarea ordonată a informațiilor, în mod inevitabil, a dus la gândul de a crea o bază de date. După ce a creat-o, de exemplu, în Microsoft Access, am răsuflat ușurată și de ceva timp să se calmeze. Dar este „ceva timp“, nu dureaza mult - la orizont războaie de țesut următorul dictat de sarcină vitală necesitate: este necesar să se asigure accesul la date prin internet la stațiile de lucru, ceea ce este destul de posibil, diferite sisteme de operare instalate. Și aici vine în ajutorul unei baze de date MySQL rapid și de încredere.
Această bază de date are originea din mSQL. Dezvoltatorii nevoie de o bază de date rapide, fiabile și flexibile. Ca rezultat, a fost creat un nou SQL-interfață cu greu schimbat mSQL API-interfață. Acest API a fost ales pentru a ușura transferul altor dezvoltatori de software.
Toată puterea de simplitate
SQL - este structurat limbaj de interogare (Structured Query Language), un limbaj standard internațional pentru accesarea bazelor de date.
MySQL - este, dacă te uiți în general, SQL-server; cu alte cuvinte - un program care acceptă interogări scrise în SQL, și trimite înapoi câteva răspunsuri. Răspunsurile pot include: date, numărul de rânduri afectate de o interogare sau un șir de caractere (de exemplu, „Hello World!“).
baza de date MySQL vă oferă un subset SQL ANSI SQL 92 specificații corespunzătoare.
Desigur, trebuie să oferim într-un fel accesul la MySQL. Acest lucru se poate face fie prin clientul (atât text și grafică), sau prin orice limbaj de programare.
Core, care este format MySQL, este un set de rutine care au fost folosite de mulți ani în medii extrem de solicitante. Este un set bogat și util caracteristică, în timp ce MySQL este încă în dezvoltare.
Principalele obiective ale MySQL: viteza și robustețea. Această bază de date cu procesarea se descurcă de cantități foarte mari de date (un număr mare de utilizatori au raportat de lucru cu mii și chiar milioane de înregistrări). Listele de discuții sunt rapoarte frecvente ale bazelor de date ale mai multor gigabytes. În plus, MySQL în interogări împotriva tabele mari decât multe alte sisteme. Este foarte stabil și funcționează perfect chiar și atunci când mai multe sute de utilizatori au nevoie de acces la aceleași date. Pe baza celor de mai sus este ușor de înțeles de ce MySQL este atât de popular printre dezvoltatorii de aplicații web. MySQL este, de asemenea, foarte scalabil, ruleaza pe orice - de la calculatoarele personale la sisteme multiprocesor mari.
Una dintre proprietățile remarcabile ale MySQL este faptul că utilizatorul are acces la MySQL server, indiferent de sistemul de operare, limbaj de programare, sau un client care-l folosește. Din sistemul UNIX, utilizatorul poate comunica cu MySQL-server care rulează pe OS / 2 și Windows-platforme.
Pentru a interacționa cu MySQL-server, puteți utiliza o varietate de limbaje de programare. Puteți scrie programe în C, C ++, Java, PHP, Perl, TCL, Python - și ei vor lucra.
În MySQL, totul este organizat într-un „nu prostii“, și, prin urmare, îi lipsesc câteva caracteristici care vin cu alte baze de date. MySQL nu acceptă interogări imbricate, trigerrom; De asemenea, nu există nici un suport încorporat pentru XML, OLAP și construcții (constraits). Dar există inovații (cum ar fi capacitatea de a cache interogări). Funcții lipsă au fost aduse de sacrificiu de viteză, care asigură această bază de date (deși, în cazul în care unele dintre aceste funcții încă nevoie, puteți utiliza dezvoltare terță parte).
Cum se setează și mențineți
Acum că am văzut cum „îngrămădit“ produs este MySQL, cu atât mai mult vreau să-l încercați, de fapt, să livreze și atinge toate propriile sale mâini. Acestea vor face.
Datorită interesului tot mai mare de platforme bazate pe Linux, ia în considerare instalarea și operarea MySQL doar o astfel de platformă. Pentru instalarea MySQL a avut loc fara dificultate, vom urma recomandările de pe acest site MySQL.- Primul lucru pe care vă recomandăm - descărcare stabilă (eliberare stabilă) versiune (ca din acest scris - 3.23.49a MySQL).
- Al doilea sfat: nu încercați să compilați MySQL le - a instala versiunea de pre-compilate.
Prin adoptarea acestor recomandări, vom începe să descărcați fișierul „mysql-3.23.49a-PC-linux-gnu-i686.tar.gz“ și după un timp ne-am înțeles. Înainte de a începe instalarea va crea un grup gazda si MySQL utilizator:
Apoi, despacheta acest fișier în directorul / usr / local:
Shell> tar -zxf gunzip mysql-3.23.49a-PC-linux-gnu-i686.tar.gz
Apoi, aveți nevoie pentru a face un link simbolic la directorul MySQL-3.23.49a-PC-linux-gnu-i686:
Motivul pentru aceste acțiuni este faptul că scripturile sunt înregistrate aceste directoare.
Acum, creați un director în care pentru a stoca baza de date. Pentru a face acest lucru, trebuie doar du-te la directorul mysql și rulați scriptul mysql_install_db care se află în directorul script-uri:
Iar tușa finală: folosind comanda safe_mysqld, care se află în directorul bin, executați server. Dacă doriți cu adevărat să înceapă în timpul fiecare pornire a sistemului, este necesar să se pună safe_mysql lansarea într-unul dintre fișierele de sistem de inițializare.
Ca un exemplu, o linie de /etc/rc.d/rc.local atașează / usr / local / mysql / bin / safe_mysqld . Dar, dacă ai pus doar această linie în rc.local, MySQL nu vrea să ruleze la pornire. Și acum, un pic peste poshamaniv fișier `safe_mysqld“, am constatat că, în unele locuri, este necesar să se înlocuiască libexec pe bin și var pe datele. Aici sunt liniile (începând cu 87), care au schimbat:
MY_BASEDIR_VERSION = $ MY_PWD # În cazul în care libexec, cota de var și sunt
ledir = $ MY_BASEDIR_VERSION / bin # În cazul în care este mysqld
DataDir = $ MY_BASEDIR_VERSION / date
altfel
MY_BASEDIR_VERSION = / usr / local / mysql
DataDir = / usr / local / mysql / date
ledir = / usr / local / mysql / bin
Odată ce am stabilit, trebuie să schimbați proprietarul și grupul directoarele create.
Director Mysql și toate subdirectoarele pentru a atribui calitatea de proprietar de root si MySQL grup.
Director de baze de date MySQL proprietar Alocați și același nume al grupului.
Iar tușa finală pentru a configura - pentru a căuta mysql program executabil la profil:
Mysql pe site-ul puteți descărca piei pentru a lucra cu baze de date (mysqlgui și mycc). Doar aici, setarea shell, am ajuns la concluzia că acestea nu pot înlocui cunoașterea SQL și tabele numai afișare convenabile, care sunt în baza de date (de altfel, să-mi arate mai mult ca mycc - ea interfață clară și mai ușor de a lucra cu).
Pentru a comunica cu baza de date este programul MySQL. Acest shell care transmite comenzile bazei de date de intrare.
Ce s-ar crea această
Ca un exemplu al acestui sistem de management al bazei de date va crea o bază de date CD-uri audio. Cred că există mai mulți iubitori de muzică, care dețin o astfel de masă de CD-uri cu muzică pe care se pot pierde în ea. În plus, o altă problemă apare, atunci când dai pe cineva să asculte discul. Unitate asculta, și uitați să se întoarcă (și el de multe ori uită care a dat). Deci, se pare că: discul pe care ați avut-o, amintiți-vă, și unde el este acum - nici o idee.
Deci, ne-am dat seama că trebuie să facem; proceda la executarea.
În primul rând, de a crea o bază de date. Rulați un coajă și tipul:
Acum este momentul să ne gândim, ceea ce face baza noastră va fi. Cu alte cuvinte, ceea ce masa va include în sine.
Desigur, spațiul de disc poate fi mai mult de un cântec, și că un cântec poate fi pe diferite compact, astfel încât această relație „mulți la mulți“. Dar, în același timp, un disc specific poate deține doar o singură persoană, iar o persoană poate lua mai multe discuri - astfel încât această conexiune „mulți la unul“.
Pentru a remedia link-uri, vom avea nevoie de două mese. Prima va fi înregistrată, care melodii sunt pe care discuri, al doilea - unul dintre prieteni este acum un disc.
Aici este fișierul:
utilizați audio_cd;
a crea cd tabel (
cd_id SMALLINT nesemnat nu auto_increment nulă cheie primară,
nume VARCHAR (100) nu null implicit "",
RELEASE_YEAR ANUL
);
a crea melodii de masă (
song_id SMALLINT nesemnate AUTO_INCREMENT nu null,
cheie primară (song_id),
SONG_NAME VARCHAR (200) nu null implicit "",
autor_name VARCHAR (100) nu null implicit "",
Descriere VARCHAR (255) nu null implicit ""
);
crea songs_on_cd tabel (
cd_id SMALLINT nu nesemnate REFERINȚE null cd,
song_id SMALLINT nesemnate REFERINȚE melodii nu nule
);
a crea oameni de masă (
p_id SMALLINT nesemnat nu auto_increment nulă cheie primară,
nume VARCHAR (100) nu null implicit "",
adr VARCHAR (255) nu null implicit "",
char phonnum (6) nu null implicit "000000",
varchar de e-mail (50) nu null implicit ""
);
crea take_disk tabel (
cd_id SMALLINT nu nesemnate REFERINȚE null cd,
p_id SMALLINT nesemnate nu nule REFERINȚE oameni
);
Avem o bază, trebuie să-l umple cu informații utile. Pentru a începe să adăugați câteva CD-uri cu cântece. De exemplu, să ia discul „Pink Floyd“.
Deci, se adaugă o unitate în 1983 - "The Final Cut":
Mysql> inserați în valori cd (NULL, 'Final Cut', 1983);
Adăugarea de melodii la album:
mysql> inserați în valori melodii
(NULL, "Visul de după război", "Pink Floyd", ""),
(NULL, "posibile tale trecuturi", "Pink Floyd", ""),
(NULL, "unul dintre puținele", "Pink Floyd", ""),
(NULL, "întoarcerea eroului", "Pink Floyd", ""),
(NULL, "Visul mitraliorului", "Pink Floyd", ""),
(NULL, "ochi Paranoyd", "Pink Floyd", ""),
(NULL, "Ia-ți mâinile murdare de pe deșert meu", "Pink Floyd", ""),
(NULL, "Fletcher casa memoriala", "Pink Floyd", ""),
(NULL, "Southampton doc", "Pink Floyd", ""),
(NULL, "Final Cut", "Pink Floyd", ""),
(NULL, "Hot acum john", "Pink Floyd", ""),
(NULL, "Doi sori în apus de soare", "Pink Floyd", "");
Este necesar să se conecteze melodiile pe disc -pentru a umple acest songs_on_cd tabel. Uită-te în tabelele respective, ce număr sunt cântece, și în numărul ce - unitate. Acest lucru se poate face cu comanda selectați:
Se poate observa că este necesar să adăugați melodia cu numerele 1-12 cu numărul de disc 1:
În cazul în care este nevoie pentru a vedea ce melodii sunt pe ce CD-ul, puteți utiliza selectați sql-comandă. De exemplu, pentru a vedea ce este pe disc Californication (a se vedea figura 3 ..), vom colecta următoarea comandă:
mysql> select songs.song_name ca cântec, songs.autor_name ca autor
de cântece, songs_on_cd, cd
unde songs.song_id = songs_on_cd.song_id și
cd.cd_id = songs_on_cd.cd_id și cd.name = "Californication";
Dacă dorim să le oferim timp de disc pentru cineva de la prieteni, atunci trebuie mai întâi să introduceți coordonatele persoanei în baza de date, și apoi fixați discul de transmisie. Iată cum arată în limba SQL:
Mysql> inserați în valori ale oamenilor
(NULL, "Ivanov Ivan" "st Lenina 53,34", "4523412", "[email protected]");
Mysql> inserați în valori take_disk (1,1);
Un ultim exemplu - să vedem cine este discul „The Final Cut“ (a se vedea figura 4 ..):
mysql> select people.name ca "Nume", people.addr ca "Address",
people.phonnum ca "telefon", people.email de la oameni, CD-uri, take_disk
unde take_disk.cd_id = cd.cd_id și take_disk.p_id = people.p_id și
cd.name = 'The Final Cut';
Deși echipa și a obține greoaie, dar funcționează perfect, chiar și în cazul în cazul în care baza de date a avut câteva mii de înregistrări.
Adio la drum
Mysql - sistem de management de baze de date rapid și de încredere, deși este rar folosit, tastarea toate comenzile de mână - așa cum am făcut-o. De obicei, joacă un rol în spatele scenei, care servește o varietate de site-uri web. Putem crea, de asemenea, propriul site folosind PHP sau Perl pentru a înregistra CD-uri cu muzică. Dar utilizarea acestor limbi pentru a accesa mysql - care este un subiect pentru un alt articol.