mysql新建用户的方法
首先要声明一下:一般情况下,修改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 jerry@.localhost IDENTIFIED BY 'password';
mysql>GRANT ALL PRIVILEGES ON mydb.* TO mailto:jim@""
IDENTIFIED BY 'password';
mysql>GRANT PROCESS, FILE ON *.* TO mailto:leon@-server.domain-
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表里插入记录。