您的位置:首页 > 数据库 > MySQL

mysql新建用户的方法

2012-07-24 15:45 274 查看
首先要声明一下:一般情况下,修改MySQL密码,授权,是需要有mysql里的root权限的。

注:本操作是在WIN命令提示符下,phpMyAdmin同样适用。

用户:phplamp 用户数据库:phplampDB

1.新建用户。

//登录MYSQL

@>mysql -u root -p

@>密码

//创建用户

mysql> insert into mysql.user(Host,User,Password,ssl_cipher,x509_issuer,x509_subject) values("localhost","pppadmin",password("passwd"),'','','');

//刷新系统权限表

mysql>flush privileges;

这样就创建了一个名为:phplamp 密码为:1234 的用户。

然后登录一下。

mysql>exit;

@>mysql -u phplamp -p

@>输入密码

mysql>登录成功

2.为用户授权。

//登录MYSQL(有ROOT权限)。我里我以ROOT身份登录.

@>mysql -u root -p

@>密码

//首先为用户创建一个数据库(phplampDB)

mysql>create database phplampDB;

//授权phplamp用户拥有phplamp数据库的所有权限。

>grant all privileges on phplampDB.* to phplamp@localhost identified by '1234';

//刷新系统权限表

mysql>flush privileges;

mysql>其它操作

/*

如果想指定部分权限给一用户,可以这样来写:

mysql>grant select,update on phplampDB.* to phplamp@localhost identified by '1234';

//刷新系统权限表。

mysql>flush privileges;

*/

3.删除用户。

@>mysql -u root -p

@>密码

mysql>DELETE FROM user WHERE User="phplamp" and Host="localhost";

mysql>flush privileges;

//删除用户的数据库

mysql>drop database phplampDB;

4.修改指定用户密码。

@>mysql -u root -p

@>密码

mysql>update mysql.user set password=password('新密码') where User="phplamp" and Host="localhost";

mysql>flush privileges;

另一篇转载,注意不要忽视flush privileges

方法一:

mysql>use mysql

mysql>GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, ALTER

ON *.* TO IDENTIFIED BY 'password';

mysql>GRANT ALL PRIVILEGES ON mydb.* TO "

IDENTIFIED BY 'password';

mysql>GRANT PROCESS, FILE ON *.* TO

IDENTIFIED BY 'password' WIDTH GRANT OPTION;

上面的语句增加了三个用户。在本机上以“ j e r r y”为用户名的用户将拥有所有数据库的

S E L E C T、I N S E RT等上面列出的权限。而用户 j i m无论在什么主机上登录都拥有数据库 m y d b的

所有权限(不包括G R A N T权限)。而来自“s e r v e r. d o m a i n”的用户“l e o n”则拥有P R O C E S S、

F I L E和G R A N T权限。

方法二:

mysql>use mysql

mysql>INSERT INTO user VALUES('localhost', 'jerry', PASSWORD('password'),

'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'N', 'N', 'N', 'N', 'N', 'N', 'Y',);

mysql>INSERT INTO user (Host, User, Password)

VALUES('%', 'jim', PASSWORD('password'));

mysql>INSERT INTO db (Host, db, User,

Select_priv, Insert_priv, Update_priv, Delete_priv, Create_priv, Drop_priv, Alter_priv)

VALUES('%','jim','Y' ,'Y' ,'Y' ,'Y' ,'Y' ,'Y' ,'Y');

mysql>INSERT INTO user VALUES('server.domain', 'leon', PASSWORD('password')

'N','N', 'N', 'N', 'N', 'N', 'N', 'N' ,'Y' ,'Y' ,'Y','N', 'N', 'N');

mysql>FLUSH PRIVILEGES;

上面的语句增加了三个与在方法一中权限一样的用户。上面的 VA L U E S项的值应该与m y s q l

数据库里的相应表格的相应项的顺序一致。不一定是上面的顺序,也许项的个数会有所不同。

由于一、三个用户的权限都是对“* . *”的,所以不用在d b表里插入记录。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: