MySQL 数据库GRANT命令增添新用户教程
发布:smiling 来源: PHP粉丝网 添加日期:2014-10-05 17:11:43 浏览: 评论:0
在mysql中我们要增加除了root用户之外的用户的方法有很多种,你我们不太懂命令的最简单的办法就是直接使用图形界面来操作,如phpmyadmin数据库管理工具,如果你懂命令我们可以直接使用GRANT命令增添新用户来操作.
GRANT语句增加新用户:
注意:和上面不同,下面的因为是MYSQL环境中的命令,所以后面都带一个分号作为命令结束符.
格式:grant select on 数据库.* to 用户名@登录主机 identified by “密码”
例1,代码如下:
- shell> mysql --user=root mysql mysql> GRANT ALL PRIVILEGES ON *.* TO monty@localhost IDENTIFIED BY 'something' WITH GRANT OPTION;
- mysql> GRANT ALL PRIVILEGES ON *.* TO monty@"%" IDENTIFIED BY 'something' WITH GRANT OPTION; mysql> GRANT RELOAD,PROCESS ON *.* TO admin@localhost;
- mysql> GRANT USAGE ON *.* TO dummy@localhost;
直接通过发出INSERT语句增加同样的用户存取信息,然后告诉服务器再次装入授权表,代码如下:
- shell> mysql --user=root mysql mysql> INSERT INTO user VALUES('localhost','monty',PASSWORD('something'), 'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y')
- mysql> INSERT INTO user VALUES('%','monty',PASSWORD('something'), 'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y')
- mysql> INSERT INTO user SET Host='localhost',User='admin', Reload_priv='Y', Process_priv='Y';
- mysql> INSERT INTO user (Host,User,Password) VALUES('localhost','dummy',''); mysql> FLUSH PRIVILEGES;
为了使用GRANT语句设置个用户的权限,运行这些命令,代码如下:
- shell> mysql --user=root mysql mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP ON bankaccount.* TO custom@localhost IDENTIFIED BY 'stupid'; mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP ON expenses.* TO custom@whitehouse.gov IDENTIFIED BY 'stupid'; mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP ON customer.* TO custom@'%' IDENTIFIED BY 'stupid';
通过直接修改授权表设置用户权限,运行这些命令,注意,在结束时FLUSH PRIVILEGES),代码如下:
- shell> mysql --user=root mysql mysql> INSERT INTO user (Host,User,Password) VALUES('localhost','custom',PASSWORD('stupid'));
- mysql> INSERT INTO user (Host,User,Password) VALUES('server.domain','custom',PASSWORD('stupid')); mysql> INSERT INTO user (Host,User,Password) VALUES('whitehouse.gov','custom',PASSWORD('stupid')); --phpfensi.com
- mysql> INSERT INTO db (Host,Db,User,Select_priv,Insert_priv,Update_priv,Delete_priv, Create_priv,Drop_priv) VALUES ('localhost','bankaccount','custom','Y','Y','Y','Y','Y','Y'); mysql> INSERT INTO db (Host,Db,User,Select_priv,Insert_priv,Update_priv,Delete_priv, Create_priv,Drop_priv) VALUES ('whitehouse.gov','expenses','custom','Y','Y','Y','Y','Y','Y'); mysql> INSERT INTO db (Host,Db,User,Select_priv,Insert_priv,Update_priv,Delete_priv, Create_priv,Drop_priv) VALUES('%','customer','custom','Y','Y','Y','Y','Y','Y');
- mysql> FLUSH PRIVILEGES;
如果上面的代码让你看不清楚或看的头晕的话我们可以利用phpmyadmin来修改密码.
1、新建数据库:
进入phpmyadmin管理界面以后,找到如下文字“创建一个新的数据库”,然后在下面填上要新建的数据库的名称,在后面的下拉列表中选择数据库的编码,一般为“gb2312_chinese_bin”,点击“创建”按钮,这样就新建了一个数据库。
2、新建此数据库的对应帐户
在phpmyadmin管理界面点击“权限”,打开链接,点击“添加新用户”,在打开的页面中会看到“登入信息”,输入用户名、主机(一般为本地:localhost)、密码后,因为我们现在是要给单个用户配置单个数据库的权限,所以我们在这里不选择“全局权限”,然后点击最下面的“执行”按钮,这样就新建了一个用户名。
3、为新建的用户添加此数据库权限
添加完用户以后,管理界面的上方会提示“您已添加了一个新用户”,我们现在就给新建的用户添加权限,在下面找到“按数据库指定权限”,然后点击“在下列数据库添加权限”后面的下拉列表,选择数据库,选择数据下面的全部,然后选择结构除了最下面三个以外的复选框,其他一律不选,然后点击“执行”按钮,这样就配置好了这个用户完全管理这个数据库的权限了.
注:因为我们只是要给这个用户管理这个数据库的全部权限,但是没有其他数据库的管理权限,所以在配置权限的时候一定要注意。
附:在phpmyadmin中显示的用户权限都是英文的,我们在此附上中文翻译.
数据:
- SELECT:允许读取数据。
- INSERT:允许插入和替换数据。
- UPDATA:允许更改数据。
- DELETE:允许删除数据。
- FILE:允许从文件中导入数据以及将数据导出至文件。
结构:
- CREATE:允许创建新数据库和表。
- ALTER:允许修改现有表的结构。
- INDEX:允许创建和删除索引。
- DROP:允许删除数据库和表。
- CREATE TEMPORARY TABLES:允许创建暂时表。
- CREATE VIEW:允许创建新的意见。
- SHOW VIEW:显示创建的看法。
- CREATE ROUTINE:允许创建存储过程。
- ALTER ROUTINE:允许改变和下降存储过程。
- EXECUTE:允许许执行存储过程。
管理:
- GRANT:允许添加用户和权限,而不允许重新载入权限表。
- SUPER:允许在达到最大允许数目时仍进行连接。
- PROCESS:允许查看进程列表中的完整查询。
- RELOAD:允许重新载入服务器设置并刷新服务器的缓存。
- SHUTDOWN:允许关闭服务器。
- SHOW DATABASES:允许访问完整的数据库列表。
- LOCK TABLES:允许锁住当前线索的表。
- REFERENCES:在此版本的 MySQL 中无效。
- REPLICATION CLIENT:用户有权询问附属者/控制者在哪里。
- REPLICATION SLAVE:回复附属者所需。
- CREATE USER:允许创建,下降和重新命名的用户帐户。
Tags: MySQL增添新用户 GRANT命令
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)