Mysql 权限检查

权限检查

权限存储在mysql库的user, db, tables_priv, columns_priv, and procs_priv这几个系统表中,待MySQL实例启动后就加载到内存中。

用户信息存储在mysql.user表。安装时默认只有超级用户root(如果不创建匿名用户)。

mysql> desc mysql.user;

+------------------------+-----------------------------------+------+-----+----------

| Field                  | Type                              | Null | Key | Default

+------------------------+-----------------------------------+------+-----+----------

| Host                   | char(60)                          | NO   | PRI |

| User                   | char(32)                          | NO   | PRI |

host+user复合主键。允许访问的客户端+用户名称。所以同名称是允许的。

Host: localhost      //表示只能本机访问,远程无法访问。

User: root

创建用户

方法1,直接root创建。不推荐。

方法2,专门创建指令,需要赋予权限。

create user ‘username‘@‘%‘ identified with mysql_native_password by ‘password‘;  //%表示允许任何客户端访问。

create user username;  //允许任何客户端无密码访问。

赋予权限

grant all privileges on *.* to ‘username‘@‘%‘;  //此人成神。权限详情百度。

修改用户密码

set password for ‘username‘@‘%‘ = password(‘password‘);

update mysql.user set password = password(‘password‘) where user = ‘username‘ and host = ‘host‘;

删除用户

drop user ‘username‘@‘host‘;

忘记root密码

C:\Users\Windows7-64>net stop mysql

MySQL 服务正在停止.

MySQL 服务已成功停止。

C:\Users\Windows7-64>cd C:\Program Files (x86)\MySQL\MySQL Server 5.0\bin

C:\Program Files (x86)\MySQL\MySQL Server 5.0\bin>mysqld.exe --skip-grant-tables   //跳过验证登陆,满权限,非常危险,你懂的。

C:\Program Files (x86)\MySQL\MySQL Server 5.0\bin>mysql

mysql> update mysql.user set password=password(‘root‘) where user=‘root‘ and host=‘localhost‘;

Query OK, 1 row affected (0.03 sec)

Rows matched: 1  Changed: 1  Warnings: 0

杀进程mysqld.exe

C:\Program Files (x86)\MySQL\MySQL Server 5.0\bin>net start mysql

MySQL 服务正在启动 .

MySQL 服务已经启动成功。

C:\Program Files (x86)\MySQL\MySQL Server 5.0\bin>mysql -uroot -proot

mysql>

原文地址:https://www.cnblogs.com/dailycode/p/9434356.html

时间: 2024-10-18 08:27:49

Mysql 权限检查的相关文章

mysql 权限控制

1.mysql的权限是,从某处来的用户对某对象的权限. 2.mysql的权限采用白名单策略,指定用户能做什么,没有指定的都不能做. 3.权限校验分成两个步骤: a.能不能连接,检查从哪里来,用户名和密码,常见错误 ERROR 1045 (28000): Access denied for user ... b.能不能执行操作,粒度从粗到细,分别为:mysql.user,  mysql.db,  msql.tables_priv,  mysql.columns_priv,  mysql.proc_

跳过权限检查,强制修改mysql密码

windows: 1,停止MYSQL服务,CMD打开DOS窗口,输入 net stop mysql 2,在CMD命令行窗口,进入MYSQL安装目录 比如E:\Program Files\MySQL\MySQL Server 5.0\bin 示范命令: 输入 e:回车, 输入cd "E:\Program Files\MySQL\MySQL Server 5.0\bin" 注意双引号也要输入,这样就可以进入Mysql安装目录了. 3,进入mysql安全模式,即当mysql起来后,不用输入密

MySQL权限说明

--MySQL权限说明 ----------------------2014/06/09 一.权限表 mysql数据库中的3个权限表:user .db. host 权限表的存取过程是: 1)先从user表中的host. user. password这3个字段中判断连接的IP.用户名.密码是否存在表中,存在则通过身份验证: 2)通过权限验证,进行权限分配时,按照user db tables_priv columns_priv的顺序进行分配.即先检查全局权限表user,如果user中对应的权限为Y,

linux系统mysql连接检查脚本

为了便于检查ECS服务器内部搭建的mysql或者RDS的mysql数据库,编写了一个mysql测试脚本,对于不熟悉命令行操作的朋友出现问题时可以检测一下. 脚本下载地址: http://jinxiang.oss-cn-hangzhou.aliyuncs.com/mysqltest_gbk.sh 脚本执行方法: wget http://jinxiang.oss-cn-hangzhou.aliyuncs.com/mysqltest_gbk.sh chmod 755 mysqltest_gbk.sh

mysql 权限控制详解

概述 mysql权限控制在不同的上下文和不同的操作水平上都可以进行控制,他们包括如下几个 ** 管理权限可以允许用户管理mysql server的操作.这些权限控制是全局的,不是针对某个特定的数据库的 ** 数据库权限对应到一个数据库和里面的对象.这些权限被用来控制特定的数据库或者全局的,他们能够应用到所有的数据库 ** 数据库对象的权限对应到数据库表,索引,视图,和存储过程,可以对数据库内部的某个对象进行授权控制. 权限的存储位置 ** 账号权限信息被存储在mysql数据库的user,db,t

解析MySQL权限表

MySQL权限表都有哪些,分别控制MySQL哪些权限,有哪些注意事项? 1.user:记录账号.密码.全局性权限信息等,里面的权限是全局级的 1)*_priv:适用MySQL服务器全局性的权限,假设某个账号拥有Delete_priv的全局性权限,则表示它可以对任何表进行删除数据的操作,这非常危险,所有一般只有超级用户root有这样的权限,其它普通用户没有. 2)max_*:资源管理列,用于规定账号的资源使用上限,其中: max_questions:每小时发出的语句数上限 max_updates:

MYSQL 权限管控

MYsql权限管控系统包括2个方面: 1.检查用户是否可以连接 2.检查用户是否具有所执行动作的权限 MYSQL 权限层级: 1.全局层 2.数据库层 3.表层级 4.列层级 5.子程序层级 授权命令: GRANT ALL PRIVILEGES ON 层级 TO 用户名@主机 IDENTIFIED BY 密码:(被授权用户的密码) EX:GRANT ALL PRIVILEGES ON *.* TO 'owen_test'@'%' IDENTIFIED BY '100'; (*.* 意为所有数据库

说说MySQL权限

前言 今天继续MySQL系列文章,讲讲MySQL权限相关的内容.我们都知道,在写系统的时候,都会有权限相关的服务,以达到权限控制的目的.以最简单的权限菜单为例: 管理员拥有最大权限,可以查看系统下所有菜单.操作员只拥有部分菜单权限.同样的,在MySQL数据库中也有相应的权限管理.例如:数据库连接权限,新增,修改,查询权限等等.下面我们就一一揭晓MySQL权限的真实面貌. 授权方式 在讲 MySQL 权限之前,我们不得不先熟悉下MySQL中常见的两种授权方式. 姑且称为:授权法 和 改表法 吧.

MySQL权限及删除MySQL的匿名账户

MySQL权限系统的工作原理 MySQL权限系统通过下面两个阶段进行认证: (1)对连接的用户进行身份认证,合法的用户通过认证,不合法的用户拒绝连接: (2)对通过认证的合法用户赋予相应的权限,用户可以在这些权限范围内对数据库做相应的操作. 对于身份的认证,MySQL是通过IP地址和用户名联合进行确认的,例如MySQL安装后默认创建的用户[email protected]表示用户root只能从本地(localhost)进行连接才可以通过认证,此用户从其他任何主机对数据库进行的连接都将被拒绝.也就