首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在grant语句之后要跟着flush privileges吗?

MySQL 里面,grant 语句是用来给用户赋权的。不知道你有没有见过一些操作文档里面提到,grant 之后要马上跟着执行一个 flush privileges 命令,才能使赋权语句生效。...我最开始使用 MySQL 的时候,就是照着一个操作文档的说明按照这个顺序操作的。 那么,grant 之后真的需要执行 flush privileges 吗?...如果没有执行这个 flush 命令的话,赋权语句真的不能生效吗? 接下来,我就先和你介绍一下 grant 语句flush privileges 语句分别做了什么事情,然后再一起来分析这个问题。...看到这里,你一定会问,看来 grant 语句都是即时生效的,那这么看应该就不需要执行 flush privileges 语句了呀。 答案也确实是这样的。...总结 grant 语句会同时修改数据表和内存,判断权限的时候使用的是内存数据。因此,规范地使用 grant 和 revoke 语句,是不需要随后加上 flush privileges 语句的。

1.3K20

MySQL `innodb_flush_log_at_trx_commit` 参数

MySQL innodb_flush_log_at_trx_commit 参数 innodb_flush_log_at_trx_commit 是一个重要的 MySQL 系统变量,它控制着 InnoDB...存储引擎在事务提交时如何刷新日志到磁盘。...参数值及其含义 innodb_flush_log_at_trx_commit 可以设置为以下三个值: 0:日志每秒刷新到磁盘一次,事务提交时不刷新。...这个设置提供了最好的性能,但是如果 MySQL 发生崩溃,你可能会丢失最近一秒内的事务数据。 1(默认值):每次事务提交时,日志都会被刷新到磁盘。...如何设置 你可以在 MySQL 的配置文件 my.cnf 或 my.ini 中设置这个参数,例如: [mysqld] innodb_flush_log_at_trx_commit=1 或者,你可以在运行时动态地设置它

29110
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Mysql在哪些场景会flush脏页?

    当innoDB的redo log满了后,这时候会占用内存优先刷新redo日志,执行flush吧数据刷到磁盘,腾出redo log空间。 系统内存不足时候,需要淘汰脏页给新的页使用。...当mysql系统认为空闲的时候,会刷新脏页到磁盘。 当mysql服务器正常关闭,会刷新脏页到磁盘。 脏页和干净页都是在内存里的,当磁盘上的数据与buffer pool里的数据不一致,这时候就是脏页。...Buffer pool的作用是干嘛的,是为了减少磁盘的I/O,innoDB不可能每次存入一条数据都对磁盘访问一次,因为磁盘的i/o相对于内存是非常慢的,所以在mysql服务器启动的时候,会申请个内存作用于...链表,修改数据的脏页统一放在flush链表。...而每次不可能吧所有页都刷新到磁盘,为了减少磁盘刷新的频率,所以选一部分淘汰,这时候lru链表就出现了,这里面有热数据和冷数据,比例是3:7,因为innoDB查询会自动预读,来提高查询效率,这时候为了解决预读问题

    58510

    MySQL 系列】MySQL 语句篇_DCL 语句

    如果某用户在连接期间发生了权限变更(自己或者其他用户修改了权限),那么该用户执行下一条语句时,该权限变更不一定会立即生效。如果未生效,则需要执行 FLUSH PRIVILEGES; 语句。...=’username’; FLUSH PRIVILEGES; # 执行完 DELETE 命令后要使用 FLUSH 命令来使用户生效 举例: DELETE FROM mysql.user...Reload:该权限允许用户使用 FLUSH 语句。...其中,reload 子命令会通知服务器将权限表重新加载到内存中;flush-privileges 子命令的作用与 reload 相同;refresh子命令会通知服务器关闭并重新打开日志文件且刷新所有表。...其他 flush-xxx 子命令也会执行类似于刷新的功能,这些子命令刷新的对象更具体。例如,只想刷新日志文件,则使用 flush-logs 子命令。

    16210

    MySQL 系列】MySQL 语句篇_DML 语句

    1、MySQL 中的 DQL 语句 1.1、数据查询语言–DML DML(Data Manipulation Language),即数据操作语言,用于操作数据库对象中所包含的数据。...[WHERE clause]; 2、MySQL 中 的 DML 语句详解 2.1、DML语句:INSERT 在 MySQL 中,INSERT 语句用于将一行或者多行数据插入到数据表的指定列中。...2.2.3、使用 UPDATE 修饰符 在 MySQL 中, UPDATE 语句支持 2 个修饰符: LOW_PRIORITY: 如果你指定了 LOW_PRIORITY 修饰符,MySQL 服务器将延迟执行...如下: TRUNCATE actor_copy; 2.3.4、使用 DELETE 表别名删除 在早期的 MySQL 版本中, 单表删除 DELETE 语句不支持为表设置别名。...2.3.6、使用 DELETE 修饰符 在 MySQL 中, DELETE 语句支持 3 个修饰符: LOW_PRIORITY: 如果你指定了 LOW_PRIORITY 修饰符,MySQL 服务器将延迟执行

    16610

    MySQL DELETE 语句

    MySQL DELETE 语句 你可以使用 SQL 的 DELETE FROM 命令来删除 MySQL 数据表中的记录。 你可以在 mysql> 命令提示符或 PHP 脚本中执行该命令。...语法 以下是 SQL DELETE 语句MySQL 数据表中删除数据的通用语法: DELETE FROM table_name [WHERE Clause] 如果没有指定 WHERE 子句,MySQL...实例 以下实例将删除 kxdang_tbl 表中 kxdang_id 为3 的记录: DELETE 语句mysql> use RUNOOB; Database changed mysql> DELETE...WHERE kxdang_id=3; Query OK, 1 row affected (0.23 sec) ---- 使用 PHP 脚本删除数据 PHP使用 mysqli_query() 函数来执行SQL语句...该函数与 mysql> 命令符执行SQL命令的效果是一样的。 实例 以下PHP实例将删除 kxdang_tbl 表中 kxdang_id 为 3 的记录: MySQL DELETE 子句测试: <?

    2.6K20

    扫码

    添加站长 进交流群

    领取专属 10元无门槛券

    手把手带您无忧上云

    扫码加入开发者社群

    相关资讯

    热门标签

    活动推荐

      运营活动

      活动名称
      广告关闭
      领券