1. Sissejuhatus
1.1 MySQL-i ülevaade ja käsurea olulisus
MySQL on laialdaselt kasutatav avatud lähtekoodiga relatsioonilise andmebaasi haldussüsteem (RDBMS). Selle peamised eelised on andmete tõhus haldamine ja paindlik andmetöötlus, kasutades SQL-i (Structured Query Language). Seda kasutatakse paljudes veebirakendustes ja ettevõttesüsteemides ning selle võimsaid funktsioone saab maksimaalselt ära kasutada MySQL-i käsurea kaudu.
1.2 Artiklit eesmärk
Käesolev artikkel keskendub MySQL-i käsurea operatsioonidele ning selgitab põhiliste käskude, nagu andmebaasi loomine, haldamine, kasutajaõiguste seadistamine, kasutamist alates algtasemest kuni edasijõudnud tasemeni. Eriti püütakse algajatele ja kesktasemel kasutajatele anda praktilisi teadmisi, kuidas MySQL-i tõhusalt kasutada.
1.3 Sihtrühm
See juhend on mõeldud algajatele ja kesktasemel kasutajatele, kes tunnevad huvi MySQL-i vastu. See sobib suurepäraselt neile, kellel on andmebaaside põhitõed ja kes soovivad hakata MySQL-i kasutama andmehalduseks ja veebiarenduseks.
2. MySQL-i põhikäsud
2.1 Ühendamine ja ühenduse katkestamine andmebaasiga
MySQL-ile juurdepääsuks peate esmalt looma ühenduse andmebaasiga. MySQL-serverisse sisselogimisel kõige sagedamini kasutatav käsk on mysql -u root -p
. Selle käsu käivitamisel käivitub MySQL-server ja proovitakse sisse logida määratud kasutajana (sel juhul root).
mysql -u root -p
Selle käsu sisestamisel küsitakse parooli. Õige parooli sisestamisel saate juurdepääsu MySQL-i käsureale.
Ühenduse katkestamiseks kasutage käsku exit
või quit
.
exit
See logib teid MySQL-serverist välja ja naasete käsuviibale.
2.2 Andmebaaside loomine ja kuvamine
Uue andmebaasi loomiseks kasutatakse käsku CREATE DATABASE
. Järgmine on näide andmebaasi loomisest nimega mysqldemo
.
CREATE DATABASE mysqldemo;
Käsu käivitamisel kuvatakse teade “Query OK”, mis kinnitab andmebaasi edukat loomist.
Loodud andmebaaside loendi kuvamiseks kasutage käsku SHOW DATABASES
.
SHOW DATABASES;
See käsk kuvab loendi kõigist serveris hetkel eksisteerivatest andmebaasidest.
2.3 Andmebaasi valimine
Kui andmebaase on mitu, peate määrama, millise andmebaasiga soovite töötada. Käsku USE
kasutades saate valida andmebaasi, millega hetkel töötate.
USE mysqldemo;
See määrab mysqldemo
andmebaasi praeguseks tööandmebaasiks ning edasised käsud täidetakse selle andmebaasi suhtes.

3. Tabelitoimingute põhikäsud
3.1 Tabeli loomine
Andmete salvestamiseks andmebaasi tuleb esmalt luua tabel. Uue tabeli loomiseks kasutatakse käsku CREATE TABLE
. Näiteks kui soovite luua tabeli nimega users
, kirjutage käsk järgmiselt.
CREATE TABLE users (
id INT AUTO_INCREMENT,
name VARCHAR(255),
email VARCHAR(255),
PRIMARY KEY (id)
);
Selles käsus on määratletud kolm veergu (id
, name
, email
) tabelis users
. Veerg id
on täisarvutüüp, millele on määratud automaatne suurendamine (AUTO_INCREMENT) ja mis on määratud primaarvõtmeks (PRIMARY KEY).
3.2 Tabelite kuvamine
Pärast tabeli loomist saate vaadata kõigi tabelite loendit. Käsk SHOW TABLES
kuvab kõik praegu valitud andmebaasi tabelid.
SHOW TABLES;
Lisaks, kui soovite kontrollida konkreetse tabeli struktuuri, kasutage käsku DESCRIBE
. See kuvab teavet tabeli veergude ja andmetüüpide kohta.
DESCRIBE users;
See käsk kuvab loendi users
tabeli iga veeru andmetüüpidest ja atribuutidest (NULL lubamine, võtme seadistamine jne).
3.3 Andmete lisamine ja kuvamine
Andmete lisamiseks tabelisse kasutage käsku INSERT INTO
. Näiteks uue kasutaja lisamiseks tehke järgmist.
INSERT INTO users (name, email) VALUES ('John Doe', 'john@example.com');
See käsk sisestab uue kirje tabelisse users
, salvestades määratud väärtused vastavalt veergudesse name
ja email
.
Lisatud andmete kuvamiseks kasutage käsku SELECT
. Kõigi kasutajate kuvamiseks tehke järgmist.
SELECT * FROM users;
See kuvab loendi kõigist kirjetest tabelis users
.
4. Kasutajate haldamine ja turvalisus
4.1 Kasutajate loomine ja õiguste seadistamine
MySQL-is on oluline luua andmebaasile juurdepääsu kasutajad ja anda neile asjakohased õigused. Kasutaja loomiseks kasutage käsku CREATE USER
. Järgmine näide loob uue kasutaja user1
asukohas localhost
ja määrab parooliks password123
.
CREATE USER 'user1'@'localhost' IDENTIFIED BY 'password123';
See käsk loob uue kasutaja nimega user1
, kellel on juurdepääs ainult kohalikust hostist.
Loodud kasutajale õiguste andmiseks kasutage käsku GRANT
. Näiteks kõigi õiguste andmiseks kasutajale user1
andmebaasis mysqldemo
tehke järgmist.
GRANT ALL PRIVILEGES ON mysqldemo.* TO 'user1'@'localhost';
See käsk annab kasutajale user1
täielikud õigused kõigile tabelitele andmebaasis mysqldemo
. Õiguste muudatuste süsteemis rakendamiseks käivitage käsk FLUSH PRIVILEGES
.
FLUSH PRIVILEGES;
4.2 Parooli muutmine
Olemasoleva kasutaja parooli muutmiseks kasutage käsku UPDATE
, et värskendada mysql
andmebaasi tabelit user
. Järgmine on näide root
kasutaja parooli muutmisest uueks.
UPDATE mysql.user SET authentication_string = PASSWORD('newpassword') WHERE User = 'root';
FLUSH PRIVILEGES;
See muudab root
kasutaja parooliks newpassword
. Käsu FLUSH PRIVILEGES
käivitamine rakendab muudatused süsteemis.
4.3 Turvalisuse parandamise parimad praktikad
MySQL-i turvalisuse parandamiseks on oluline järgida järgmisi parimaid praktikaid:
- Tarbetute anonüümsete kasutajate kustutamine: Kustutage vaikeanonüümsed kasutajad, et tagada, et andmebaasile saavad juurde ainult autenditud kasutajad.
- Kaug-root-sisselogimise keelamine: Turvalisuse suurendamiseks keelake
root
kasutaja kaug-sisselogimine. - Tugevate paroolide kasutamine: Kasutage tugevaid ja ettearvamatuid paroole ning muutke neid regulaarselt.
Nende meetmete rakendamine aitab parandada andmebaasi turvalisust ja vältida potentsiaalset volitamata juurdepääsu.

5. Edasijõudnud MySQL-i käsud
5.1 Andmete värskendamine ja kustutamine
Andmete värskendamiseks tabelis kasutage käsku UPDATE
. Näiteks kui soovite värskendada veergu name
tabelis users
, tehke järgmist.
UPDATE users SET name = 'Jane Doe' WHERE id = 1;
See käsk muudab rea, mille id
on 1
, veeru name
väärtuseks Jane Doe
. Olge ettevaatlik, sest WHERE
klausli kasutamata jätmisel värskendatakse kõiki kirjeid tabelis.
Andmete kustutamiseks kasutage käsku DELETE
. Näiteks rea kustutamiseks, mille id
on 1
, tehke järgmist.
DELETE FROM users WHERE id = 1;
See kustutab rea, mille id
on 1
, tabelist users
.
5.2 Varundamine ja taastamine
Andmebaasi varukoopia loomiseks kasutage käsku mysqldump
. See käsk ekspordib kogu andmebaasi ja salvestab selle SQL-faili. Näiteks mysqldemo
andmebaasi varukoopia loomiseks tehke järgmist.
mysqldump -u root -p mysqldemo > mysqldemo_backup.sql
Taastamiseks (restaureerimiseks) kasutage käsku source
. Järgmine on näide andmebaasi taastamisest mysqldemo_backup.sql
failist.
mysql -u root -p mysqldemo < mysqldemo_backup.sql
See käsk impordib faili mysqldemo_backup.sql
sisu andmebaasi mysqldemo
.
5.3 Serveri käivitamine ja peatamine
MySQL-serveri käivitamiseks käsurealt kasutage käsku mysqld
. Näiteks Windowsi keskkonnas tehke järgmist.
"C:Program FilesMySQLMySQL Server 5.7binmysqld"
Serveri peatamiseks kasutage käsku mysqladmin
.
"C:Program FilesMySQLMySQL Server 5.7binmysqladmin" -u root -p shutdown
See peatab MySQL-serveri edukalt. Serveri käivitamine ja peatamine käsuviibal on eriti kasulik keskkondades, kus GUI-tööriistad pole saadaval.
6. Veaotsing
6.1 Levinumad vead ja nende lahendamine
Üks levinumaid vigu, mis MySQL-i kasutamisel esineb, on “Access denied for user” viga. See ilmneb siis, kui määratud kasutajanimi või parool on vale. Lahenduseks on kasutajanime ja parooli uuesti kontrollimine ning sisselogimise proovimine õige teabega.
Samuti kuvatakse “Unknown database” viga, kui määratud andmebaas ei eksisteeri. Kasutage käsku SHOW DATABASES
, et kontrollida, kas andmebaas eksisteerib, ja vajadusel looge andmebaas.
SHOW DATABASES;
CREATE DATABASE db_name;
6.2 Märkused ja nõuanded andmebaasitoimingutel
Andmebaasitoimingute tegemisel tuleb arvestada järgmiste punktidega:
- Varukoopia tegemine: Enne andmebaasitoimingute tegemist on oluline alati varukoopia teha. See võimaldab andmeid taastada ka juhul, kui need kogemata kustutatakse.
- Tehingute kasutamine: Mitme päringu käivitamisel ühe operatsioonina kasutage andmete järjepidevuse säilitamiseks tehinguid. Tehingute kasutamiseks kasutage käske
START TRANSACTION
,COMMIT
jaROLLBACK
. - Täpsete tingimuste määramine: Käskude
UPDATE
jaDELETE
kasutamisel on oluline täpselt määrataWHERE
klausel. See aitab vältida soovimatute kirjete muutmist või kustutamist.
Neid punkte arvesse võttes on võimalik ennetada MySQL-i probleeme ja andmebaasi turvaliselt hallata.
7. Kokkuvõte
MySQL-i käsurida on võimas tööriist andmebaasi haldamise ja toimingute tõhusaks teostamiseks alates põhilistest kuni täiustatud ülesanneteni. Käesolevas artiklis selgitasime MySQL-i põhiliste käskude kasutamist, sealhulgas andmebaasi loomist, tabelite haldamist, kasutajate haldamist ning andmete värskendamist ja kustutamist.
Andmebaaside maailmas on turvalisus ja andmete järjepidevus väga olulised. Seetõttu on vaja järgida parimaid praktikaid, nagu kasutajaõiguste seadistamine, paroolide haldamine ja varukoopiate tegemine. Samuti aitab tõrkeotsingu teadmine probleemide ilmnemisel kiiresti reageerida.
MySQL-i käskude omandamisega saate andmebaasitoiminguid teostada tõhusamalt ja turvalisemalt. Harjutage ja rakendage õpitud teadmisi, et saada osavaks ja turvaliseks andmebaasi operaatoriks.