关于mysql的用户管理,笔记 1、创建新用户 通过root用户登录之后创建 >> grant all privileges on *.* to testuser@localh
来源:互联网 发布:协同过滤算法 编辑:程序博客网 时间:2024/04/30 20:03
1、创建新用户
通过root用户登录之后创建
>> grant all privileges on *.* to testuser@localhost identified by"123456" ; // 创建新用户,用户名为testuser,密码为123456 ;
>> grant all privileges on *.* to testuser@localhost identified by"123456" ; // 设置用户testuser,可以在本地访问mysql
>> grant all privileges on *.* to testuser@"%" identified by"123456" ; // 设置用户testuser,可以在远程访问mysql
>> flush privileges ; // mysql 新设置用户或更改密码后需用flush privileges刷新MySQL的系统权限相关表,否则会出现拒绝访问,还有一种方法,就是重新启动mysql服务器,来使新设置生效
2、设置用户访问数据库权限
>> grant all privileges on test_db.* to testuser@localhost identified by "123456" ; // 设置用户testuser,只能访问数据库test_db,其他数据库均不能访问 ;
>> grant all privileges on *.* to testuser@localhost identified by "123456" ; // 设置用户testuser,可以访问mysql上的所有数据库 ;
>> grant all privileges on test_db.user_infor to testuser@localhost identified by "123456" ; // 设置用户testuser,只能访问数据库test_db的表user_infor,数据库中的其他表均不能访问 ;
3、设置用户操作权限
>> grant all privileges on *.* to testuser@localhost identified by "123456" WITH GRANT OPTION ; //设置用户testuser,拥有所有的操作权限,也就是管理员 ;
>> grant select on *.* to testuser@localhost identified by "123456" WITH GRANT OPTION ; //设置用户testuser,只拥有【查询】操作权限 ;
>> grant select,insert on *.* to testuser@localhost identified by "123456" ; //设置用户testuser,只拥有【查询\插入】操作权限 ;
>> grant select,insert,update,delete on *.* to testuser@localhost identified by "123456" ; //设置用户testuser,只拥有【查询\插入】操作权限 ;
>> REVOKE select,insert ON what FROM testuser //取消用户testuser的【查询\插入】操作权限 ;
4、设置用户远程访问权限
>> grant all privileges on *.* to testuser@“192.168.1.100” identified by "123456" ; //设置用户testuser,只能在客户端IP为192.168.1.100上才能远程访问mysql ;
5、关于root用户的访问设置
设置所有用户可以远程访问mysql,修改my.cnf配置文件,将bind-address = 127.0.0.1前面加“#”注释掉,这样就可以允许其他机器远程访问本机mysql了;
>> grant all privileges on *.* to root@"%" identified by "123456" ; // 设置用户root,可以在远程访问mysql
>> select host,user from user; //查询mysql中所有用户权限
关闭root用户远程访问权限
>> delete from user where user="root" and host="%" ; //禁止root用户在远程机器上访问mysql
>> flush privileges ; //修改权限之后,刷新MySQL的系统权限相关表方可生效
第二版
一, 创建用户:
命令:CREATE USER 'username'@'host' IDENTIFIED BY 'password';
说明:username - 你将创建的用户名, host - 指定该用户在哪个主机上可以登陆,如果是本地用户可用localhost, 如果想让该用户可以从任意远程主机登陆,可以使用通配符%. password - 该用户的登陆密码,密码可以为空,如果为空则该用户可以不需要密码登陆服务器.
例子: CREATE USER 'dog'@'localhost' IDENTIFIED BY '123456';
CREATE USER 'pig'@'192.168.1.101_' IDENDIFIED BY '123456';
CREATE USER 'pig'@'%' IDENTIFIED BY '123456';
CREATE USER 'pig'@'%' IDENTIFIED BY '';
CREATE USER 'pig'@'%';
二,授权:
命令:GRANT privileges ON databasename.tablename TO 'username'@'host' (不行就看下面那句all的)
说明: privileges - 用户的操作权限,如SELECT , INSERT , UPDATE 等(详细列表见该文最后面).如果要授予所的权限则使用ALL.;databasename - 数据库名,tablename-表名,如果要授予该用户对所有数据库和表的相应操作权限则可用*表示, 如*.*.
例子: GRANT SELECT, INSERT ON test.user TO 'pig'@'%';
GRANT ALL ON *.* TO 'pig'@'%';
注意:用以上命令授权的用户不能给其它用户授权,如果想让该用户可以授权,用以下命令:
GRANT privileges ON databasename.tablename TO 'username'@'host' WITH GRANT OPTION;
三.设置与更改用户密码
命令:SET PASSWORD FOR 'username'@'host' = PASSWORD('newpassword');如果是当前登陆用户用SET PASSWORD = PASSWORD("newpassword");
例子: SET PASSWORD FOR 'pig'@'%' = PASSWORD("123456");
四.撤销用户权限
命令: REVOKE privilege ON databasename.tablename FROM 'username'@'host';
说明: privilege, databasename, tablename - 同授权部分.
例子: REVOKE SELECT ON *.* FROM 'pig'@'%';
注意: 假如你在给用户'pig'@'%'授权的时候是这样的(或类似的):GRANT SELECT ON test.user TO 'pig'@'%', 则在使用REVOKE SELECT ON *.* FROM 'pig'@'%';命令并不能撤销该用户对test数据库中user表的SELECT 操作.相反,如果授权使用的是GRANT SELECT ON *.* TO 'pig'@'%';则REVOKE SELECT ON test.user FROM 'pig'@'%';命令也不能撤销该用户对test数据库中user表的Select 权限.
具体信息可以用命令SHOW GRANTS FOR 'pig'@'%'; 查看.
五.删除用户
命令: DROP USER 'username'@'host';
附表:在MySQL中的操作权限
- 关于mysql的用户管理,笔记 1、创建新用户 通过root用户登录之后创建 >> grant all privileges on *.* to testuser@localh
- 解决MySQL不能远程登录_用户创建与授权_grant all privileges on(转)
- mysql给用户赋予所有权限 grant all privileges on
- mysql 赋给用户远程权限 grant all privileges on
- mysql 赋给用户远程权限 grant all privileges on
- mysql 赋给用户远程权限 grant all privileges on
- 给mysql的root %用户添加grant权限。并给创建的用户赋予权限
- MySQL 创建用户的Grant命令用法
- Mysql用户权限 grant all privileges on
- MYSQL GRANT ALL PRIVILEGES
- 关于mysql5.7中创建用户无法登录及grant操作无效问题的处理
- mysql创建新的用户及flush privileges解析
- mysql创建新的用户及flush privileges解析
- mysql的root用户没有grant权限
- create user rm identified by rmrm;-- 创建新的用户 --grant 权限1、权限2...to 用户 给创建用户权限 --ex:grant create ses
- MYSQL添加新用户 MYSQL为用户创建数据库 MYSQL为新用户分配权限 无法使用新增的用户登陆mysql
- mysql 赋给用户权限 grant all privileges on
- mysql 赋给用户权限 grant all privileges on
- java线程安全之wait/notify模拟Queue (九)
- 入门要懂得的
- C语言基础整理1
- 大三上第一次作业--12个Linux基本问题的讨论
- C语言小知识
- 关于mysql的用户管理,笔记 1、创建新用户 通过root用户登录之后创建 >> grant all privileges on *.* to testuser@localh
- JetBrains 里不为人知的秘密--特别篇(1)
- IDEA手动配置JUnit
- C语言基础整理
- 使用Kotlin实现百思不得姐弹出菜单
- CentOS 安装 Redis 和 php redis.so 扩展笔记
- C语言知识简介
- linux上安装redis服务
- 1143 字母转换