先设置该用户只有show database权限
grant select,insert,update,delete on redmine1.* to jira@"%" identified by "jira";
授权命令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'进行赋值
原文地址:http://www.cnblogs.com/jifeng/archive/2011/03/06/1972183.html
相关推荐
3. 权限管理:可以对用户授予不同的权限,例如授予访问某个数据库的权限。 常用的MySQL命令: 1. 连接MySQL数据库:`$mysql -u root -p` 2. 创建用户:`CREATE USER 'demo_c'@'localhost' IDENTIFIED BY '123456';...
MySQL数据库安全策略研究 MySQL数据库安全策略是保护数据完整性和私密性的关键。以下是 MySQL 安全策略的研究总结: 账户权限安全 账户权限安全是 MySQL 安全的基础。 MySQL 中的账号可以分为两类:系统账号和...
为了使Navicat能够远程连接到阿里云服务器上的MySQL数据库,我们需要先在服务器端对MySQL的用户权限进行相应的设置。 1. **登录服务器**:通过SSH登录到阿里云服务器。 2. **启动MySQL命令行工具**:输入`mysql -u ...
2. **数据库级权限**:例如对某个数据库的读写权限。 3. **表级权限**:比如对特定表的操作权限(如增删改查)。 4. **列级权限**:更细致地控制到某一列的访问权限。 #### 二、权限配置语法解析 在给定的部分内容...
导读:MySQL数据库管理常用命令。 安装利用RPM包安装Mysql,设置TCP 3306端口的iptables。 root密码管理设置root用户的密码mysqladmin -uroot password 'password'。 修改root用户的密码mysqladmin -uroot -p ...
例如,我们可以创建一个名为 "cncmsuser" 的数据库用户,并指定该用户只允许本机访问。我们可以使用自动生成的随机密码,并将其复制到密码框中。 知识点3: 设置数据库访问权限 在设置数据库访问权限时,我们需要...
在对某个数据库进行操作之前,必须先选中该数据库。在 MySql 安装过程中,注意修改字符集为 gb2312 或 gbk, 以支持中文信息输入。 实验 2 创建数据库和表 * 实验目的:了解 MySQL 数据库中的存储引擎分类、了解表...
在安全性方面,MySQL提供了用户权限管理,确保只有授权的用户才能访问特定的数据库和表。备份与恢复功能则保证了数据的安全,即使发生意外,也能恢复到某个已知的良好状态。 总之,MySQL数据库基础知识是一个广泛的...
MySQL数据库操作涵盖了数据库和表的创建、数据的增删改查、数据库用户管理以及查询优化等多个方面。合理利用SQL语句和索引能够高效地管理和维护数据库,提高数据访问速度和系统性能。此外,在进行数据库操作时还需...
"mysql数据库 省市区"这一主题涉及到如何在MySQL中有效地存储和操作中国省级、市级和区级行政区域的数据。 首先,我们需要创建一个或多个表来存储这些地理信息。一个常见的做法是创建一个`province`(省份)表,一...
### MySQL搜索引擎解析 #### MySQL支持的主要搜索引擎及其特点 1. **MyISAM**: - 特性:MyISAM引擎的表具有平台独立性,易于跨操作系统迁移。...通过这些优化措施,可以显著提升MySQL数据库的性能和稳定性。
### MySQL数据库面试题知识点详解 #### 一、数据库设计及SQL基础 1. **数据库规范化**:数据库规范化是一种设计过程,旨在减少数据冗余并消除插入、更新或删除异常的可能性。规范化通过一系列规则来实现,这些规则...
4. **MySQL数据库**:MySQL是一种常用的开源关系型数据库管理系统,它存储了用户的搬家用车信息。在SSH2应用中,需要配置数据库连接信息,如URL、用户名和密码,以便Hibernate能够连接并操作MySQL数据库。 5. **...
授权是 MySQL 中的一个重要概念,用于控制用户对数据库的访问权限。授权格式为: ```sql grant 权限 on 数据库.* to 用户名@登录主机 identified by "密码"; ``` 例如,为用户 "test" 授予 testDB 数据库的所有权限...
MySQL数据库的权限管理系统是确保数据库安全的关键组成部分,它允许管理员精细控制用户对数据库资源的访问。权限管理主要包括用户连接验证和请求执行验证两个阶段。在第一阶段,服务器根据用户账户的主机限制判断...
【MySQL 数据库读写分离与负载均衡】 MySQL 数据库的读写分离是一种常见的优化策略,旨在提高系统的可扩展性和性能。在大型应用中,数据库往往成为性能瓶颈,尤其是在高并发的场景下,读写操作混杂可能导致服务器...