正文
1、使用 root 管理员登陆 mysql
mysql -uroot -p123456;
2、创建新用户
CREATE USER 'user1'@'%' IDENTIFIED BY '07fa533360d9';
'%' - 所有情况都能访问
'localhost' - 本机才能访问
'111.222.33.44' - 指定 ip 才能访问
修改密码
update mysql.user set password=password('新密码') where user='user1';
3、给该用户添加权限
grant all privileges on 想授权的数据库.* to 'user1'@'%';
all 可以替换为 select,delete,update,create,drop
这个时候访问,比刚才看到的数据库多出了一个刚刚添加的。
4、删除用户
Delete FROM mysql.user Where User='user1';
privilege;
操作完最好使用flush privilege
命令刷新一下权限。否则可能会修改不生效。
更多实例
1.远程登录mysql mysql -h ip -u root -p 密码 2.创建用户 格式:grant 权限 on 数据库.* to 用户名@登录主机 identified by '密码'; 例1:增加一个test1用户,密码为123456,可以在任何主机上登录,并对所有数据库有查询,增加,修改和删除的功能。需要在mysql的root用户下进行 mysql>grant select,insert,update,delete on *.* to test1@'%' identified by '123456'; mysql>flush privileges; 例2:增加一个test2用户,密码为123456,只能在192.168.2.12上登录,并对数据库student有查询,增加,修改和删除的功能。需要在mysql的root用户下进行 mysql>grant select,insert,update,delete on student.* to test2@192.168.2.12 identified by '123456'; mysql>flush privileges; 例3:授权用户test3拥有数据库student的所有权限 mysql>grant all privileges on student.* to test3@localhost identified by '123456'; mysql>flush privileges; 3.修改用户密码 mysql>update mysql.user set password=password(’123456′) where User='test1' and Host='localhost'; mysql>flush privileges; 4.删除用户 mysql>delete from user where user='test2' and host='localhost'; mysql>flush privileges; 5.删除数据库和删除表 mysql>drop database 数据库名; mysql>drop table 表名; 6.删除账户及权限 drop user 用户名@'%' drop user 用户名@localhost MySQL 赋予用户权限命令的简单格式可概括为: grant 权限 on 数据库对象 to 用户 一、grant 普通数据用户,查询、插入、更新、删除 数据库中所有表数据的权利。 grant select on testdb.* to common_user@'%' grant insert on testdb.* to common_user@'%' grant update on testdb.* to common_user@'%' grant delete on testdb.* to common_user@'%' 或者,用一条 MySQL 命令来替代: grant select, insert, update, delete on testdb.* to common_user@'%' 二、创建表、索引、视图、存储过程、函数等权限。 grant 创建、修改、删除 MySQL 数据表结构权限。 grant create on testdb.* to developer@'192.168.0.%'; grant alter on testdb.* to developer@'192.168.0.%'; grant drop on testdb.* to developer@'192.168.0.%'; grant 操作 MySQL 外键权限。 grant references on testdb.* to developer@'192.168.0.%'; grant 操作 MySQL 临时表权限。 grant create temporary tables on testdb.* to developer@'192.168.0.%'; grant 操作 MySQL 索引权限。 grant index on testdb.* to developer@'192.168.0.%'; grant 操作 给予任意登录权限。 grant all privileges on *.* to 'root2'@'%' identified by 'password'; flush privileges;
版权声明:本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
文章名称:《MySQL新建用户并给予权限》
文章链接: https://www.sgtms.com/shorthand/47.html
本站资源仅供个人学习交流,转载或者引用本文内容请注明来源及作者,不允许用于商业用途。
文章名称:《MySQL新建用户并给予权限》
文章链接: https://www.sgtms.com/shorthand/47.html
本站资源仅供个人学习交流,转载或者引用本文内容请注明来源及作者,不允许用于商业用途。
铁路局