Kaip valdyti MySQL duomenų bazę? SSH komandos MySQL serveriams valdyti

kaip valdytiMySQL duomenų bazė? SSH komandų valdymasMySQL服务器

MySQL 管理


Paleiskite ir sustabdykite MySQL serverį

Pirmiausia turime patikrinti, ar MySQL serveris veikia, vykdydami šią komandą:

ps -ef | grep mysqld

Jei MySql jau paleistas, aukščiau pateikta komanda išves mysql procesų sąrašą, jei mysql nepaleistas, mysql serveriui paleisti galite naudoti šią komandą:

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

Jei norite išjungti šiuo metu veikiantį MySQL serverį, galite vykdyti šią komandą:

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

MySQL vartotojo nustatymai

Jei reikia pridėti MySQL vartotoją, tereikia jį įtraukti į vartotojų lentelę mysql duomenų bazėje.

Toliau pateikiamas vartotojo pridėjimo pavyzdys: vartotojo vardas yra svečias, slaptažodis yra guest123, o vartotojas turi teisę atlikti SELECT, INSERT ir UPDATE operacijas:

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)

Pridėdami vartotoją, atkreipkite dėmesį, kad slaptažodis yra užšifruotas naudojant MySQL pateiktą PASSWORD() funkciją.Aukščiau pateiktame pavyzdyje galite pamatyti, kad užšifruotas vartotojo slaptažodis yra: 6f8c114b58f2ce9e.

Pastaba:„MySQL 5.7“ naudotojo lentelės slaptažodis buvo pakeistas įautentifikavimo_eilutė.

Pastaba:Žinokite, kad reikia įgyvendinti FLUSHO PRIVILEGIJOS pareiškimas.Įvykdžius šią komandą, suteikimo lentelė bus įkelta iš naujo.

Jei nenaudosite šios komandos, negalėsite naudoti naujai sukurto vartotojo prisijungti prie mysql serverio, nebent iš naujo paleisite mysql serverį.

Kurdami vartotoją galite nurodyti vartotojo teises. Atitinkamame leidimų stulpelyje įterpimo sakinyje nustatykite jį į "Y". Vartotojo leidimų sąrašas yra toks:

  • Select_priv
  • Įterpti_priv
  • Update_priv
  • Ištrinti_priv
  • Sukurti_priv
  • drop_priv
  • Iš naujo įkelti_priv
  • shutdown_priv
  • Process_priv
  • File_priv
  • Grant_priv
  • References_priv
  • Index_priv
  • Alter_priv

Kitas būdas pridėti vartotojus yra naudojant SQL komandą GRANT. Kita komanda įtrauks vartotoją zara į nurodytą duomenų bazę TUTORIALS, o slaptažodis yra 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';

Aukščiau pateikta komanda sukurs vartotojo informacijos įrašą mysql duomenų bazės vartotojo lentelėje.

pastaba: MySQL SQL sakiniai baigiami kabliataškiu (;).


/etc/my.cnf failo konfigūracija

Įprastomis aplinkybėmis jums nereikia keisti konfigūracijos failo, numatytoji failo konfigūracija yra tokia:

[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

Konfigūracijos faile galite nurodyti katalogą, kuriame saugomi skirtingi klaidų žurnalo failai. Paprastai šių konfigūracijų keisti nereikia.


MySQL valdymo komandos

Toliau pateikiamos komandos, dažniausiai naudojamos naudojant Mysql duomenų bazę:

  • NAUDOJIMAS duomenų saugojimo pavadinimas :
    Pasirinkite Mysql duomenų bazę, kurią norite valdyti.Panaudojus šią komandą visos Mysql komandos yra skirtos tik šiai duomenų bazei.
    mysql> use chenweiliang;
    Database changed
  • RODYTI DUOMENŲ BAZES: 
    Pateikiamas MySQL duomenų bazių valdymo sistemos duomenų bazių sąrašas.
    mysql> SHOW DATABASES;
    +--------------------+
    | Database           |
    +--------------------+
    | information_schema |
    | chenweiliang             |
    | cdcol              |
    | mysql              |
    | onethink           |
    | performance_schema |
    | phpmyadmin         |
    | test               |
    | wecenter           |
    | wordpress          |
    +--------------------+
    10 rows in set (0.02 sec)
  • RODYTI LENTELES:
    Rodyti visas nurodytos duomenų bazės lenteles Prieš naudodami šią komandą, turite naudoti komandą use, kad pasirinktumėte duomenų bazę, kurią norite valdyti.
    mysql> use chenweiliang;
    Database changed
    mysql> SHOW TABLES;
    +------------------+
    | Tables_in_chenweiliang |
    +------------------+
    | employee_tbl     |
    | chenweiliang_tbl       |
    | tcount_tbl       |
    +------------------+
    3 rows in set (0.00 sec)
  • RODYTI Stulpelius NUO duomenų lapas:
    Rodyti duomenų lentelės atributus, atributų tipus, pirminio rakto informaciją, ar ji NULL, numatytąją reikšmę ir kitą informaciją.
    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)
  • RODYTI RODYKLĘ NUO duomenų lapas:
    Rodyti išsamią duomenų lentelės rodyklės informaciją, įskaitant PIRMINĮ RAKTĄ (pirminį raktą).
    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)
  • RODYTI LENTELĖS BŪSĘ, PATKIAI [FROM db_name] [PATINKA 'šablonas'] \G:
    Ši komanda išves Mysql duomenų bazių valdymo sistemos našumą ir statistiką.
    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 tinklaraštis ( https://www.chenweiliang.com/ ) pasidalino „Kaip valdyti MySQL duomenų bazę? SSH komandos valdyti MySQL serverius“, padės jums.

Kviečiame pasidalinti šio straipsnio nuoroda:https://www.chenweiliang.com/cwl-453.html

Sveiki atvykę į Chen Weiliang tinklaraščio Telegram kanalą, kad gautumėte naujausius atnaujinimus!

🔔 Būkite pirmas, kuris kanalo viršaus kataloge gaus vertingą „ChatGPT turinio rinkodaros AI įrankio naudojimo vadovą“! 🌟
📚 Šis vadovas turi didžiulę vertę, 🌟Tai reta galimybė, nepraleiskite jos! ⏰⌛💨
Dalinkitės ir like jei patiko!
Jūsų dalijimasis ir paspaudimai „Patinka“ yra mūsų nuolatinė motyvacija!

 

发表 评论

Jūsų el. Pašto adresas nebus paskelbtas. Naudojami privalomi laukai * Etiketė

slinkite į viršų