分类: 编程教学

mysql数据库中的命令历史记录与权限审计

mysql数据库中的命令历史记录与权限审计

MySQL 客户端(mysql 命令行工具)默认会把执行过的 SQL 写入用户家目录下的 ~/.mysql_history 文件,但这个行为受多个条件限制:
• 只有在未设置环境变量 MYSQL_HISTFILE 为 /dev/null 或空字符串时才生效
• 若用户以 mysql -e "SELECT 1" 方式执行命令,语句不会写入历史文件
• ~/.mysql_history 是纯文本、无时间戳、无用户标识、无连接上下文,无法区分是哪个账号、连的哪台实例、何时执行的
• 文件权限若配置不当(如被其他用户可读),反而构成安全风险

mysql中的约束有哪些_mysql表约束类型解析

mysql中的约束有哪些_mysql表约束类型解析

MySQL 中的约束是保障数据质量的核心机制,直接作用于表字段或整张表,用来强制执行业务规则、防止脏数据入库。常见的约束类型有六种,各自用途明确,搭配使用能大幅提升数据可靠性。

mysql表锁与行锁各有什么优缺点_mysql性能对比分析

mysql表锁与行锁各有什么优缺点_mysql性能对比分析

表锁直接锁整张表,MySQL不用查索引、不定位行,所以加锁快、开销小。MyISAM默认就用它,不会死锁——因为锁的只有“表”这个单一资源,事务间不存在交叉等待链。但代价也很直接:哪怕两个UPDATE改的是完全不同的行,只要操作同一张表,就得排队。