- 浏览: 1123373 次
- 性别:
- 来自: 火星郊区
博客专栏
-
OSGi
浏览量:0
文章分类
- 全部博客 (695)
- 项目管理 (48)
- OSGi (122)
- java (79)
- Vaadin (5)
- RAP (47)
- mysql (40)
- Maven (22)
- SVN (8)
- 孔雀鱼 (10)
- hibernate (9)
- spring (10)
- css (3)
- 年审 (6)
- ant (1)
- jdbc (3)
- FusionCharts (2)
- struts (4)
- 决策分析 (2)
- 生活 (10)
- 架构设计 (5)
- 破解 (2)
- 狼文化 (4)
- JVM (14)
- J2EE (1)
- 应用服务器 (1)
- 我的链接 (5)
- 数学 (2)
- 报表 (1)
- 百科 (6)
- Flex (7)
- log4j (2)
- PHP (1)
- 系统 (2)
- Web前端 (7)
- linux (6)
- Office (1)
- 安全管理 (5)
- python (2)
- dom4j (1)
- 工作流 (3)
- 养生保健 (4)
- Eclipse (8)
- 监控开发 (1)
- 设计 (3)
- CAS (1)
- ZK (41)
- BluePrint (3)
- 工具 (1)
- SWT (7)
- google (2)
- NIO (1)
- 企业文化 (2)
- Windoes (0)
- RCP (7)
- JavaScript (10)
- UML (1)
- 产品经理 (2)
- Velocity (10)
- C (1)
- 单元测试 (1)
- 设计模式 (2)
- 系统分析师 (2)
- 架构 (4)
- 面试 (2)
- 代码走查 (1)
- MongoDB (1)
- 企业流程优化 (1)
- 模式 (1)
- EJB (1)
- Jetty (1)
- Git (13)
- IPV6 (1)
- JQuery (8)
- SSH (1)
- mybatis (10)
- SiteMesh (2)
- JSTL (1)
- veloctiy (1)
- Spring MVC (1)
- struts2 (3)
- Servlet (1)
- 权限管理 (1)
- Java Mina (1)
- java 系统信息 (6)
- OSGi 基础 (3)
- html (1)
- spring--security (6)
- HTML5 (1)
- java爬虫搜索 (1)
- mvc (3)
最新评论
-
Tom.X:
http://osgia.com/
将web容器置于OSGi框架下进行web应用的开发 -
chenyuguxing:
你好, 为什么我的bundle export到felix工程中 ...
在Apache Felix中运行bundle -
string2020:
<niceManifest>tru ...
Bundle Plugin for Maven -
jsonmong:
OSGI,是未来的主流,目前已相当成熟。应用OSGI比较好的, ...
基于OSGi的声明式服务 -
zyhui98:
貌似是翻译过来的,有很少人在linux上做开发吧
如何成为“10倍效率”开发者
我的mysql安装在c:\mysql
一、更改密码
第一种方式:
1、更改之前root没有密码的情况
c:\mysql\bin>mysqladmin -u root password "your password"
2、更改之前root有密码的情况,假如为123456
c:\mysql\bin>mysqladmin -u root -p123456 password "your password"
注意:
更改的密码不能用单引号,可用双引号或不用引号
第二种方式:
1、c:\mysql\bin>mysql -uroot -p密码
以root身份登录
2、mysql>use mysql
选择数据库
3、mysql>update user set password=password('你的密码') where User='root';
4、mysqlflush privileges;
重新加载权限表
二、用户权限设置
1、以root(也可用其它有权限的用户)身份登录
2、下面创建一个test用户,密码为test,并且只能对picture数据库进行操作的命令
mysql>GRANT ALL ON picture.* TO test IDENTIFIED BY "test";
GRANT语句的语法看上去像这样:
GRANT privileges (columns) ON what TO user IDENTIFIED BY "password" WITH GRANT OPTION
要使用该语句,你需要填写下列部分:
privileges
授予用户的权限,下表列出可用于GRANT语句的权限指定符:
权限指定符 权限允许的操作
Alter
修改表和索引
Create
创建数据库和表
Delete
删除表中已有的记录
Drop
抛弃(删除)数据库和表
INDEX
创建或抛弃索引
Insert
向表中插入新行
REFERENCE
未用
Select
检索表中的记录
Update
修改现存表记录
FILE
读或写服务器上的文件
PROCESS
查看服务器中执行的线程信息或杀死线程
RELOAD
重载授权表或清空日志、主机缓存或表缓存。
SHUTDOWN
关闭服务器
ALL
所有;ALL PRIVILEGES同义词
USAGE
特殊的“无权限”权限
上表显示在第一组的权限指定符适用于数据库、表和列,第二组数管理权限。一般,这些被相对严格地授权,因为它们允许用户影响服务器的操作。第三组权限特殊,ALL意味着“所有权限”,UASGE意味着无权限,即创建用户,但不授予权限。
columns
权限运用的列,它是可选的,并且你只能设置列特定的权限。如果命令有多于一个列,应该用逗号分开它们。
what
权限运用的级别。权限可以是全局的(适用于所有数据库和所有表)、特定数据库(适用于一个数据库中的所有表)或特定表的。可以通过指定一个columns字句是权限是列特定的。
user
权限授予的用户,它由一个用户名和主机名组成。在MySQL中,你不仅指定谁能连接,还有从哪里连接。这允许你让两个同名用户从不同地方连接。
MySQL让你区分他们,并彼此独立地赋予权限。MySQL中的一个用户名就是你连接服务器时指定的用户名,该名字不必与你的Unix登录名或
Windows名联系起来。缺省地,如果你不明确指定一个名字,客户程序将使用你的登录名作为MySQL用户名。这只是一个约定。你可以在授权表中将该名
字改为nobody,然后以nobody连接执行需要超级用户权限的操作。
password
赋予用户的口令,它是可选的。如果你对新用户没有指定IDENTIFIED
BY子句,该用户不赋给口令(不安全)。对现有用户,任何你指定的口令将代替老口令。如果你不指定口令,老口令保持不变,当你用IDENTIFIED
BY时,口令字符串用改用口令的字面含义,GRANT将为你编码口令,不要你用SET PASSWORD 那样使用password()函数。
WITH GRANT OPTION
子句是可选的。如果你包含它,用户可以授予权限通过GRANT语句授权给其它用户。你可以用该子句给与其它用户授权的能力。
注意:
用户名、口令、数据库和表名在授权表记录中是大小写敏感的,主机名和列名不是。
一般地,你可以通过询问几个简单的问题来识别GRANT语句的种类:
谁能连接,从那儿连接?
用户应该有什么级别的权限,他们适用于什么?
用户应该允许管理权限吗?
下面就讨论一些例子。
1.1 谁能连接,从那儿连接?
你可以允许一个用户从特定的或一系列主机连接。有一个极端,如果你知道降职从一个主机连接,你可以将权限局限于单个主机:
GRANT ALL ON samp_db.* TO boris@localhost IDENTIFIED BY "ruby"
GRANT ALL ON samp_db.* TO fred@res.mars.com IDENTIFIED BY "quartz"
(samp_db.*意思是“samp_db数据库的所有表)另一个极端是,你可能有一个经常旅行并需要能从世界各地的主机连接的用户max。在这种情况下,你可以允许他无论从哪里连接:
GRANT ALL ON samp_db.* TO max@% IDENTIFIED BY "diamond"
“%”字符起通配符作用,与LIKE模式匹配的含义相同。在上述语句中,它意味着“任何主机”。所以max和max@%等价。这是建立用户最简单的方法,但也是最不安全的。
其中,你可以允许一个用户从一个受限的主机集合访问。例如,要允许mary从snake.net域的任何主机连接,用一个%.snake.net主机指定符:
GRANT ALL ON samp_db.* TO mary@.snake.net IDENTIFIED BY "quartz";
如果你喜欢,用户标识符的主机部分可以用IP地址而不是一个主机名来给定。你可以指定一个IP地址或一个包含模式字符的地址,而且,从MySQL 3.23,你还可以指定具有指出用于网络号的位数的网络掩码的IP号:
GRANT ALL ON samp_db.* TO boris@192.168.128.3 IDENTIFIED BY "ruby"
GRANT ALL ON samp_db.* TO fred@192.168.128.% IDENTIFIED BY "quartz"
GRANT ALL ON samp_db.* TO rex@192.168.128.0/17 IDENTIFIED BY "ruby"
第一个例子指出用户能从其连接的特定主机,第二个指定对于C类子网192.168.128的IP模式,而第三条语句中,192.168.128.0/17指定一个17位网络号并匹配具有192.168.128头17位的IP地址。
1.2 用户应该有什么级别的权限和它们应该适用于什么?
你可以授权不同级别的权限,全局权限是最强大的,因为它们适用于任何数据库。要使ethel成为可做任何事情的超级用户,包括能授权给其它用户,发出下列语句:
GRANT ALL ON *.* TO ethel@localhost IDENTIFIED BY "coffee" WITH GRANT OPTION
ON子句中的*.*意味着“所有数据库、所有表”。从安全考虑,我们指定ethel只能从本地连接。限制一个超级用户可以连接的主机通常是明智的,因为它限制了试图破解口令的主机。
有些权限(FILE、PROCESS、RELOAD和SHUTDOWN)是管理权限并且只能用"ON
*.*"全局权限指定符授权。如果你愿意,你可以授权这些权限,而不授权数据库权限。例如,下列语句设置一个flush用户,他只能发出flush语句。
这可能在你需要执行诸如清空日志等的管理脚本中会有用:
GRANT RELOAD ON *.* TO flushl@localhost IDENTIFIED BY "flushpass"
一般地,你想授权管理权限,吝啬点,因为拥有它们的用户可以影响你的服务器的操作。
数据库级权限适用于一个特定数据库中的所有表,它们可通过使用ON db_name.*子句授予:
GRANT ALL ON samp_db TO bill@racer.snake.net INDETIFIED BY "rock" GRANT Select ON samp_db TO ro_user@% INDETIFIED BY "rock"
第一条语句向bill授权samp_db数据库中所有表的权限,第二条创建一个严格限制访问的用户ro_user(只读用户),只能访问samp_db数据库中的所有表,但只有读取,即用户只能发出Select语句。
你可以列出一系列同时授予的各个权限。例如,如果你想让用户能读取并能修改现有数据库的内容,但不能创建新表或删除表,如下授予这些权限:
GRANT Select,Insert,Delete,Update ON samp_db TO bill@snake.net INDETIFIED BY "rock"
对于更精致的访问控制,你可以在各个表上授权,或甚至在表的每个列上。当你想向用户隐藏一个表的部分时,或你想让一个用户只能修改特定的列时,列特定权限非常有用。如:
GRANT Select ON samp_db.member TO bill@localhost INDETIFIED BY "rock"
GRANT Update (expiration) ON samp_db. member TO bill@localhost
第一条语句授予对整个member表的读权限并设置了一个口令,第二条语句增加了Update权限,当只对expiration列。没必要再指定口令,因为第一条语句已经指定了。
如果你想对多个列授予权限,指定一个用逗号分开的列表。例如,对assistant用户增加member表的地址字段的Update权限,使用如下语句,新权限将加到用户已有的权限中:
GRANT Update (street,city,state,zip) ON samp_db TO assistant@localhost
1.3 用户应该被允许管理权限吗?
你可以允许一个数据库的拥有者通过授予数据库上的所有拥有者权限来控制数据库的访问,在授权时,指定WITH GRANT
OPTION。例如:如果你想让alicia能从big.corp.com域的任何主机连接并具有sales数据库中所有表的管理员权限,你可以用如下
GRANT语句:
GRANT ALL ON sales.* TO alicia@%.big.corp.com INDETIFIED BY "applejuice" WITH GRANT OPTION
在效果上WITH GRANT
OPTION子句允许你把访问授权的权利授予另一个用户。要注意,拥有GRANT权限的两个用户可以彼此授权。如果你只给予了第一个用户Select权
限,而另一个用户有GRANT加上Select权限,那么第二个用户可以是第一个用户更“强大”。
2 撤权并删除用户
要取消一个用户的权限,使用REVOKE语句。REVOKE的语法非常类似于GRANT语句,除了TO用FROM取代并且没有INDETIFED BY和WITH GRANT OPTION子句:
REVOKE privileges (columns) ON what FROM user
user部分必须匹配原来GRANT语句的你想撤权的用户的user部分。privileges部分不需匹配,你可以用GRANT语句授权,然后用REVOKE语句只撤销部分权限。
REVOKE语句只删除权限,而不删除用户。即使你撤销了所有权限,在user表中的用户记录依然保留,这意味着用户仍然可以连接服务器。要完全删除一个用户,你必须用一条Delete语句明确从user表中删除用户记录:
%mysql -u root mysqlmysql>Delete FROM user ->Where User="user_name" and Host="host_name";mysql>FLUSH PRIVILEGES;
Delete语句删除用户记录,而FLUSH语句告诉服务器重载授权表。(当你使用GRANT和REVOKE语句时,表自动重载,而你直接修改授权表时不是。)
发表评论
-
MySQL中GBK与UTF-8的区别
2013-02-11 17:53 1521在MySQL中,如果数据库只需要支持一般中文,数据量很大,性 ... -
MySQL中Utf8_general_ci 和 utf8_unicode_ci的区别
2013-02-11 17:51 1209对中、英文来说没有实质的差别。 utf8_gener ... -
Illegal mix of collations (utf8_general_ci,COERCIBLE) and (latin1_swedish_ci,NUM
2012-11-09 11:13 7417SHOW VARIABLES LIKE 'coll%'; ... -
修改MySQL字符编码
2012-11-07 08:24 973修改编码其实是为了支持中文~ 1. 编译级别。由于缺乏 ... -
INNER LEFT RIGHT JOIN
2012-09-07 10:35 1103CREATE TABLE `a` ( `a1` VARC ... -
MySQL设置字符集为UTF8(Windows版)
2012-08-07 08:40 8845Windows版MySQL设置字符集全部为utf8的方式 ... -
【绿色MySQL设置技巧】
2012-07-07 21:31 11791. mysql 远程连接数据 ... -
查询表Y中数据不存在与表X中的数据使用Left JOIN
2012-06-26 12:39 1069看看我写的对不对,查询接着显示表Y中的数据8,4,p 表X有 ... -
mysql 性能优化方案
2012-04-28 17:18 974网上有不少mysql 性能优 ... -
设置自动清理mysql binlog日志和手动删除的方法
2012-04-28 17:17 1620MYSQL主从复制(replication)采用 RBR 模式 ... -
自增序列产生器的实现思路
2012-04-28 11:45 898l 需求 u 实现MySQL自带的字段值自动增 ... -
InnoDB引擎表的主键选型
2012-04-28 11:41 1390【导读】 MySQL采用开放可插入式存储引擎架构,提供 ... -
数据库设计范式
2012-04-14 11:05 973数据库设计三范式 第一范式(1NF):数据库表中的字段都是单一 ... -
11 条重要的数据库设计规则
2012-04-14 11:03 969在你开始阅读这篇文章 ... -
11 步教你选择最稳定的 MySQL 版本
2012-04-01 19:59 1056MySQL开源数据库有多个重要分支,目前拥有的分支分别为:My ... -
连接MySQL数据库生成JavaBean
2012-03-28 08:28 9353做网站时,感觉数据库的设计比较重要,当花了很多时间设计好数据库 ... -
MySQL 分区
2012-03-06 10:31 1156MYSQL 存储过程,定义告 ... -
POWERDESIGNER 教程
2012-02-26 12:03 1444一)概念数据模型 目标 : 本文主要介绍Powe ... -
powerdesigner 使用的十五个问题
2012-02-24 14:22 1298PowerDesigner的主要作用一般还是数据库建模,并生成 ... -
数据库设计原则
2012-02-21 07:41 1006原始单据与实体之间的关系 可以是一对一、一对多、多对多的关 ...
相关推荐
对mysql数据库的总结,希望对大家有帮助!
Mysql用户密码设置修改和权限分配.
MySQL逻辑架构-存储引擎-用户权限密码详解 • mysql系统架构 • 常见引擎 • msyql 数据库用户和权限管理 • 修改帐户密码 • 重置root密码
Ubuntu18.0.4安装MySQL,修改ROOT用户密码并允许远程访问,添加用户并配置数据库的访问权限
•一 : mysql 用户管理与恢复root 密码[1] •1 新建用户[2] •2 查看用户信息与显示登录用户[3] •3 重命名用户[4] •4 删除用户[5] •5 修改密码[6] •6 恢复root 密码[7] •6.1 修改配置文件,设置跳过密码项[8]...
权限验证时,根据用户的角色和权限信息,系统评估用户是否具备访问该资源的权利。角色管理、权限管理和资源管理等功能,通过对应的模块实现。 总的来说,基于SpringBoot+Vue的通用权限控制系统设计与实现,可以提供...
上一篇文章讲解了重置 MySQL 的密码,有同学反馈无法程连接到数据库,这是因为 MySQL 安装完成后只支持 localhost 访问,我们必须设置一下才可以远程访问,另外还有一些 MySQL 8.0 连接时的一些问题,本文也会一并...
用户权限:和MySQL所有的数据库相关。 ;给某用户授予权限可以使用GRANT语句。使用SHOW GRANTS语句可以查看当前账户拥有什么权限。 GRANT语法格式: GRANT 权限1[(列名列表1)] [,权限2 [(列名列表2)]] ... ON [目标] ...
MySQL管理员应该知道怎样通过指定哪些用户可连接到服务器、从哪里进行...本文讨论了如何设置MySQL用户的账号和授权,还将介绍如何取消权限以及从授权表中删除全部用户,并且将考虑一个困扰许多新的MySQL管理员的难题。
密码不记得,当用户只能查看,而其他权限都没有的时候,mysql超级用户权限解决思路,还有密码重置也可以,MySQL恢复root用户超级权限方法
研究MYSQL数据库的加解密方式,在...试想一旦获取了网站一定的权限后,如果能够获取MYSQL中保存用户数据,通过解密后,即可通过正常途径来访问数据库;一方面可以直接操作数据库中的数据,另一方面可以用来提升权限。
6、 授权给root用户可以从任何主机使用密码为’hkgt123’登录MYSQL数据库: GRANT ALL PRIVILEGES ON *.* TO root@’%’ IDENTIFIED BY ‘hkgt123’ WITH GRANT OPTION; 7、 提交:commit; 8、 刷新权限:flush ...
当您忘记了 Windows 上 MySQL 8.0 的密码时,... 在 MySQL 提示符下,执行以下命令来重设 root 用户的密码: ALTER USER 'root'@'localhost' IDENTIFIED BY 'YourNewPassword'; 5. **刷新权限**: FLUSH PRIVILEGES;
通过文档,您可以学习如何在MySQL数据库中授予和撤销用户的权限,以实现对数据库资源的安全访问控制。 示例代码演示了常用的权限控制操作: - 使用`CREATE USER`语句创建新用户,指定用户名、主机名和密码; - ...
MySQL的安全系统很灵活,它允许以多种不同的方式创建用户和设置用户权限。 ;可以使用CREATE USER语法添加一个或多个用户,并设置相应的密码。 语法格式: CREATE USER 用户名 [IDENTIFIED BY [PASSWORD] '密码'] ...
root密码管理设置root用户的密码mysqladmin -uroot password 'password'。 修改root用户的密码mysqladmin -uroot -p password 'password'。 数据库,表管理进入mysqlmysql -h hostname -uroot -p。 创建数据库mysql>...
部署环境: 安装版本red hat Cent 7.0 MYSQL 版本 8.0.2.0 成功部署完毕后出现故障情况: ...后进去刷新权限表,重启服务,不用密码的root进去,在改root密码后,重新刷新权限表。方法试了很多个都不
通过文档,您可以学习如何在MySQL数据库中创建、修改和删除用户,并授予或撤销其相应的权限。 示例代码演示了常用的用户管理操作: - 使用`CREATE USER`语句创建新用户,指定用户名、主机名和密码; - 使用`ALTER ...
1. 游览器打开 http://localhost/phpmyadmin,进入后点击'用户账户' 2. 点击用户为root,主机为localhost的修改权限,
用户权限管理主要有以下作用: 1. 可以限制用户访问哪些库、哪些表 2. 可以限制用户对哪些表执行SELECT、CREATE、DELETE、DELETE、ALTER等操作 3. 可以限制用户登录的IP或域名 4. 可以限制用户自己的权限是否...