`
wxq594808632
  • 浏览: 262414 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

mysql数据库授权

阅读更多

授权命令GRANT 语句的语法如下:
GRANT privileges (columns)
ON what
TO user IDENTIFIEDBY "password"
WITH GRANT OPTION
对用户授权
mysql>grant rights on database.* to user@host identified by "pass";
例1:
增加一个用户test1密码为abc,让他可以在任何主机上登录,并对所有数据库有查询、插入、修改、删除的权限。
grant select,insert,update,delete on *.* to test1@"%" Identified by "abc";
ON 子句中*.* 说明符的意思是“所有数据库,所有的表”
例2:
增加一个用户test2密码为abc, 让他只可以在localhost上登录,并可以对数据库mydb进行查询、插入、修改、删除的操作。
grant select,insert,update,delete on mydb.* to test2@localhost identified by "abc";
例子3
增加一个用户custom,他能从主机localhost、server.domain和whitehouse.gov连接。他只想要从 localhost存取bankaccount数据库,从whitehouse.gov存取expenses数据库和从所有3台主机存取customer 数据库。他想要从所有3台主机上使用口令stupid。

为了使用GRANT语句设置个用户的权限,运行这些命令:
shell> mysql --user=root mysql
mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP
ON bankaccount.* TO custom@localhost IDENTIFIED BY 'stupid';
mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP
ON expenses.* TO custom@whitehouse.gov IDENTIFIED BY 'stupid';
mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP
ON customer.* TO custom@'%' IDENTIFIED BY 'stupid';
==============================================
权限信息用user、db、host、tables_priv和columns_priv表被存储在mysql数据库中(即在名为mysql的数据库中)。
权限 列 Context
select Select_priv 表
insert Insert_priv 表
update Update_priv 表
delete Delete_priv 表
index Index_priv 表
alter Alter_priv 表
create Create_priv 数据库、表或索引
drop Drop_priv 数据库或表
grant Grant_priv 数据库或表
references References_priv 数据库或表
reload Reload_priv 服务器管理
shutdown Shutdown_priv 服务器管理
process Process_priv 服务器管理
file File_priv 在服务器上的文件存取

 

1.select、insert、update和delete权限 允许你在一个数据库现有的表上实施操作,是基本权限
2.alter权限允许你使用ALTER TABLE
3.create和drop权限允许你创建新的数据库和表,或抛弃(删除)现存的数据库和表 如果你将mysql数据库的drop权限授予一个用户,该用户能抛弃存储了MySQL存取权限的数据库!
4.grant权限允许你把你自己拥有的那些权限授给其他的用户。
你不能明显地指定一个给定用户应该被拒绝存取。即,你不能明显地匹配一个用户并且然后拒绝连接。你不能指定一个用户有权创建立或抛弃一个数据库中的表,也不能创建或抛弃数据库本身。 可以同时列出许多被授予的单个权限。
例如,如果想让用户能读取和修改已有表的内容,但又不允许创建新表或删除表,可按如下授权:
GRANT SELECT,INSERT,DELETE,UPDATE ON samp_db.* TO 'user'@'%' IDENTIFIEDBY "pass"

 

以上是我从别的地方拷贝过来后稍作修改的文字,下面自己写一些需要注意的东西。

为什么使用了Grant all on db.* to user identified by "pass"后,在主机上访问数据库还会出现ERROR 1045 (28000): Access denied for user 'user'@'localhost' (using password: YES) 的错误提示?

解答方法如下:运行命令 Grant all on db.* to 'user'@'localhost' identified by "pass"

原因是:当不加@选项时,效果与加@'%'是一样的,'%'从名义上包括任何主机,(%必须加上引号,不然与@放在一起可能不会被辨认出。)不过有些时候(有些版本)'%'不包括localhost,要单独对@'localhost'进行赋值

分享到:
评论

相关推荐

    mysql数据库授权.docx

    MySQL 数据库授权是确保数据安全性和访问控制的重要环节。通过授权,管理员可以精确地定义用户对数据库及其内容的访问级别,从而防止未授权的访问和潜在的数据泄露。以下是对 MySQL 数据库授权的详细说明: 1. **...

    mysql数据库授权.pdf

    mysql数据库授权.pdf

    mysql数据库授权.md

    mysql学习

    MySQL数据库原理及应用(第2版)(微课版)-教学用数据库(Mysql数据库备份文件).zip

    MySQL数据库是世界上最受欢迎的开源关系型数据库管理系统之一,其设计理念在于提供快速、可靠的数据存储解决方案。在《MySQL数据库原理及应用(第2版)(微课版)》中,我们通常会深入探讨数据库的基本概念、设计...

    数据库MySQL入门.pdf

    MySQL数据库产品内容丰富,功能强大。MySQL支持大型数据库,支持5000万条记录的数据仓库,32位系统表文件最大可支持4GB,64位系统支持最大的表文件为8TB。 MySQL用户管理: 1. 新建用户:可以使用命令行方式或图形...

    mysql数据库基础.pdf

    MySQL数据库是世界上最流行的开源关系型数据库管理系统之一,其工作流程涉及多个步骤,这些步骤在处理SQL语句时至关重要。以下是对这些步骤的详细说明: 首先,客户端通过连接器与MySQL服务器建立连接。连接器负责...

    mysql数据库cmd命令大全

    本文档总结了 MySQL 数据库 cmd 命令的使用方法和实践经验,涵盖了连接数据库、授权、数据库操作、表操作、字段类型、修改密码、备份数据库、数据库导入和导出、表索引等方面的知识点。 连接数据库 1. 本地连接 ...

    Linux操作系统中如何安装MySQL数据库

    "Linux操作系统中如何安装MySQL数据库" 在 Linux 操作系统中,安装 MySQL 数据库是非常重要的一步,对于大多数的 web 应用程序来说,都是必不可少的。本文将详细介绍如何在 Linux 操作系统中安装 MySQL 数据库。 ...

    MySQL数据库练习题(50道).pdf

    MySQL数据库练习题50道.pdf 本资源为MySQL数据库练习题,共50道题,涵盖数据库设计、数据表创建、数据插入、查询等多方面的知识点。下面是对该资源的详细知识点总结: 一、数据库设计 * 数据库设计是指根据具体的...

    征途单机版MYSQL数据库

    【标题】"征途单机版MYSQL数据库"指的是在单机环境下运行的网络游戏"征途"所使用的MySQL数据库。MySQL是一种流行的开源关系型数据库管理系统,它以其高效、稳定和易于管理的特点,在各种规模的项目中都有广泛应用,...

    mysql数据库备份工具

    MySQL数据库是世界上最受欢迎的开源关系型数据库管理系统之一,它提供了高效、可靠的数据存储和管理功能。在日常运维中,数据库备份是确保数据安全的重要环节,以防数据丢失或系统故障。"mysql数据库备份工具"就是...

    android通过JDBC直接访问Mysql数据库.pdf

    4. **MySQL数据库授权**: 在服务器端,你需要确保Android应用有权限访问MySQL数据库。使用`GRANT`语句为特定用户授予所需的权限。在示例中,`root`用户被授予了所有权限,可以从任何主机(%)访问,密码是'123456'...

    如何在同一个局域网中访问别人的mysql数据库.txt

    为了让其他局域网内的计算机能够访问到这台服务器上的MySQL数据库,我们需要授权这个`root`用户可以远程访问。执行以下命令: ```sql USE mysql; GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY "root"; ...

    excel表转换为mysql数据库

    Excel表格和MySQL数据库是两种广泛使用的数据管理工具。Excel适合小规模的数据管理和分析,而MySQL则适用于处理大量数据和复杂的数据库操作。将Excel表格转换为MySQL数据库是一项常见的任务,尤其在数据分析、报告...

    自动定时备份远程服务器的mysql数据库并存储在本地

    对于远程服务器上的MySQL数据库,定期进行自动备份是防止数据丢失的有效手段。本篇文章将详细介绍如何实现这一目标,将远程服务器的MySQL数据库自动定时备份并存储在本地。 首先,我们需要了解MySQL的数据备份类型...

    著名的mySQL数据库访问控件

    MySQL数据库访问控件是开发人员在使用Delphi或C++Builder等IDE时,与MySQL数据库进行交互的重要组件。这些控件使得程序员无需依赖BDE(Borland Database Engine)或ODBC(Open Database Connectivity),就能方便地...

    图书馆管理系统(Java编写,MySQl数据库)数据库_java系统_javamysql_代码及MySQL数据库_图书管理系统_

    图书管理系统是一个典型的业务应用系统,它通过集成Java编程语言和MySQL数据库,实现对图书信息的高效管理。本系统主要关注以下几个核心知识点: 1. **Java编程基础**:Java是面向对象的编程语言,以其跨平台性和...

    MySQL数据库毕业论文.doc

    根据提供的文档信息,本文将对MySQL数据库的关键特性及其在Jsp/Servlet网上拍卖系统中的应用进行深入探讨。MySQL作为一款广泛使用的开源关系型数据库管理系统,因其高性能、稳定性以及丰富的功能特性而受到众多...

    图书管理系统MySQL数据库

    下面我们将深入探讨与"图书管理系统MySQL数据库"相关的知识点。 1. **MySQL数据库基础**: MySQL是一种ACID(原子性、一致性、隔离性、持久性)符合的数据库系统,提供SQL(结构化查询语言)支持,用于数据查询、...

Global site tag (gtag.js) - Google Analytics