Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Izin Pengguna MySQL

Mari kita lihat cara memberikan izin (disebut hak istimewa) kepada pengguna database MySQL

Secara default saat Anda membuat pengguna MySQL baru menggunakan sintaks

CREATE USER '<username>'@'localhost' IDENTIFIED BY '<password>';

pengguna tidak bisa berbuat banyak. Kita dapat mengatakan bahwa itu tidak bisa apa-apa, sebenarnya.

Itu tidak bisa membaca data dari database yang ada, apalagi memodifikasi data. Dan itu bahkan tidak bisa membuat database baru.

Untuk membuat pengguna melakukan apa saja, Anda harus memberikan hak istimewa untuk itu.

Anda dapat melakukannya menggunakan GRANT perintah.

Kita dapat menggunakan GRANT <permission> , menggunakan kata kunci izin berikut:

  • CREATE
  • DROP
  • DELETE
  • INSERT
  • SELECT
  • UPDATE
  • ALL PRIVILEGES

Berikan hak istimewa untuk membuat database baru kepada pengguna

GRANT CREATE ON *.* TO '<username>'@'localhost';

Berikan hak istimewa kepada pengguna untuk membuat tabel baru di database tertentu

GRANT CREATE ON <database>.* TO '<username>'@'localhost';

Berikan hak istimewa untuk membaca (meminta) database tertentu kepada pengguna

GRANT SELECT ON <database>.* TO '<username>'@'localhost';

Berikan hak istimewa untuk membaca tabel database tertentu ke pengguna

GRANT SELECT ON <database>.<table> TO '<username>'@'localhost';

Berikan hak istimewa untuk menyisipkan, memperbarui, dan menghapus baris dalam database tertentu untuk pengguna

GRANT INSERT, UPDATE, DELETE ON <database>.* TO '<username>'@'localhost';

Berikan hak istimewa untuk menghapus tabel dalam database tertentu kepada pengguna

GRANT DROP ON <database>.* TO '<username>'@'localhost';

Berikan hak istimewa untuk menghapus database kepada pengguna

GRANT DROP ON *.* TO '<username>'@'localhost';

Berikan semua hak istimewa pada database tertentu kepada pengguna

GRANT ALL PRIVILEGES ON <database>.* TO '<username>'@'localhost';

Berikan semua hak istimewa kepada pengguna

GRANT ALL PRIVILEGES ON *.* TO '<username>'@'localhost';

Cabut hak istimewa

Contoh untuk mencabut DROP hak istimewa di <database> :

REVOKE DROP ON <database>.* TO '<username>'@'localhost';

Untuk mencabut semua hak istimewa, jalankan:

REVOKE ALL PRIVILEGES ON *.* TO '<username>'@'localhost';

Anda dapat memvisualisasikan hak istimewa dari satu pengguna dengan menjalankan:

SHOW GRANTS FOR '<username>'@'localhost';

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Python Terhubung Ke Database MySQL Dengan Konektor MySQL &Contoh PyMySQL

  2. PDO::__construct():Server mengirim charset (255) yang tidak diketahui klien. Tolong, laporkan ke pengembang

  3. MySQL TEXT vs BLOB vs CLOB

  4. Masukkan data dari satu tabel ke tabel lain di MySQL

  5. Kolom MySQL tidak dikenal dalam klausa ON