Rumah >pangkalan data >tutorial mysql >Bagaimana Memberi Keistimewaan Penciptaan Pangkalan Data Semasa Mengehadkan Akses kepada Pangkalan Data Khusus dalam MySQL?

Bagaimana Memberi Keistimewaan Penciptaan Pangkalan Data Semasa Mengehadkan Akses kepada Pangkalan Data Khusus dalam MySQL?

Patricia Arquette
Patricia Arquetteasal
2024-11-04 19:31:01353semak imbas

How to Grant Database Creation Privileges While Restricting Access to Specific Databases in MySQL?

Memberi Keistimewaan Penciptaan Pangkalan Data dan Mengehadkan Akses

Masalah:

Pengguna perlu dapat untuk mencipta pangkalan data dalam contoh MySQL, tetapi setiap pengguna harus diberikan akses hanya kepada pangkalan data mereka sendiri.

Penyelesaian:

Langkah 1: Buat Penggantian Peranan

Buat peranan yang merangkumi keistimewaan yang diperlukan untuk mencipta dan mengubah suai pangkalan data:

CREATE ROLE db_creator;
GRANT CREATE, DROP, ALTER, DELETE, INSERT, UPDATE, SELECT ON *.* TO db_creator;

Langkah 2: Berikan Peranan kepada Pengguna Sasaran

Berikan peranan kepada pengguna yang dikehendaki, dengan menyatakan bahawa keistimewaan peranan harus digunakan pada pangkalan data dengan konvensyen penamaan khusus:

GRANT db_creator TO 'testuser'@'%';

Dalam contoh ini, penguji akan mendapat keistimewaan yang diberikan oleh peranan db_creator, tetapi hanya untuk pangkalan data yang bermula dengan testuser_.

Nota Tambahan:

  • Ganti penguji dengan nama pengguna sebenar.
  • Tentukan '%' sebagai hos untuk memberikan akses daripada mana-mana hos (laraskan mengikut keperluan untuk persekitaran anda).
  • Konvensyen penamaan untuk pangkalan data (cth., testuser_%) boleh disesuaikan seperti yang dikehendaki.

Atas ialah kandungan terperinci Bagaimana Memberi Keistimewaan Penciptaan Pangkalan Data Semasa Mengehadkan Akses kepada Pangkalan Data Khusus dalam MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn