Jak zarządzać bazą danych MySQL? Polecenia SSH do zarządzania serwerami MySQL

jak zarządzaćBaza danych MySQL? Zarządzanie poleceniami SSHMySQL服务器

MySQL 管理


Uruchom i zatrzymaj serwer MySQL

Najpierw musimy sprawdzić, czy serwer MySQL działa, uruchamiając następujące polecenie:

ps -ef | grep mysqld

Jeśli MySql jest już uruchomiony, powyższe polecenie wyświetli listę procesów mysql, jeśli mysql nie jest uruchomiony, możesz użyć następującego polecenia, aby uruchomić serwer mysql:

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

Jeśli chcesz zamknąć aktualnie działający serwer MySQL, możesz wykonać następujące polecenie:

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

Ustawienia użytkownika MySQL

Jeśli chcesz dodać użytkownika MySQL, wystarczy dodać nowego użytkownika do tabeli użytkowników w bazie danych mysql.

Poniżej znajduje się przykład dodawania użytkownika, nazwa użytkownika to guest, hasło to guest123, a użytkownik jest upoważniony do wykonywania operacji SELECT, INSERT i UPDATE:

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)

Podczas dodawania użytkownika należy pamiętać, że hasło jest szyfrowane za pomocą funkcji PASSWORD() dostarczanej przez MySQL.W powyższym przykładzie widać, że zaszyfrowane hasło użytkownika to: 6f8c114b58f2ce9e.

Uwaga:W MySQL 5.7 hasło tabeli użytkowników zostało zastąpione przezciąg_uwierzytelniania.

Uwaga:Bądź świadomy potrzeby wdrożenia PRZYWILEJE DO PŁUKANIA oświadczenie.Po wykonaniu tego polecenia, tabela grant zostanie ponownie załadowana.

Jeśli nie użyjesz tego polecenia, nie będziesz mógł użyć nowo utworzonego użytkownika do połączenia się z serwerem mysql, chyba że zrestartujesz serwer mysql.

Podczas tworzenia użytkownika możesz określić uprawnienia dla użytkownika. W odpowiedniej kolumnie uprawnień ustaw je na „Y” w instrukcji wstawiania. Lista uprawnień użytkownika jest następująca:

  • Wybierz_priv
  • Wstaw_prywat
  • Aktualizacja_prywatna
  • Usuń_priv
  • Utwórz_priv
  • drop_priv
  • Przeładuj_priv
  • shutdown_priv
  • Proces_priv
  • Plik_prywatny
  • Grant_priv
  • Referencje_prywatne
  • Indeks_priw
  • Zmień_pryw

Innym sposobem dodawania użytkowników jest użycie komendy GRANT SQL.Następna komenda doda użytkownika zara do określonej bazy danych TUTORIALS, a hasło to 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';

Powyższe polecenie utworzy rekord informacji o użytkowniku w tabeli użytkowników w bazie danych mysql.

注意: Instrukcje SQL MySQL są kończone średnikiem (;).


Konfiguracja pliku /etc/my.cnf

W normalnych okolicznościach nie trzeba modyfikować pliku konfiguracyjnego, domyślna konfiguracja pliku jest następująca:

[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

W pliku konfiguracyjnym można określić katalog, w którym przechowywane są różne pliki dziennika błędów.Zazwyczaj nie trzeba zmieniać tych konfiguracji.


Polecenia do zarządzania MySQL

Poniżej wymieniono polecenia często używane w procesie korzystania z bazy danych Mysql:

  • UŻYWAĆ nazwa przechowywania danych :
    Wybierz bazę danych Mysql, która ma być obsługiwana.Po użyciu tego polecenia, wszystkie polecenia Mysql są tylko dla tej bazy danych.
    mysql> use chenweiliang;
    Database changed
  • POKAŻ BAZY DANYCH: 
    Wyświetla listę baz danych systemu zarządzania bazami danych MySQL.
    mysql> SHOW DATABASES;
    +--------------------+
    | Database           |
    +--------------------+
    | information_schema |
    | chenweiliang             |
    | cdcol              |
    | mysql              |
    | onethink           |
    | performance_schema |
    | phpmyadmin         |
    | test               |
    | wecenter           |
    | wordpress          |
    +--------------------+
    10 rows in set (0.02 sec)
  • POKAŻ TABELE:
    Wyświetl wszystkie tabele określonej bazy danych. Przed użyciem tej komendy należy użyć komendy use, aby wybrać bazę danych, która ma być obsługiwana.
    mysql> use chenweiliang;
    Database changed
    mysql> SHOW TABLES;
    +------------------+
    | Tables_in_chenweiliang |
    +------------------+
    | employee_tbl     |
    | chenweiliang_tbl       |
    | tcount_tbl       |
    +------------------+
    3 rows in set (0.00 sec)
  • POKAŻ KOLUMNY OD 数据 表.:
    Wyświetl atrybuty tabeli danych, typy atrybutów, informacje o kluczu podstawowym, czy ma wartość NULL, wartość domyślną i inne informacje.
    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)
  • POKAŻ INDEKS OD 数据 表.:
    Wyświetl szczegółowe informacje o indeksie tabeli danych, w tym klucz podstawowy (klucz podstawowy).
    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)
  • POKAŻ STATUS TABELI LIKE [FROM nazwa_bazy danych] [LIKE 'wzorzec'] \G:
    To polecenie wyświetli wydajność i statystyki systemu zarządzania bazą danych Mysql.
    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,查询结果按列打印

Nadzieja Chen Weiliang Blog ( https://www.chenweiliang.com/ ) udostępniono "Jak zarządzać bazą danych MySQL? Polecenia SSH do zarządzania serwerami MySQL”, pomogą ci.

Zapraszamy do udostępnienia linku do tego artykułu:https://www.chenweiliang.com/cwl-453.html

Witamy na kanale Telegram bloga Chen Weiliang, aby uzyskać najnowsze aktualizacje!

🔔 Bądź pierwszą osobą, która otrzyma cenny „Przewodnik po użyciu narzędzia AI do marketingu treści ChatGPT” w głównym katalogu kanału! 🌟
📚 Ten przewodnik zawiera ogromną wartość, 🌟To rzadka okazja, nie przegap jej! ⏰⌛💨
Udostępnij i polub, jeśli chcesz!
Twoje udostępnianie i polubienia to nasza ciągła motywacja!

 

发表 评论

Twoj adres e-mail nie bedzie opublikowany. 必填 项 已 用 * 标注

przewiń na górę