MySQL

MySQL 事务的语法和流程

一、MySQL 存储引擎对事务的支持InnoDB:默认且最常用的存储引擎,支持事务。其事务实现主要依赖于 UNDO 日志和 REDO 日志。MyISAM:不支持事务。强调高速插入和检索,但不提供原子性、一致性等事务保障。BDB:支持事务,但现在已很少使用。二、核心日志机制1. UNDO Log (回滚日志)作用:用于事务回滚和多版本并发控制 (MVCC)。它记录

MySQL 字符集与校对规则

一、核心概念1. 字符 (Character):文字和符号的统称,如 'A', '1', '中', '$'。2. 字符集 (Character Set):一个系统支持的所有抽象字符的集合。它定义了每个字符对应的编号(即码位)。 常见字符集:

MySQL `user` 权限表

一、用户列 (User Columns) - “能否登录”这是用户登录时的身份验证凭据。只有这三项完全匹配,用户才能连接至 MySQL 服务器。字段名类型说明Hostchar(60)允许用户连接的主机名或 IP 地址。%表示任何主机。Userchar(32)用户名。authentication_stringtext加密后的密码(自 MySQL 5.7 起取代Password

MySQL 其它权限表

MySQL 采用一种层次化的权限管理系统,除了最高级别的 `user` 表,还有更细粒度的权限控制表。当检查一个用户是否能执行某项操作时,MySQL 会按照一个特定的顺序进行权限检查。为了更直观地理解这个过程,我们可以参考以下权限检查流程图:mermaidflowchart TDA[用户发起操作请求] --> B{权限检查}B -- 全局权限 -->

MySQL 创建用户的三种方法

为了数据库安全,应避免频繁使用 root 用户,而是为不同应用和人员创建具有适当权限的专属用户。方法对比速览特性 `CREATE USER` (推荐) `GRANT` (推荐) `INSERT INTO` (不推荐) 易用性 高,语法简单直观 高,创建和授权一步到位 低,需手动处理字段和权限刷新 安全性

MySQL修改用户

MySQL `RENAME USER` 语句详解`RENAME USER` 语句用于安全地修改一个已有 MySQL 用户的账户名或主机名(或两者同时修改)。语法RENAMEUSER'old_user'@'old_host'TO'new_user'@'new_host';&nb

MySQL 删除用户方法总结

方法一:使用 `DROP USER` 语句(推荐)这是官方推荐的标准方法,因为它不仅删除用户,还会自动清理该用户在所有权限表中的权限记录,操作更安全、更彻底。语法:DROPUSER[IFEXISTS]'username'@'hostname';参数说明: `'username

MySQL 查看用户权限

MySQL 提供了两种主要方法来查看用户权限,适用于不同场景。方法一:使用 `SHOW GRANTS` 语句(推荐首选)这是最常用、最直观的方法,直接显示授予用户的权限语句。语法:SHOWGRANTS[FOR'username'@'hostname'];使用场景:1. 查看当前用户权限:不指定 `FOR`

MySQL GRANT 语句

`GRANT` 语句用于为用户授予特定权限,是 MySQL 权限管理的核心命令。基本语法GRANTpriv_type[(column_list)]ON[object_type]privilege_levelTO&nb