Bagaimana untuk menguruskan pangkalan data MySQL? Perintah SSH untuk Mengurus Pelayan MySQL

Bagaimana untuk mengurus pangkalan data MySQL ? Mengurus pelayan MySQL menggunakan arahan SSH.

MySQL 管理


Mulakan dan hentikan pelayan MySQL

Pertama, kita perlu menyemak sama ada pelayan MySQL sudah siap dengan menjalankan arahan berikut:

ps -ef | grep mysqld

Jika MySql sudah dimulakan, arahan di atas akan mengeluarkan senarai proses mysql, jika mysql tidak dimulakan, anda boleh menggunakan arahan berikut untuk memulakan pelayan mysql:

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

Jika anda ingin menutup pelayan MySQL yang sedang berjalan, anda boleh melaksanakan arahan berikut:

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

Tetapan Pengguna MySQL

Jika anda perlu menambah pengguna MySQL, anda hanya perlu menambah pengguna baharu pada jadual pengguna dalam pangkalan data mysql.

Berikut ialah contoh menambah pengguna, nama pengguna ialah tetamu, kata laluan ialah tetamu123, dan pengguna diberi kuasa untuk melakukan operasi SELECT, INSERT dan 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)

Apabila menambah pengguna, sila ambil perhatian bahawa kata laluan disulitkan menggunakan fungsi PASSWORD() yang disediakan oleh MySQL.Anda boleh lihat dalam contoh di atas bahawa kata laluan pengguna yang disulitkan ialah: 6f8c114b58f2ce9e.

Nota: Dalam MySQL 5.7, medan kata laluan dalam jadual pengguna telah digantikan dengan authentication_string.

Nota: Anda perlu melaksanakan pernyataan FLUSH PRIVILEGES . Arahan ini akan memuatkan semula jadual pemberian.

Jika anda tidak menggunakan arahan ini, anda tidak akan dapat menggunakan pengguna yang baru dibuat untuk menyambung ke pelayan mysql melainkan anda memulakan semula pelayan mysql.

Apabila membuat pengguna, anda boleh menentukan kebenaran untuk pengguna. Dalam lajur kebenaran yang sepadan, tetapkannya kepada 'Y' dalam penyata sisipan. Senarai kebenaran pengguna adalah seperti berikut:

  • Select_priv
  • Insert_priv
  • Kemas kini_priv
  • Delete_priv
  • Create_priv
  • drop_priv
  • Muat semula_priv
  • shutdown_priv
  • Process_priv
  • File_priv
  • Grant_priv
  • Rujukan_priv
  • Index_priv
  • Alter_priv

Satu lagi cara untuk menambah pengguna adalah melalui arahan GRANT SQL. Arahan seterusnya akan menambah pengguna zara ke TUTORIAL pangkalan data yang ditentukan, dan kata laluan ialah 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';

Perintah di atas akan mencipta rekod maklumat pengguna dalam jadual pengguna dalam pangkalan data mysql.

Nota: Pernyataan SQL MySQL diakhiri dengan titik koma (;).


konfigurasi fail /etc/my.cnf

Dalam keadaan biasa, anda tidak perlu mengubah suai fail konfigurasi, konfigurasi lalai fail adalah seperti berikut:

[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

Dalam fail konfigurasi, anda boleh menentukan direktori tempat fail log ralat yang berbeza disimpan. Secara amnya, anda tidak perlu menukar konfigurasi ini.


Perintah untuk mengurus MySQL

Berikut menyenaraikan arahan yang biasa digunakan dalam proses menggunakan pangkalan data Mysql:

  • Cara Guna nama storan data :
    Pilih pangkalan data Mysql untuk dikendalikan.Selepas menggunakan arahan ini, semua arahan Mysql hanya untuk pangkalan data ini.
    mysql> use chenweiliang;
    Database changed
  • TUNJUKKAN PANGKALAN DATA: 
    Menyenaraikan senarai pangkalan data sistem pengurusan pangkalan data MySQL.
    mysql> SHOW DATABASES;
    +--------------------+
    | Database           |
    +--------------------+
    | information_schema |
    | chenweiliang             |
    | cdcol              |
    | mysql              |
    | onethink           |
    | performance_schema |
    | phpmyadmin         |
    | test               |
    | wecenter           |
    | wordpress          |
    +--------------------+
    10 rows in set (0.02 sec)
  • TUNJUKKAN JADUAL:
    Paparkan semua jadual pangkalan data yang ditentukan. Sebelum menggunakan arahan ini, anda perlu menggunakan arahan guna untuk memilih pangkalan data yang akan dikendalikan.
    mysql> use chenweiliang;
    Database changed
    mysql> SHOW TABLES;
    +------------------+
    | Tables_in_chenweiliang |
    +------------------+
    | employee_tbl     |
    | chenweiliang_tbl       |
    | tcount_tbl       |
    +------------------+
    3 rows in set (0.00 sec)
  • TUNJUKKAN LAjur DARI Lembaran data:
    Paparkan atribut jadual data, jenis atribut, maklumat kunci utama, sama ada NULL, nilai lalai dan maklumat lain.
    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)
  • TUNJUKKAN INDEKS DARIPADA Lembaran data:
    Paparkan maklumat indeks terperinci jadual data, termasuk PRIMARY KEY (primary key).
    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)
  • Tunjukkan STATUS JADUAL SEPERTI [DARI db_name] [SUKA 'corak'] \G:
    Perintah ini akan mengeluarkan prestasi dan statistik sistem pengurusan pangkalan data 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,查询结果按列打印

发表 评论

您的邮箱地址不会被公开。必填项已用*标注

Tatal ke