当我看到大量帮助网站显示如何创建MySQL用户并授予权限时,我正在摸不着头脑,但由于某种原因,它对我不起作用.我试用了安装了最新MySQL版本的WinXP和MacBook Pro笔记本电脑.
以下是我使用WordPress时的一个示例.实际的数据库是不同但相同的问题.
以下是步骤:
mysql> mysql -uroot -p<password>
mysql> CREATE DATABASE wwordpress;
mysql> CREATE USER 'www'@'localhost' IDENTIFIED BY 'basic';
Run Code Online (Sandbox Code Playgroud)
查询OK,0行受影响(0.14秒)
mysql> GRANT INSERT ON wordpress.* TO 'www'@'localhost' IDENTIFIED BY 'basic';
Run Code Online (Sandbox Code Playgroud)
查询正常,0行受影响(0.00秒)
mysql> FLUSH PRIVILEGES;
Run Code Online (Sandbox Code Playgroud)
查询正常,0行受影响(0.03秒)
mysql> SELECT * FROM mysql.user WHERE User='www' \G
Run Code Online (Sandbox Code Playgroud)
*************************** 1. row *************************** Host: localhost User: www Password: *E85C94AF0F09C892339D31CF7570A970BCDC5805 Select_priv: N Insert_priv: N Update_priv: N Delete_priv: N Create_priv: N Drop_priv: N Reload_priv: N Shutdown_priv: N Process_priv: N File_priv: N Grant_priv: N References_priv: N Index_priv: N Alter_priv: N Show_db_priv: N Super_priv: N Create_tmp_table_priv: N Lock_tables_priv: N Execute_priv: N Repl_slave_priv: N Repl_client_priv: N Create_view_priv: N Show_view_priv: N Create_routine_priv: N Alter_routine_priv: N Create_user_priv: N Event_priv: N Trigger_priv: N ssl_type: ssl_cipher: x509_issuer: x509_subject: max_questions: 0 max_updates: 0 max_connections: 0 max_user_connections: 0 1 row in set (0.00 sec) mysql>
如您所见,"Insert_priv:N"应为"Y".
有什么建议?
提前致谢.
The*_*can 41
你选择的是全球特权.但是,您正在为数据库(和主机,但无关紧要)提供特定权限.
GRANT INSERT
ON wordpress
.* TO 'www'@'localhost' IDENTIFIED BY 'basic';
theese权限存储在db
表中.
只是为了指出你正确的方向:
SHOW GRANTS FOR 'www'@'localhost'
Run Code Online (Sandbox Code Playgroud)
http://dev.mysql.com/doc/refman/5.0/en/show-grants.html
mar*_*ton 12
这不是存储大多数用户GRANTed权限的地方 - 试试
SHOW GRANTS FOR 'www'@'localhost'
Run Code Online (Sandbox Code Playgroud)
改为查看特定于数据库的权限.(只有在所有数据库中,授权才会显示在用户表中.)
这是一个(相当古老的)逐步详细说明权限如何存储在MySQL中 - 我认为事情没有太大变化.
归档时间: |
|
查看次数: |
59757 次 |
最近记录: |