数据库(三)
- 创建用户
- 登陆数据库
@>mysql -u root -p
@>密码
- 创建用户:
GRANT USAGE ON . TO ‘用户名’ @‘localhost’ IDENTIFIED BY ‘密码’ WITH GRANT OPTION;
此处的"localhost",是指该用户只能在本地登录,不能在另外一台机器上远程登录。如果想远程登录的话,将"localhost"改为"%",表示在任何一台电脑上都可以登录。也可以指定某台机器可以远程登录。
- 退出数据库
mysql>exit;
- 登陆数据库
- 为新建的用户分配权限
- 用有root权限的账号的登陆数据库
@>mysql -u root -p
@>密码 - 创建一个测试数据库 testdb
@mysql>create database testdb;
-
- 授权用户拥有testDB数据库的所有权限(某个数据库的所有权限):
@mysql>grant all privileges on testdb.* to 用户名@localhost identified by ‘密码’;
@mysql>flush privileges; //刷新系统权限表
格式:grant 权限 on 数据库.* to 用户名@登录主机 identified by “密码”;
- 指定部分权限给一用户,可以这样来写:
@mysql>grant select,update on testDB.* to 用户名@localhost identified by ‘密码’;
@mysql>flush privileges; //刷新系统权限表 - 授权test用户拥有所有数据库的某些权限:
mysql>grant select,delete,update,create,drop on . to 用户名@"%" identified by “密码”;
t用户对所有数据库都有select,delete,update,create,drop 权限。
PS:* 是通配符 例 testdb.*意味testdb下所有表的权限
- 授权用户拥有testDB数据库的所有权限(某个数据库的所有权限):
- 取消权限
mysql> REVOKE SELECT,UPDATE,INSERT,DELETE on . from myuser@‘localhost’;
- 用有root权限的账号的登陆数据库
- 删除用户
用root权限用户登陆
@>mysql -u root -p
@>密码
mysql>Delete FROM user Where User=‘用户名’ and Host=‘localhost’;
mysql>flush privileges;
mysql>drop database testdb; //删除用户的数据库
删除账户及权限:>drop user 用户名@’%’;
>drop user 用户名@ localhost; - 修改指定用户密码
@>mysql -u root -p
@>密码
mysql>update mysql.user set password=password(‘新密码’) where User=“用户名” and Host=“localhost”;
mysql>flush privileges;