Kako upravljati MySQL bazom podataka? SSH komande za upravljanje MySQL serverima

kako upravljatiMySQL baza podataka? Upravljanje SSH komandomMySQL服务器

MySQL 管理


Pokrenite i zaustavite MySQL server

Prvo, moramo provjeriti da li je MySQL server pokrenut tako što ćemo pokrenuti sljedeću naredbu:

ps -ef | grep mysqld

Ako je MySql već pokrenut, gornja naredba će dati listu mysql procesa, ako mysql nije pokrenut, možete koristiti sljedeću naredbu da pokrenete mysql server:

root@host# cd /usr/bin
./mysqld_safe &

Ako želite da isključite MySQL server koji trenutno radi, možete izvršiti sljedeću naredbu:

root@host# cd /usr/bin
./mysqladmin -u root -p shutdown
Enter password: ******

MySQL korisničke postavke

Ako trebate dodati MySQL korisnika, samo trebate dodati novog korisnika u korisničku tablicu u mysql bazi podataka.

Slijedi primjer dodavanja korisnika, korisničko ime je gost, lozinka je guest123, a korisnik je ovlašten da izvrši SELECT, INSERT i UPDATE operacije:

root@host# mysql -u root -p
Enter password:*******
mysql> use mysql;
Database changed

mysql> INSERT INTO user 
          (host, user, password, 
           select_priv, insert_priv, update_priv) 
           VALUES ('localhost', 'guest', 
           PASSWORD('guest123'), 'Y', 'Y', 'Y');
Query OK, 1 row affected (0.20 sec)

mysql> FLUSH PRIVILEGES;
Query OK, 1 row affected (0.01 sec)

mysql> SELECT host, user, password FROM user WHERE user = 'guest';
+-----------+---------+------------------+
| host      | user    | password         |
+-----------+---------+------------------+
| localhost | guest | 6f8c114b58f2ce9e |
+-----------+---------+------------------+
1 row in set (0.00 sec)

Kada dodajete korisnika, imajte na umu da je lozinka šifrirana pomoću funkcije PASSWORD() koju pruža MySQL.U gornjem primjeru možete vidjeti da je šifrirana korisnička lozinka: 6f8c114b58f2ce9e.

Napomena:U MySQL 5.7, lozinka korisničke tabele je zamenjena saauthentication_string.

Napomena:Budite svjesni potrebe za implementacijom FLUSH PRIVILEGES izjava.Nakon što se ova naredba izvrši, tabela odobrenja će se ponovo učitati.

Ako ne koristite ovu naredbu, nećete moći koristiti novokreiranog korisnika za povezivanje na mysql server osim ako ponovo ne pokrenete mysql server.

Kada kreirate korisnika, možete odrediti dozvole za korisnika. U odgovarajućoj koloni dozvole postavite je na 'Y' u naredbi za umetanje. Lista korisničkih dozvola je sljedeća:

  • Select_priv
  • Insert_priv
  • Update_priv
  • Delete_priv
  • Create_priv
  • drop_priv
  • Reload_priv
  • shutdown_priv
  • Process_priv
  • File_priv
  • Grant_priv
  • Reference_priv
  • Index_priv
  • Alter_priv

Drugi način za dodavanje korisnika je putem GRANT naredbe SQL-a.Sljedeća naredba će dodati korisnika zara u specificiranu bazu podataka TUTORIALS, a lozinka je zara123.

root@host# mysql -u root -p password;
Enter password:*******
mysql> use mysql;
Database changed

mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP
    -> ON TUTORIALS.*
    -> TO 'zara'@'localhost'
    -> IDENTIFIED BY 'zara123';

Gornja komanda će kreirati zapis podataka o korisniku u korisničkoj tabeli u bazi podataka mysql.

Bilješka: MySQL SQL izrazi završavaju se tačkom i zarezom (;).


/etc/my.cnf konfiguracija datoteke

U normalnim okolnostima, ne morate mijenjati konfiguracijsku datoteku, zadana konfiguracija datoteke je sljedeća:

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock

[mysql.server]
user=mysql
basedir=/var/lib

[safe_mysqld]
err-log=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

U konfiguracijskoj datoteci možete odrediti direktorij u kojem se pohranjuju različite datoteke evidencije grešaka.Uopšteno govoreći, ne morate mijenjati ove konfiguracije.


Komande za upravljanje MySQL-om

U nastavku su navedene naredbe koje se obično koriste u procesu korištenja Mysql baze podataka:

  • UPOTREBA naziv skladišta podataka :
    Odaberite Mysql bazu podataka kojom će se upravljati Nakon korištenja ove komande, sve Mysql komande su samo za ovu bazu podataka.
    mysql> use chenweiliang;
    Database changed
  • PRIKAŽI BAZE PODATAKA: 
    Navodi listu baze podataka MySQL sistema za upravljanje bazom podataka.
    mysql> SHOW DATABASES;
    +--------------------+
    | Database           |
    +--------------------+
    | information_schema |
    | chenweiliang             |
    | cdcol              |
    | mysql              |
    | onethink           |
    | performance_schema |
    | phpmyadmin         |
    | test               |
    | wecenter           |
    | wordpress          |
    +--------------------+
    10 rows in set (0.02 sec)
  • PRIKAŽI TABELE:
    Prikazuje sve tablice navedene baze podataka Prije korištenja ove naredbe potrebno je koristiti naredbu use za odabir baze podataka kojom će se upravljati.
    mysql> use chenweiliang;
    Database changed
    mysql> SHOW TABLES;
    +------------------+
    | Tables_in_chenweiliang |
    +------------------+
    | employee_tbl     |
    | chenweiliang_tbl       |
    | tcount_tbl       |
    +------------------+
    3 rows in set (0.00 sec)
  • PRIKAŽI KOLONE OD list sa podacima:
    Prikaz atributa tablice podataka, tipova atributa, informacija o primarnom ključu, bilo da je NULL, zadana vrijednost i druge informacije.
    mysql> SHOW COLUMNS FROM chenweiliang_tbl;
    +-----------------+--------------+------+-----+---------+-------+
    | Field           | Type         | Null | Key | Default | Extra |
    +-----------------+--------------+------+-----+---------+-------+
    | chenweiliang_id       | int(11)      | NO   | PRI | NULL    |       |
    | chenweiliang_title    | varchar(255) | YES  |     | NULL    |       |
    | chenweiliang_author   | varchar(255) | YES  |     | NULL    |       |
    | submission_date | date         | YES  |     | NULL    |       |
    +-----------------+--------------+------+-----+---------+-------+
    4 rows in set (0.01 sec)
  • PRIKAŽI INDEKS IZ list sa podacima:
    Prikažite detaljne informacije o indeksu tabele podataka, uključujući PRIMARY KEY (primarni ključ).
    mysql> SHOW INDEX FROM chenweiliang_tbl;
    +------------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
    | Table      | Non_unique | Key_name | Seq_in_index | Column_name | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment | Index_comment |
    +------------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
    | chenweiliang_tbl |          0 | PRIMARY  |            1 | chenweiliang_id   | A         |           2 |     NULL | NULL   |      | BTREE      |         |               |
    +------------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
    1 row in set (0.00 sec)
  • PRIKAŽI STATUS TABELE KAO [FROM db_name] [LIKE 'pattern'] \G:
    Ova komanda će ispisati performanse i statistiku Mysql sistema upravljanja bazom podataka.
    mysql> SHOW TABLE STATUS  FROM chenweiliang;   # 显示数据库 chenweiliang 中所有表的信息
    
    mysql> SHOW TABLE STATUS from chenweiliang LIKE 'chenweiliang%';     # 表名以chenweiliang开头的表的信息
    mysql> SHOW TABLE STATUS from chenweiliang LIKE 'chenweiliang%'\G;   # 加上 \G,查询结果按列打印

Hope Chen Weiliang Blog ( https://www.chenweiliang.com/ ) dijeli "Kako upravljati MySQL bazom podataka? SSH komande za upravljanje MySQL serverima", pomoći će vam.

Dobrodošli da podijelite link ovog članka:https://www.chenweiliang.com/cwl-453.html

Dobrodošli na Telegram kanal bloga Chen Weilianga kako biste dobili najnovije informacije!

🔔 Budite prvi koji će dobiti vrijedan "Vodič za korištenje AI alata za marketing sadržaja ChatGPT" u glavnom direktoriju kanala! 🌟
📚 Ovaj vodič ima ogromnu vrijednost, 🌟Ovo je rijetka prilika, ne propustite je! ⏰⌛💨
Podelite i lajkujte ako želite!
Vaše dijeljenje i lajkovi su naša stalna motivacija!

 

Komentari

Vaša adresa e-pošte neće biti objavljena. Koriste se obavezna polja * Oznaka

skrolujte na vrh