对管理员的CRUD
1 用户授权
tip
对一个用户进行授权,其操作作用域分为三部分,一是对用授权了什么操作,比如有: select,insert,update,delet。 二是针对哪个数据库,三是本地操作还是 还网操作。其格式为:
mysql> grant [操作,操作...] on [数据库名.数据表] to [用户名]@[ip限制] Identified by [密码];
mysql> flush privileges; //刷新系统权限表
1.1 方式一
增加一个用户test1密码为abc,让他可以在任何主机上登录,并对所有数据库有查询、插入、修改、删除的权限。首先用以root用户连入MYSQL,然后键入以下命令:
mysql> grant select,insert,update,delete on *.* to test1@“%” Identified by “abc”;
mysql> flush privileges;
但增加的用户是十分危险的,你想如某个人知道test1的密码,那么他就可以在internet上的任何一台电脑上登录你的mysql数据库并对你的数据可以为所欲为了,解决办法见例方式二
1.2 方式二
增加一个用户test2密码为abc,让他只可以在localhost上登录,并可以对数据库mydb进行查询、插入、修改、删除的操作(localhost指本地主机,即MYSQL数据库所在的那台主机),这样用户即使用知道test2的密码,他也无法从internet上直接访问数
mysql> grant select,insert,update,delete on book.* to test2@localhost Identified by "abc";
mysql> flush privileges;
如果你不想test2有密码,可以再打一个命令将密码消掉。
mysql> grant select,insert,update,delete on book.* to test2@localhost Identified by "";
MySql中添加用户,新建数据库,用户授权,删除用户,修改密码(注意每行后边都跟个;表示一个命令语句结束):
1.3 修改用户密码
mysql>update mysql.user set password=password('新密码') where User="test" and Host="localhost";
mysql>flush privileges;
2 添加用户
$ mysql -u root -p # 1.1 登录MYSQL:
# 1.2 创建用户:
mysql> insert into mysql.user(Host,User,Password) values("localhost","test",password("1234"));
这样就创建了一个名为:test 密码为:1234 的用户。
tip
注意:此处的”localhost”,是指该用户只能在本地登录,不能在另外一台机器上远程登录。如果想远程登录的话,将”localhost”改为”%”,表示在任何一台电脑上都可以登录。也可以指定某台机器可以远程登录。
2.1 新用户登录
开启新的终端,然后在本地登录。
mysql>exit;
@>mysql -u test -p
@>输入密码
mysql>登录成功
##3 删除用户
mysql >drop user 用户名@'%';
mysql >drop user 用户名@ localhost;