2011-10-06 23 views
10

Kullanıcıların yeni kullanıcılar oluşturabilmesini istediğim bir veritabanım var. Bu harika çalışıyor ve foo kullanıcıları oluşturabilirKök olmayan bir kullanıcı olarak nasıl "kullanıcı oluştur" veririm?

grant create user on *.* to foo; 

: Yani şöyle CREATE USER GRANT aracılığı ile ulaşılabilir. Sorun şu ki, root olarak çalıştırılıyorsa yukarıdaki satırın çalışmasıdır, ancak normal kullanıcı olarak çalıştırılıyorsa, bu kullanıcı zaten CREATE USER ayrıcalığına sahip olsa bile çalışmaz. Kısaca, normal kullanıcılar kullanıcı oluşturma yetkisini veremezler. Bunu yapabilmek için ihtiyaç duyduğunuz herhangi bir ayrıcalık için uzak ve geniş bir alanda araştırma yapıyorum ve bunun MySQL belgelerinde hiçbir kanıt bulamamış olmasına rağmen, sadece rootun yapabileceği bir şey olduğunu düşünmeye başladım.

Soru: Normal bir kullanıcının yeni kullanıcıların kullanıcı oluşturmasına nasıl izin verebilirim?

cevap

7

hibe sonra sorguyu çalıştırmayı deneyin:

FLUSH PRIVILEGES; 
8

Hem cevaplar faydalıydı - Ben her ikisinin bir kombinasyonunu kullanılan ve işe yaradı gibi görünüyor. Kök olarak

(yönetici normal kullanıcı):

mysql> grant create user on *.* to admin with grant option; 
Query OK, 0 rows affected (0.00 sec) 

mysql> flush privileges; 
Query OK, 0 rows affected (0.00 sec) 

yöneticisi olarak (o normal bir kullanıcı hatırlıyorum):

mysql> grant create user on *.* to foo with grant option; 
Query OK, 0 rows affected (0.00 sec) 

Çok teşekkür ederim.

4
-- Create username user 

GRANT ALL PRIVILEGES ON `tshirtshop`.* 
     TO 'username'@'localhost' IDENTIFIED BY 'password' 
     WITH GRANT OPTION; 
İlgili konular