mysql 如何对一个帐号授权对数据库的读写

grantselect,update,insertondatabase.*to'user1'@'localhost'identifiedby'123456'withgrantoption;

将database库的所有权限赋予用户user1;

用户user1只能从本地登陆,密码为123456,且可以将自己有的权限赋给其他用户。

本回答由网友推荐

mysql怎样添加用户授权

方法/步骤

我们以管理员的身份先登录到数据库服务器上,我想登录到数据库服务器

我先新建一个数据库用户,

可以复制权限,这个用户可以访问那几个数据库等,是否能删除,修改,添加,等等的一些权限

每个小时的链接数,每个小时的查询,最大的并发数,等等

我是选择这个用户只能控制一个数据库的使用,其他的数据库不让他看见

我们登录一下这个用户测试一下,这个时候你会发现是只有一个自己的数据库其他的数据库就看不见了,具体的还有很多的权限控制,这里就不一一介绍啦,

如何给MySql创建连接用户并授权

一般在为MySql创建用户时建议使用GRANT前台命令,当然如果对我们开发者而言,方法还有很多种,比如使用INSERT命令,甚至是直接修改mysql user数据表,但仍然建议按照MySQL规范去授权账户。因为它太容易忘记,特别整理方便参考。

1、登录MySQL

输入mysql -u root和密码即可登录到Mysql。

2、选择数据库

语句如下:use mysql;

3、在mysql的user表中增加连接用户

GRANT USAGE ON *.* TO 'username'@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION;

“username”替换为将要授权的用户名,比如clientusr;

“password”替换为clientusr设置的密码;

4、可访问数据表授权

创建好帐户之后,就开始给上面的common user进行数据表授权,步骤3中增加的连接用户默认权限都是“N”的,必须在db表中为该帐户授权,允许其访问专用数据库,当然超级用户就不说了。

使用下面语句:

GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP ON dbx.* TO 'username'@'localhost' IDENTIFIED BY 'password';

本语句中的权限根据实际需要确定:

"dbx"替换为授权访问的数据库名,如果只给某张表授权:dbx.tablename

"username"是步骤2授权用户名

"password"是步骤2授权用户的设置密码

这样就为该用户授予了对某数据表的SELECT, INSERT, UPDATE, DELETE, CAREATE, DROP权限。

5、生效授权,创建完毕

FLUSH PRIVILEGES;

1、不要直接使用INSERT语句添加user记录,使用INSERT可能出现:ERROR 1364 (HY000): Field 'ssl_cipher' doesn't have a default value错误。不过早期的MYSQL版本笔者倒没出现这个错误,因为天缘一直都是直接修改user表或直接使用INSERT语句完成,后来升级MYSQL到5.1的时候,发现可能会出现这个错误。

2、上文3和4,也可使用一句话GRANT ALL ON tbx.* TO 'username' IDENTIFIED BY 'password',这句话会自动创建username并为之授权。更多授权权限可参考MYSQL官方网站。在mysql的客户端工具或者mysql的数据库管理工具中创建用户并授权。

eclipse中可以安装数据库插件, 执行msyql的创建用户的sql语句。MYSQL用户权限管理

MySQL如何授权一个自己的创建的用户比如daitest创建新数据库的权利?求命令

mysql中可以给你一个用户授予如select,insert,update,delete等其中的一个或者多个权限,主要使用grant命令,用法格式为:

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 数据库开发人员,创建表、索引、视图、存储过程、函数。。。等权限。

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 操作 mysql 视图、查看视图源代码 权限。

grant create view on testdb.* to developer@’192.168.0.%’;

grant show view on testdb.* to developer@’192.168.0.%’;

grant 操作 mysql 存储过程、函数 权限。

grant create routine on testdb.* to developer@’192.168.0.%’; - now, can show procedure status

grant alter routine on testdb.* to developer@’192.168.0.%’; - now, you can drop a procedure

grant execute on testdb.* to developer@’192.168.0.%’;

三、grant 普通 dba 管理某个 mysql 数据库的权限。

grant all privileges on testdb to dba@’localhost’

其中,关键字 “privileges” 可以省略。

四、grant 高级 dba 管理 mysql 中所有数据库的权限。

grant all on *.* to dba@’localhost’

五、mysql grant 权限,分别可以作用在多个层次上。

1. grant 作用在整个 mysql 服务器上:

grant select on *.* to dba@localhost; - dba 可以查询 mysql 中所有数据库中的表。

grant all on *.* to dba@localhost; - dba 可以管理 mysql 中的所有数据库

2. grant 作用在单个数据库上:

grant select on testdb.* to dba@localhost; - dba 可以查询 testdb 中的表。

3. grant 作用在单个数据表上:

grant select, insert, update, delete on testdb.orders to dba@localhost;

4. grant 作用在表中的列上:

grant select(id, se, rank) on testdb.apache_log to dba@localhost;

5. grant 作用在存储过程、函数上:

grant execute on procedure testdb.pr_add to ’dba’@’localhost’

grant execute on function testdb.fn_add to ’dba’@’localhost’

六、查看 mysql 用户权限

查看当前用户(自己)权限:

show grants;

查看其他 mysql 用户权限:

show grants for dba@localhost;

七、撤销已经赋予给 mysql 用户权限的权限。

revoke 跟 grant 的语法差不多,只需要把关键字 “to” 换成 “from” 即可:

grant all on *.* to dba@localhost;

revoke all on *.* from dba@localhost;

八、mysql grant、revoke 用户权限注意事项

1. grant, revoke 用户权限后,该用户只有重新连接 mysql 数据库,权限才能生效。

2. 如果想让授权的用户,也可以将这些权限 grant 给其他用户,需要选项 “grant option“

grant select on testdb.* to dba@localhost with grant option;

这个特性一般用不到。实际中,数据库权限最好由 dba 来统一管理。

注意:修改完权限以后 一定要刷新服务,或者重启服务mysql数据库是mysql的参数数据库,test mysql是一个参考数据库。

数据库 主要是储存大量数据而发展出来,一开始由于数据量大所以无法高效的管理数据,所有发展出来了数据库这个管理软件。 由于数据库支持各种查询提高了对海量数据的管理效率所有数据一直沿用至今,特别是处理千万条数据时数据库就显示出了它自己的优势,数据有很多版本,也有很多公司开发, 最为著名的是 微软的access 个人数据库 还有 mysql 中小型数据。

oracle大型商业数据库 这个几个数据库是现在主流的应用最多的数据库。

mysql授权用户grant相关推荐

  1. mysql授权用户grant all_Mysql授权GRANT ALL PRIVILEGES

    例如,你想myuser使用mypassword从任何主机连接到mysql服务器的话. Sql代码 1. GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDEN ...

  2. mysql授权用户主机_MySQL用户授权(GRANT)

    当成功创建用户账户后,还不能执行任何操作,需要为该用户分配适当的访问权限.可以使用 SHOW GRANT FOR 语句来查询用户的权限. 注意:新创建的用户只有登录 MySQL 服务器的权限,没有任何 ...

  3. MySQL 授权用户 ; 存储过程的DEFINER; 命令分隔符DELIMITER

    最近项目中遇到有人使用DEFINER这样的关键字,找了半天没有怎么理解这个意思.以为是限制谁使用这个存储过程,后来测试发现并不是这样. 搜索网上发现很多说法都不正确.看到一篇博客,做了如下介绍,才有所 ...

  4. MySQL授权命令grant的使用方法

    本文实例,运行于 MySQL 5.0 及以上版本. MySQL 赋予用户权限命令的简单格式可概括为: grant 权限 on 数据库对象 to 用户 一.grant 普通数据用户,查询.插入.更新.删 ...

  5. MySQL授权用户及密码恢复设置

    MySQL密码恢复及设置 1.停止MySQL服务程序. 2.跳过授权表启动MySQL服务程序 skip-grant-tables(添加在配置文件) 3.重设root密码(更新user表记录) 4.以正 ...

  6. mysql grant用法_十六、MySQL授权命令grant的使用方法

    MySQL 赋予用户权限命令的简单格式可概括为: grant权限 on数据库对象 to用户 一.grant 普通数据用户,查询.插入.更新.删除 数据库中所有表数据的权利. grantselecton ...

  7. mysql 授权用户_MySQL创建用户与授权

    一. 创建用户 命令:CREATE USER 'username'@'host' IDENTIFIED BY 'password'; 说明: username:你将创建的用户名 host:指定该用户在 ...

  8. Mysql授权用户数据库GRANT ON 数据库名.* TO 用户名@localhost identified BY ‘密码‘,报错ERROR 1064 (42000)

    由于mysql版本不同,以前授权,使用的是: GRANT all privileges ON 数据库名.* TO 用户名@localhost identified BY '密码'; 但是会报错: ER ...

  9. MySql 授权用户权限如何设置?

    首先:去 mysql 库中查看 root 用户的权限 select * from user where user = 'root' and host='localhost'; 查看root权限为所有i ...

最新文章

  1. shanghai road map and the operational time for 12306 system
  2. 最大距离(二分 栈 思维)
  3. 程序员效率:如何合理的分解任务
  4. Apache会比路虎的应急效果更好
  5. 如何快速教妹子学Python?这个方法火了!
  6. 怎样才能称得上一个好运维
  7. 20191115英文每日一句
  8. Coolite中的ComboBox控件示例
  9. bat脚本集合adb shell命令实现快速截屏,远比手机助手去截屏方便
  10. java能写dnf辅助么,【Java8新特征】还没搞懂函数式接口?赶忙过来看看吧!_卡盟,dnf脚本...
  11. windows server 2019添加开机启动项
  12. CSDN、博文视点名家讲坛之夏昕、林信良谈Spring框架
  13. 2015中国国内元器件分销商10亿俱乐部20强榜单
  14. SQLite管理软件 - SQLiteSpy
  15. laravel 先判断在加查询条件,whereBetween,whereIn
  16. ESP32 nvs 加密
  17. PhD Debate-8 | 迈向常识知识的高级语义理解
  18. linux中的链路聚合之team方式
  19. 计算机硬盘里储存什么信息,你的电脑硬盘里都存着哪些小秘密?
  20. html:点击图片放大到全屏,再次点击缩回

热门文章

  1. 帮你深度探寻Spring循环依赖源码实现,Java开发经验的有效总结
  2. 在线文本转语音工具大全
  3. 程序员常常看到的英文
  4. 游戏王计算机兽,游戏王电脑堺卡牌——图腾鸟,神船号,充能战士,水晶翼,炎斩机...
  5. 爆破3389密码:目标主机Win2008(私有IP为192.168.1.167)开放3389端口,使用kali中的Hydra爆破密码。
  6. 22年Web3.0的三大前沿议题:NFT、元宇宙和DAO
  7. 阿里P7晒出工资单:狠补了这个,真香...
  8. 西北工业大学2020-2021学年大物(I)下期末试题选填解析
  9. 输入年份,然后打印出该年的万年历,以及标识出当天日期。类似于linux下的cal -y结果。
  10. 7-2 六度空间(30 分)