一聚教程网:一个值得你收藏的教程网站

最新下载

热门教程

MySql 5.X创建用户并授权方法

时间:2013-05-16 编辑:简简单单 来源:一聚教程网

在mysql的user表中增加连接用户帐号:

这里不要直接使用INSERT语句添加user记录,使用INSERT可能出现:

ERROR 1364 (HY000): Field 'ssl_cipher' doesn't have a default value错误。不过早期的MYSQL版本笔者倒没出现这个错误,因为天缘一直都是直接修改user表或直接使用INSERT语句完成,后来升级MYSQL到5.1的时候,发现可能会出现这个错误。

具体方法

1.新建用户。

 代码如下 复制代码

//登录MYSQL
@>mysql -u root -p
@>密码
//创建用户
mysql> insert into mysql.user(Host,User,Password) values("localhost","phplamp",password("1234"));
//刷新系统权限表
mysql>flush privileges;
这样就创建了一个名为:phplamp  密码为:1234  的用户。

然后登录一下。

mysql>exit;
@>mysql -u phplamp -p
@>输入密码
mysql>登录成功


建议使用GRANT语句进行授权,语句如下:

 代码如下 复制代码

GRANT USAGE ON *.* TO 'username'@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION;

上句:

“username”替换为将要授权的用户名,比如clientusr;

“password”替换为clientusr设置的密码;

4、可访问数据表授权

创建好帐户之后,就开始给上面的common user进行数据表授权,步骤3中增加的连接用户默认权限都是“N”的,必须在db表中为该帐户授权,允许其访问专用数据库,当然超级用户就不说了。

使用下面语句:

 代码如下 复制代码

GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP ON tablename.*  TO 'username'@'localhost' IDENTIFIED BY 'password';

本语句中的权限根据实际需要确定:

"tablename"替换为授权访问的数据表table名

"username"是步骤2授权用户名

"password"是步骤2授权用户的设置密码

这样就为该用户授予了对某数据表的SELECT, INSERT, UPDATE, DELETE, CAREATE, DROP权限。

5、生效授权,创建完毕

一句话即可:FLUSH PRIVILEGES;


3.删除用户。

 代码如下 复制代码

@>mysql -u root -p
@>密码
mysql>DELETE FROM user WHERE User="phplamp" and Host="localhost";
mysql>flush privileges;
//删除用户的数据库
mysql>drop database phplampDB;

热门栏目